【发布时间】:2018-06-26 12:38:57
【问题描述】:
我需要同时致电Intent 获取图像和视频。 similar to this 似乎是不可能的。所以另一种方法是 createChooser() 。但我有点坚持下面的代码。
Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, file.getAbsolutePath());
Intent takeVideoIntent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
takeVideoIntent.putExtra(MediaStore.EXTRA_OUTPUT, file.getAbsolutePath());
Intent chooserIntent = new Intent(Intent.ACTION_CHOOSER);
Intent[] intentArray = new Intent[]{takePictureIntent};
chooserIntent.putExtra(Intent.EXTRA_INTENT, takeVideoIntent);
chooserIntent.putExtra(Intent.EXTRA_TITLE, "Choose an action");
chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, intentArray);
startActivityForResult(chooserIntent, 1);
MediaStore.EXTRA_OUTPUT 不工作。从相机返回后文件为空。但是它确实打开了一个选择器,如下所示,但文件为空。
问题:-
1.如何结合这两个意图并提供单独的文件作为MediaStore.EXTRA_OUTPUT?
2.众所周知,android中有数百个相机应用程序,这是打开此类意图的好方法(无论制造商和API级别如何,它都适用于所有设备)?或者我应该使用AlertDialog 单独打开每个操作的意图。
【问题讨论】:
标签: android android-intent android-camera-intent