Как открыть камеру прямо в режиме панорама / фотосфера?
Я застрял в проблеме в Android 4.2 Jelly Bean.
Как я могу открыть камеру из своего приложения, по умолчанию в режиме панорамы /360 фотосфера?
Я много искал в grepcode, а также Camera.Parameters, но, похоже, ничего не помогло. У кого-нибудь есть какие-нибудь подсказки, чтобы открыть камеру в режиме панорамы кроме видео и изображения?
3 ответа
Не существует стандартного способа сделать это. AFAIK Panorama, Photoshere являются собственностью пакета Gallery3d (предоставленного Google) com.google.android.gallery3d. Это зависит от прошивки устройства.
в 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>
Я пытался запустить это действие из моего приложения
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);
но он генерирует исключение NullPointerException в приложении камеры.
Я также с нетерпением жду, чтобы открыть камеру фотосфера в моем приложении или, по крайней мере, показать опцию фотосфера в обычной камере. Я много искал, но не нашел решения.
Я думаю, что у нас нет никакого решения, чтобы открыть камеру фотосферы. Нам нужно ждать следующего выпуска Android API.
Вы можете открыть все функции камеры по умолчанию, используя код ниже
Intent intent = new Intent(MediaStore.INTENT_ACTION_STILL_IMAGE_CAMERA);
startActivity(intent);