Пример #1
0
        private async Task DoHtmlBackup(Uri uri)
        {
            var backup = await HtmlBackup.FromAuthenticatorList(this, _authSource.GetAll());

            Stream         output = null;
            BufferedWriter writer = null;

            try
            {
                output = ContentResolver.OpenOutputStream(uri);
                writer = new BufferedWriter(new OutputStreamWriter(output));

                await writer.WriteAsync(backup.ToString());

                await writer.FlushAsync();
            }
            catch (Exception)
            {
                ShowSnackbar(Resource.String.genericError, Snackbar.LengthShort);
                return;
            }
            finally
            {
                writer?.Close();
                output?.Close();
            }

            PreferenceManager.GetDefaultSharedPreferences(this)
            .Edit()
            .PutBoolean("needsBackup", false)
            .Commit();

            ShowSnackbar(Resource.String.saveSuccess, Snackbar.LengthLong);
        }
Пример #2
0
        public async Task <HtmlBackup> CreateHtmlBackupAsync()
        {
            var auths = await _authenticatorRepository.GetAllAsync();

            return(await HtmlBackup.FromAuthenticators(_assetProvider, auths));
        }