ストレージからメディア ファイルを取得し、action_view インテントで再生しようとしています。キャッシュに保存されます。私のコードは次のようになります。
@Override
public void onClick(View arg0) {
Intent viewMediaIntent = new Intent();
viewMediaIntent.setAction(android.content.Intent.ACTION_VIEW);
File file = new File(prefs.getAssetDir() + "/" + poi.getRoute().getId() + "/"
+ poiMedia.getContentMedia().getMedia().getFileName());
Log.w("Karl",file.exists()+" < File exists");
// returns true
viewMediaIntent.setDataAndType(Uri.fromFile(file), "video/*");
viewMediaIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(viewMediaIntent);
}
};
表示されるエラーは、Permission Denied Error です。マニフェストで既にユーザー権限 WRITE_EXTERNAL_STORAGE を取得しています。
誰か助けてくれませんか?
編集:
ログキャット:
Failed to open file '/data/data/nl.kloeg.beleefroutes/cache/beleefRoutes/com.burokloeg.beleefroutes.0210OpPadMetRembrandt1/38669.mp4'. (Permission denied)
E/AwesomePlayer(1931): cannot create dataSource
W/AwesomePlayer(1931): onPrepareAsyncEvent() finishSetDataSource_l error(-2147483648)
W/AwesomePlayer(1931): abortPrepare() mIsAsyncPrepare (1), err (-2147483648)