问题
I am stuck in a problem in Android 4.2 Jelly Bean.
How can I open camera from my application, by default in panorama/360 photosphere mode?
I have searched a lot in grepcode and also Camera.Parameters, but nothing seems to help. Does anybody have any clues to open camera in panorama mode apart from video and image?
回答1:
there is no standard way to do it. AFAIK Panorama, Photoshere are proprietary features of Gallery3d (provided by Google) package com.google.android.gallery3d. It's depends on firmware of the device.
in ApplicationManifest.xml
<activity clearTaskOnLaunch="true" screenOrientation="0" name="com.google.android.apps.lightcycle.ProtectedPanoramaCaptureActivity" theme="resource_id:0x1030007" configChanges="1184" label="resource_id:0x7f0a00b2" windowSoftInputMode="35" taskAffinity="com.google.android.camera">
<intent-filter>
<action name="android.intent.action.MAIN">
</action>
</intent-filter>
</activity>
I've tried to start this activity from my application
Intent res = new Intent();
String mPackage = "com.google.android.gallery3d";
String mClass = "com.google.android.apps.lightcycle.ProtectedPanoramaCaptureActivity";
res.setComponent(new ComponentName(mPackage,mClass));
startActivity(res);
but it throws NullPointerException in camera app.
回答2:
I am also looking to open photosphere camera in my application or at least show photosphere option in normal camera.I searched lot but i didn't find any solution.
I think we don't have any solution to open photosphere camera.We need wait for next Android API release.
How to open photosphere camera?
回答3:
you can open all default camera function using below code
Intent intent = new Intent(MediaStore.INTENT_ACTION_STILL_IMAGE_CAMERA);
startActivity(intent);
来源:https://stackoverflow.com/questions/15377663/how-to-open-camera-directly-in-panorama-photosphere-mode