3

バックアップ サービスを作成する必要があるため、各プラットフォームに SQLite データベース ファイルを保存する予定です。保存したファイルは、アプリのアンインストール後に使用できるようになります。

Downloadsフォルダー (すべてのプラットフォームで利用できるはずです)を使用するつもりです。

インターフェイスを作成し、プラットフォームごとに次のコードを使用します。

インターフェース:

public interface IBackupService
{
  string GetDownloadPath();
}

アンドロイド:

public string GetDownloadPath()
{
  return Android.OS.Environment.DirectoryDownloads;
}

UWP :

public string GetDownloadPath()
{
  return Windows.Storage.KnownFolders.???????;
}

それについて私は何をすべきですか?利用できる公立図書館はありますか?

4

1 に答える 1

1

このドキュメンテーション on KnownFoldersによると、一般的なダウンロード フォルダーはないようです。そのため、すべてのプラットフォームにダウンロード フォルダーがあるというあなたの仮定は正しくないようです。

もう少し掘り下げると、DocumentsLibraryにたどり着きます。これは、この種の目的には当然の選択と思われますが、そうではありません。マイクロソフトは次のように述べています。

ドキュメント ライブラリは、一般的な使用を意図したものではありません。詳細については、「アプリ機能の宣言」を参照してください。また、次のブログ投稿も参照してください。 ドキュメントの扱い: Windows ストア アプリで documentsLibrary 機能を使用する (しない) 方法

その後の段落は、私たちがしなければならないことを説明しているようです。

アプリでのみ使用するファイルを作成および更新する必要がある場合は、アプリのローカル フォルダーの使用を検討してください。Windows.Storage.ApplicationData.Current.LocalFolderプロパティからアプリのローカル フォルダーを取得します。

したがって、あなたの質問から抽出できるように、アプリにのみストレージを使用したいので、Windows.Storage.ApplicationData.Current.LocalFolderMicrosoft によると、これが正しい選択のようです。

于 2016-09-15T13:08:34.117 に答える