Android是否打算使用原始资源打开视频?

Android是否打算使用原始资源打开视频?,android,video,android-activity,android-intent,Android,Video,Android Activity,Android Intent,有人知道我可以用来在手机视频播放器中打开原始mp4资源的意图吗?我尝试了以下代码: Uri video = Uri.parse( "android.resource://" + getPackageName() + "/" + R.raw.video ); Intent intent = new Intent(Intent.ACTION_VIEW); intent.setDataAndType(video, "video/*"); startActivity(in

有人知道我可以用来在手机视频播放器中打开原始mp4资源的意图吗?我尝试了以下代码:

    Uri video = Uri.parse( "android.resource://" + getPackageName() + "/" + R.raw.video );
    Intent intent = new Intent(Intent.ACTION_VIEW);
    intent.setDataAndType(video, "video/*");
    startActivity(intent);

这引发了ActivityNotFoundException,但是当URI是SD卡且视频位于该SD卡时,这对我有效。有人知道我如何将上述代码用于我的应用程序中的资源文件吗?

其他应用程序无法访问您的资源。您需要创建一个ContentProvider,或者将数据存储在任何人都可以访问的地方(SD卡或本地存储的公用文件夹中)。

Ah,这很有意义。你能制作一个可以返回视频的内容提供商吗?我认为最好将文件存储在文件系统中。内容提供商对数据库很有用。如果我想在我的应用程序中包含视频,我会将其从资源传输到文件系统吗?还有更好的方法吗?还有,其他应用程序如何访问文件系统中的应用程序部分?我以为那被封锁了?/data/data/com.your.app/不是私有目录吗?如果将
openFileOutput
MODE\u WORLD\u READABLE一起使用,则不是。