0

ファイルの保存場所を調べていますが、どのルートをたどればよいかまだわかりません。画像と pdf (合計 300MB 程度) を保存するアプリケーションを作成しています。アプリを内部ストレージにインストールしてから、ユーザーが pdf といくつかの画像をストレージの選択に保存できるようにします。マニフェストにこれがある場合でも、ユーザーがそれらのファイルに使用するストレージのみを選択できるようにすることは可能ですか?

android:installLocation="internalOnly" 

基本的に、アプリケーションの起動時にユーザーにこれを選択してもらいたいと思います。

もしそうなら、ユーザーが外部を選択し、外部ストレージが利用可能で、十分なスペースがあった場合、ファイルを保存するというフラグをアプリケーションに設定するだけでよいでしょうか。ユーザーがアプリを開くたびに、ファイルが利用可能であることを確認します。ユーザーが internal を選択した場合、openFileOutput が使用されます。これはすべて正しいように見えますか?これは可能ですか?

または、これらの PDF と画像がないとアプリを使用できないため、完全に内部専用にすることを検討する必要があります。

4

1 に答える 1

0

installLocation を次のように設定して、目的を正確に達成できるようです。

android:installLocation="preferExternal"

ドキュメントから:

「preferExternal」を宣言すると、アプリケーションを外部ストレージにインストールするように要求されますが、システムはアプリケーションが外部ストレージにインストールされることを保証しません。外部ストレージがいっぱいになると、システムはそれを内部ストレージにインストールします。ユーザーは、2 つの場所の間でアプリケーションを移動することもできます。

internalOnly に設定すると、ユーザーはアプリケーションを内部ストレージから外部ストレージに移動できないため、上記のソリューションがおそらく最良のオプションです。

于 2013-02-13T02:50:06.473 に答える