1

ARC でローカル ファイル アクセスを実装する方法はありますか? 私が理解しているように、Chromeはサンドボックス化されているため、アクセスは困難ですが、定義されたAndroidデータディレクトリには、ファイルアクセスに使用される特定のフォルダーが含まれている可能性がありますか?

4

2 に答える 2

5

はい、ARC 上のアプリケーションはサンドボックス化されており、ローカル ファイル システムにアクセスできません。

ただし、特定のインテントでアクティビティを開始することにより、ローカル ファイル システム上のファイルにアクセスできます。ファイルを読み取るための ACTION_GET_CONTENT と、ファイルを保存するための ACTION_SEND です。

たとえば、ローカル ファイル システムから画像ファイルを開く場合は、

private static int REQUEST_CODE = 5;

private void requestImageFile() {
    Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
    intent.setType("image/*");
    startActivityForResult(intent, REQUEST_CODE);
}

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (resultCode == Activity.RESULT_OK && requestCode == REQUEST_CODE) {
        ImageView imgView = new ImageView(this);
        imgView.setImageURI(data.getData());
        setContentView(imgView);
    }
}
于 2015-04-03T04:45:05.850 に答える
0

ARC アプリは (ブラウザーのファイル チューザーを介して) OS ファイルシステムにアクセスできますが、それらを変更することはできません。つまり、ARC は最初にこれらのアイテムを別の場所にコピーし、元のファイルの代わりにコピーをアプリにフィードします。

さらに読む:

https://sslab.gtisc.gatech.edu/2014/arc-security.html

于 2015-04-03T04:33:14.167 に答える