How to open camera directly in panorama/photosphere mode?

狂风中的少年 提交于 2019-11-26 13:46:44

问题


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

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!