My app。行に失敗します。createTempFileは「許可が拒否されました」例外をスローします
File temp = File.createTempFile(“mediaplayertmp”, “dat”);
は“Permission denied”
例外がスローされます。
どうしてですか? 「remp
」フォルダを指定するためにJavaの設定を変更する必要があるようです。
ありがとうございます!
My app。行に失敗します。createTempFileは「許可が拒否されました」例外をスローします
File temp = File.createTempFile(“mediaplayertmp”, “dat”);
は“Permission denied”
例外がスローされます。
どうしてですか? 「remp
」フォルダを指定するためにJavaの設定を変更する必要があるようです。
ありがとうございます!
外部ストレージディレクトリに書き込むための十分な権限がない可能性があります。私はcreateTempFile
はこれが必要であることを知らない(私はそれが内部ストレージになると思うだろうが、それを知らない)が、私はそうのように、マニフェストにWRITE_EXTERNAL_STORAGE権限を追加することをお勧め:
<manifest...>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
</manifest>
java.io.tmpdir
で設定されたデフォルトの一時ファイルの場所AFAIKは/sdcard
であるため、マニフェストにWRITE_EXTERNAL_STORAGE権限を追加する必要があります。
私はこの同じ問題を抱えていました。私にとっては、開発中にAndroidデバイスをUSB経由でPCに接続し、別のデバイスによってSDカードがマウントされているとロックされていた問題が判明しました。一旦デバイスのプラグを抜くと、正常に機能しました。また、接続したときにSDカードをマウントしないようにデバイスに指示することもできます。
ありがとうございました。私はAndroidManifest.xmlにその行を追加して、 という2つの要素を持つようにしました。ただし、アプリケーションのエラーは変更されません。変更は正しいですか? –
dev222
更新:この呼び出しの代替署名への変更:File temp = File.createTempFile( "mediaplayertmp"、 "dat"、this.getCacheDir());作品! – dev222
ああ大丈夫です!あなたはそれを理解してうれしかった、私はそこからどこに行くか分からなかった。 – kcoppock