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); }
public async Task <HtmlBackup> CreateHtmlBackupAsync() { var auths = await _authenticatorRepository.GetAllAsync(); return(await HtmlBackup.FromAuthenticators(_assetProvider, auths)); }