【问题标题】:Android camera intentsAndroid 相机意图
【发布时间】:2023-04-11 11:32:01
【问题描述】:

罗杰,

我看到您一直在修改相机意图。我遇到了真正的麻烦 一个简单的应用程序,告诉我何时按下相机按钮。你有一些代码可以帮助我吗?

谢谢。

大卫

【问题讨论】:

    标签: android camera android-intent


    【解决方案1】:

    在清单中,您需要声明您希望接收相机按钮的意图:

        <receiver android:name="domain.namespace.CameraReceiver">
            <intent-filter>
                <action android:name="android.intent.action.CAMERA_BUTTON"/>
            </intent-filter>
        </receiver>
        <activity android:name="domain.namespace.MyCameraActivity"
                android:label="@string/app_name" android:screenOrientation="landscape" android:icon="@drawable/camera"
            android:clearTaskOnLaunch="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        <intent-filter>
                <action android:name="android.media.action.IMAGE_CAPTURE" />
                <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
        </activity>
    

    在接收器中:

    public void onReceive(Context context, Intent intent) {
      KeyEvent event = (KeyEvent) intent.getParcelableExtra(Intent.EXTRA_KEY_EVENT);
    
      if (event == null) {
        return;
      }
    
      //prevent the camera app from opening
      abortBroadcast();    
    
      Intent i = new Intent(Intent.ACTION_MAIN);
      i.setClass(context, MyCameraActivity.class);
      i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
      context.startActivity(i);    
    }
    

    【讨论】:

      猜你喜欢
      • 2011-02-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多