2013-10-29 178 views
0

我想通过编程方式打开一个保持打开状态的相机,而不是拍摄一张照片并完成。我没有一个我想打开的确切软件包。我怎样才能做到这一点?Android:打开一个保持打开状态的相机

+0

您想让相机保持开启状态,原因是什么?你想让相机返回多张图片吗?请说明目的.. –

+0

我只想从我的应用程序启动相机。而已。一旦我启动相机,它不会以任何方式与我的应用程序进行交互。 –

回答

1

试试这个

Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
startActivityForResult(cameraIntent, CAMERA_PIC_REQUEST); 

不要忘记添加这体现

<uses-feature android:name="android.hardware.camera"></uses-feature> 
+0

返回图像。我只想启动相机。 –

+0

将“CAMERA_PIC_REQUEST”更改为“0” – RussVirtuoso

+0

拍摄一张照片后仍然返回。我想让相机保持打开状态。 –

0

从您的活动......

final PackageManager pm = this.getPackageManager(); 
final Intent intent = new Intent().setAction(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
final List<ResolveInfo> list = pm.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY); 

列表包含ResolveInfo(其中有ActivityInfo,以及包名称)可以处理ACTION_IMAGE_CAPTURE意图的任何应用程序。然后,您可以通过调用

getPackageManager()。getLaunchIntentForPackage(pkg);来获得启动其中一个应用程序的意图。

其中,pkg是从ResolveInfo中检索到的字符串包名称。