kri*_*ree 5 android visibility appicon android-10.0
在 API 29 之前,我们可以通过删除来删除设备中的启动器图标
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
Run Code Online (Sandbox Code Playgroud)
在清单文件中。
如前所述这里
从 Android Q 开始,除非应用至少满足以下条件之一,否则返回列表中至少会出现应用的 Activity 或合成 Activity 之一:
该应用程序是一个系统应用程序。
该应用程序不请求任何权限。
该应用程序没有默认启用的启动器活动。启动器 Activity 的意图包含 ACTION_MAIN 操作和 CATEGORY_LAUNCHER 类别。
此外,在以下与企业相关的情况下,系统会隐藏部分或所有应用程序的合成活动:
如果设备是完全托管的设备,则返回的列表中不会显示任何应用程序的合成活动。如果当前用户有工作资料,则返回的列表中不会显示用户工作应用的合成活动。
第三个条件与不启用启动器活动相同。
如何在 android 10 中实现这一目标?
我认为第三个条件是错误的或过时的。
Google 当前的 Android 10 模拟器映像(Google API Intel x86 Atom 系统映像 29_r09)上的行为与文档不同:
getActivityList()始终返回至少一项活动,除非应用程序至少满足一项:
此行为对应于Android Q Beta 的发行说明:
启动器图标可见性
在 Android Q Beta 2 中,未在各自清单文件中声明任何权限的包将从“所有应用程序”托盘中隐藏,以下类型的应用程序也是如此:
- 系统应用程序
- 各自清单的 <application> 标记内不包含任何组件的应用程序
| 归档时间: |
|
| 查看次数: |
1384 次 |
| 最近记录: |