- 使用案例:
在priv-app文件夹中的1-System app apk将用作设备所有者。
2 - 用户启动设备并启动Google安装向导。
3 - 立即启动设备配置活动。
- 以前的工作:
此方法过去使用动作意图在Android 6.0 Marshmallow上运行:
<activity android:theme="@style/InvisibleNoTitle" android:name="OwnerActivity" android:launchMode="singleTop" android:immersive="true">
<intent-filter android:priority="5">
<action android:name="android.intent.action.MAIN" />
<action android:name="android.intent.action.DEVICE_INITIALIZATION_WIZARD" />
<category android:name="android.intent.category.HOME" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
没有任何问题。
更新到Android 8.1 Oreo后,此方法不再有效。 OwnerActivity仅在设置向导完成后显示,这是无用的,因为设备已由用户配置,无法再次提供。
有没有更新的方式这样做,以便我的OwnerActivity首先显示配置设备?奥利奥有什么变化?
答案 0 :(得分:2)
要回答这个问题有点晚了,而且在不与Google交谈的情况下,很难知道设计决定是什么。但是,我们知道的是发生了什么变化。
1. android.intent.action.DEVICE_INITIALIZATION_WIZARD
至少在Oreo之前就已被弃用。
2.软件包管理器服务进行了更改,以引用安装向导。新方法似乎是清单清单定义所缺少的类别android.intent.category.SETUP_WIZARD
。
阅读有关代码的注释(您可以在下面找到),我们看到以下日志:
Slog.e(TAG, "There should probably be exactly one setup wizard; found " + matches.size()
+ ": matches=" + matches);
所以从Nougat开始,Android似乎不支持将多个设置向导链接在一起。 对于您如何设置设备管理员的特定问题,我有2条建议。