首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android -从哪里获取的视频存储意图?

Android -从哪里获取的视频存储意图?
EN

Stack Overflow用户
提问于 2022-04-26 22:57:09
回答 1查看 28关注 0票数 0

假设我在我的活动中有一个方法,如下所示:

代码语言:javascript
复制
    private void dispatchTakeVideoIntent() {
        Intent takeVideoIntent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
        if (takeVideoIntent.resolveActivity(getActivity().getPackageManager()) != null) {
            startActivityForResult(takeVideoIntent, REQUEST_VIDEO_CAPTURE);
        }
    }

然后,如果一切顺利,我将通过它的URI访问拍摄的视频:

代码语言:javascript
复制
    public void onActivityResult(int requestCode, int resultCode, @Nullable Intent intent) {
        if (requestCode == REQUEST_VIDEO_CAPTURE && resultCode == Activity.RESULT_OK) {
            Uri videoUri = intent.getData();
            // process video
        }
    }

这段视频的实际位置在哪里?它是暂时存储在内存中,还是保存到永久存储中?

如果我想让我的应用程序在以后的某个时候可靠地访问视频,那么最好的方法是什么呢?我必须将视频复制到应用程序的存储文件夹中吗?

EN

回答 1

Stack Overflow用户

发布于 2022-04-26 23:47:38

,这段视频的实际位置在哪里?

它将居住在用户的相机应用程序选择放置它的地方。有数百种不同的相机应用程序,既有制造商预装的,也有用户从Play Store或其他地方安装的。

是暂时存储在内存中,还是保存到永久存储中?

这取决于相机应用程序。

如果我想让我的应用程序在以后的某个时候可靠地访问视频,那么最好的方法是什么呢?

您可以尝试将content Urivia EXTRA_OUTPUT作为Intent上的额外值传递。您可以使用FileProvider获取Uri,指向您控制的位置上的某个文件(例如,getFilesDir() on Context)。大多数相机应用程序都应该遵守这一额外规定,但并不是所有的应用程序都会这样。

或者,你可以像你建议的那样复制视频。

或者,你可以使用相机库(例如,FotoApparat,CameraKit-Android)并在你自己的应用程序中录制视频。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72021435

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档