[Android]任务列表中有两个相机图标

现象:

修改AndroidManifest.xml

XML 复制代码
<activity
    android:name="com.android.camera.PermissionsActivity"
    android:label="@string/app_name"
    android:launchMode="singleTop"
    android:configChanges="orientation|screenSize|keyboardHidden"
    android:parentActivityName="com.android.camera.CameraActivity"
    android:taskAffinity="com.android.camera.CameraActivity"
    android:visibleToInstantApps="true"
    android:exported="true">

    <intent-filter>
        <action android:name="android.media.action.VIDEO_CAMERA" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.VOICE" />
    </intent-filter>

    <intent-filter>
        <action android:name="android.media.action.VIDEO_CAPTURE" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.VOICE" />
    </intent-filter>

    <intent-filter>
        <action android:name="android.media.action.IMAGE_CAPTURE" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.VOICE" />
    </intent-filter>

    <intent-filter>
        <action android:name="android.media.action.STILL_IMAGE_CAMERA" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.VOICE" />
    </intent-filter>

    <intent-filter>
        <action android:name="android.media.action.TOF_CAMERA" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>

    <meta-data
        android:name="android.support.PARENT_ACTIVITY"
        android:value="com.android.camera.CameraActivity" />
</activity>

在 Android 中,android:taskAffinity 是一个重要的 Activity 属性,它定义了 Activity 所属的任务栈(Task)

表示这个 PermissionsActivity 会与 CameraActivity 共享同一个任务栈。以下是关键解析和注意事项:

. 作用解析

  • 任务栈关联 :强制 PermissionsActivityCameraActivity 在同一个任务栈中
  • 典型场景:用于权限请求等附属界面,确保返回时能回到主 Activity
  • 行为表现
    • 如果 CameraActivity 已存在任务栈中,PermissionsActivity 会加入该栈
    • 如果不存在,会新建以 com.android.camera.CameraActivity 为标识的任务栈
相关推荐
我命由我123452 小时前
Android 开发 - 广播组件(标准广播、有序广播、静态注册广播、分钟到达广播、网络变更广播...)
android·java·开发语言·网络·java-ee·android studio·android-studio
A富得流油的咸鸭蛋2 小时前
安卓鸿蒙面试
android·面试·harmonyos
Coffeeee2 小时前
AGP9.0的主要变更项,给Gradle来一次大变样
android·前端·gradle
小孔龙3 小时前
Android GPU 渲染管线:一帧画面如何走上屏幕
android·性能优化·gpu
米码收割机3 小时前
【Android】Android 书澜图书馆信息管理系统(源码+文档)【独一无二】
android
恋猫de小郭3 小时前
KotlinLLM 开源 ,一个可以在运行时自己生成永久 Kotlin 代码的 Agent 库
android·前端·人工智能
游戏开发爱好者83 小时前
iOS应用加固方案全解析:源码加固与IPA在线加固对比
android·macos·ios·小程序·uni-app·cocoa·iphone
大鹏说大话3 小时前
PHP 异步处理方案:队列使用场景与 RabbitMQ 实操
android
molihuan4 小时前
最新 Paddle-Lite Android平台编译
android·ocr·paddle·推理·端侧·paddle lite
小肝一下4 小时前
多态(上)
android·开发语言·c++·vscode·多态·面向对象·伊蕾娜