更改 AOSP 13 构建设置向导

问题描述 投票:0回答:1

我正在构建 AOSP 13 并尝试启用我的自定义设置向导,该向导不使用任何 GSM。我在我的自定义设备(平板电脑)上使用它。在我当前的版本中,我没有看到默认设置向导,但我想包含我的自定义向导以用于测试目的。

例如,我正在使用GrapheneOS-SetupWizard,但我在 logcat 输出中遇到以下问题。

$ logcat | grep setup
01-01 00:00:00.000     0     0 I         : Initmem setup node 0 [mem 0x0000000040000000-0x00000000bfffffff]
01-10 09:30:01.199   614   639 I SystemConfig: Reading permissions from /system_ext/etc/permissions/privapp_whitelist_org.lineageos.setupwizard.xml
01-10 09:30:05.395   614   614 W PackageManager: Adding duplicate shared id: 1000 name=org.lineageos.setupwizard
01-10 09:30:06.215   614   614 E PackageManager: There should probably be exactly one setup wizard; found 0: matches=[]
01-10 09:30:26.472   614   830 I WifiNative: Successfully setup Iface:{Name=wlan0,Id=0,Type=STA_SCAN}
01-10 09:30:26.603   614   614 W DefaultPermGrantPolicy: Permission not found: com.google.android.setupwizard.SETUP_COMPAT_SERVICE
01-10 09:30:28.659   614   923 D CCodec  : setup formats input: AMessage(what = 0x00000000) = {
...

如您所见,似乎存在共享 ID 重复和权限缺失的问题,导致无法正确设置向导。谁能提供有关如何解决此问题的见解?

android android-source setup-wizard
1个回答
0
投票

请注意,日志消息指示找到 0 个匹配活动。搜索AOSP源代码可以找到检查发生的位置:

https://cs.android.com/android/platform/superproject/+/android14-qpr3-release:frameworks/base/services/core/java/com/and roid/server/pm/PackageManagerService.java;l=3626?q=%22There%20should%20可能%20be%20exactly%20one%20setup%20wizard%22

我特别看到:

    private @Nullable String getSetupWizardPackageNameImpl(@NonNull Computer computer) {
        final Intent intent = new Intent(Intent.ACTION_MAIN);
        intent.addCategory(Intent.CATEGORY_SETUP_WIZARD);

您引用的项目似乎没有使用与 AOSP 目前想要的内容相匹配的意图过滤器,因此建议您添加一个意图过滤器,如下所示:

    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.SETUP_WIZARD" />
    </intent-filter>

另请参阅https://stackoverflow.com/a/77208285/215266,其中我建议尝试几种可能的过滤器。

© www.soinside.com 2019 - 2024. All rights reserved.