1

例如,我使用录制视频的操作创建了一个意图,如下所示:

Intent takeVideoIntent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
startActivityForResult(takeVideoIntent, ACTION_TAKE_VIDEO);

现在这将打开相机预览并允许用户捕获视频,我的问题是,在操作期间是否可以访问数据。例如,我可以在录制视频的同时获取正在录制的视频流并将数据推送到服务器。因此,一旦视频完成录制,它就已经在服务器上,并且在推送期间,数据可以在服务器上进行编码等......

我正在使用 Apache Cordova 2.2.0 执行此操作,因此我的代码实际上看起来更像这样:

Intent intent = new Intent(android.provider.MediaStore.ACTION_VIDEO_CAPTURE);
this.cordova.startActivityForResult((CordovaPlugin) this, intent, 2);

我确实尝试添加一个 MediaStore.EXTRA_OUTPUT,但我确定在录制完成后将其保存到输出位置。

有没有一种方法可以异步找到视频录制到的位置并使用 android 文件系统中的不完整流?

所以我想在不让任何人失望的情况下简化我的问题,是否可以在活动期间对意图数据做任何事情?

4

1 回答 1

3

是操作期间可访问的数据

充其量,这将取决于执行该操作的应用程序。

有没有一种方法可以异步找到视频录制到的位置并使用 android 文件系统中的不完整流?

编写您自己的录像机,使用MediaRecorder.

在活动期间是否可以对意图数据做任何事情?

如果您没有编写活动,则无法保证在onActivityResult()被调用之前什么是可能的或不可能的。

于 2012-12-11T20:23:47.810 回答