1

だから私はルート化されたAndroid 4.0.3デバイスを持っています。実際に内部にある「sd カード」に何かをインストールすると、この /mnt/secure/asec パーティションも作成されます。以下は、df の部分的な出力です。

    /mnt/sdcard              1G    65M     1G   4096
    /mnt/secure/asec         1G    65M     1G   4096

さて、次のコードを実行しようとすると。

    File f = new File("/mnt/sdcard");
    long div = (1024*1024);
    long d = f.getTotalSpace()/div;
            Log.i("Capacity",String.valueOf(d));

それが私に示している値は2Gbです。ここで何が起こっているのですか?とにかく、Android 4.0.3 がこれらの apk を「SD カード」にインストールするための安全なマウント ポイントを作成するのはなぜですか? JellyBean だけの機能ではないでしょうか。

4

1 に答える 1

1

ここで何が起こっているのですか?

StatFsの代わりに使用してみてgetTotalSpace()、より良い結果が得られるかどうかを確認してください。

とにかく、Android 4.0.3 がこれらの apk を「SD カード」にインストールするための安全なマウント ポイントを作成するのはなぜですか?

これは、この機能が API レベル 8 で導入されて以来、Android の SD へのインストールの一部になっているためです。

于 2012-10-06T11:36:35.983 に答える