6

アンドロイドでは、取り外し不可能な(内部)外部ストレージと内部ストレージの違いは何ですか?データをどこに保存すればよいかわかりません。人がいつでも好きなときに引っ張ることができるゲームの統計を保存する必要があります

ありがとうございました

4

3 に答える 3

13

多くの新しいデバイスでは、物理的な区別がなくなり、「内部」ストレージと「外部」ストレージが同じフラッシュチップを共有しますが、必ずしも固定割り当てがなくても、その違いは実際には意図されたアクセスパラダイムの1つです。

外部ストレージ(実際のファイルまたはシミュレートされたファイル)上のファイルは、不可避的にすべてのものと共有され、そのマニフェスト権限を持つものによって変更可能です。従来、それらは簡単に表示されますが、最近のMTPアクセスデバイスでは、接続されたPCがそれらを認識する前に、システムにそれらについて通知する必要がある場合があります。

対照的に、内部ストレージ上のファイルは、ルートまたはシステムとして実行されているものを除いて、またはアプリケーションがそれらを一般的に表示または変更可能にすることを決定した場合を除いて、アプリケーションに対してプライベートです。アクセス可能な場合でも、内部ストレージ上のデータは、所有するアプリの外部からアクセスするのがより困難になる可能性があります。これは、消費者向けのUSBマスストレージまたはMTPメカニズムではサポートされていません。また、他のアプリや開発ツールの場合でも、アプリケーションが共有することを選択したファイルフォルダを調べることはできるかもしれませんが、親(通常は/dataまたは/data / app)フォルダを参照することはできないため、どこを見ればよいかを知ってください。

おそらくあなたの意思決定プロセスは次のようなものでなければなりません:それは所有するアプリケーションにプライベートであることを意味しますか?その場合は、大きすぎて古いデバイスを対象としている場合を除いて、内部ストレージに配置します。古いデバイスを対象としている場合は、外部ストレージに配置する前に、保護のために暗号化または署名する必要があります。それ以外の場合、共有する場合、他の任意のコンポーネント(メールアプリなど)に渡す必要がある場合、または大きい場合は、外部ストレージに配置します。

于 2012-06-26T17:16:52.317 に答える
7

アンドロイドでは、取り外し不可能な(内部)外部ストレージと内部ストレージの違いは何ですか?

外部ストレージは決して取り外し可能を意味しませんでした。これは常に「ユーザーがUSBケーブルを接続し、ホストコンピューターにドライブとしてマウントすることでアクセスできる」ことを意味していました。初期のAndroidデバイスには、たまたまリムーバブル外部ストレージがありましたが、それは決して定義ではありませんでした。

内部ストレージは、インストールされたアプリを介して(またはデバイスをルート化することによって)ユーザーがアクセスできないストレージです。

于 2012-06-26T17:05:41.417 に答える
1

外部ストレージ(SDカード)が心配な場合のChrisの回答に加えて、利用できない場合は、アプリが読み込まれるたびにこれを確認し、それに応じて関連情報を取得できます。

次のようなものを使用できます。

if(isSDPresent)
{
    // SD Card is present
    // Your code goes here, files will be located @ /mnt/sdcard/Android/data/packagename
}
else
{
    // SD Card is not presenet
    // files located here /data/data/packagename
}

エミュレーターでテストしている場合は、DDMSをロードして、熱狂的な場所に保存されているすべてのファイルを見つけることができます。

お役に立てれば。

于 2012-07-09T10:26:46.150 に答える