0

私のアプリ(アプリA)は、別のアプリ(アプリB)の内部メモリに保存されるテキストファイルを作成する必要があります。これを実装する方法はありますか?

私は次のことを試しました:

両方の AndroidManifest.xml ファイルで、同じ android:sharedUserId を指定しました。

アプリAから、私は以下を使用しました:

filePath = getPackageManager().getPackageInfo("アプリ B のパッケージ名", 0).applicationInfo.dataDir;

パスを取得して、アプリ B の内部メモリのパスが正しいことを確認しました。

しかし、「java.io.IOException: Permission Denied」というメッセージが表示されます。

どこで間違いを犯したのでしょうか?

4

1 に答える 1

1

ここの公式ドキュメントによると、

技術的には、ファイル モードを読み取り可能に設定すると、別のアプリが内部ファイルを読み取ることができます。ただし、他のアプリもアプリのパッケージ名とファイル名を認識する必要があります。

それはできることです。

したがって、ファイルパスを使用して File オブジェクトを作成し、それに対して setReadableを呼び出します。

また、MODE_PRIVATE でファイルを作成していないことを確認してください。

于 2012-11-27T13:06:32.770 に答える