Android 定制Google SetupWizard
程序员文章站
2024-01-09 23:34:16
...
Android 定制Google SetupWizard
google setupwizard(开机向导) 是可以定制,我们可以替换掉里面的页面,也可以新添加页面,也可以修改原有页面的部分资源。
修改方法有两种:
1.利用Runntime Resource Overlay(RRO)机制来替换setupwizard里面的资源
2.实现指定的BroadcastReceiver,新增页面也能在该应用中实现
下图为修改过和添加的页面:
修改过背景的欢迎页面
添加的页面
google 原先页面
下面看如何修改:
google SetupWizard 是通过res/xml/ 目录下的 wizard_script.xml (有多个配置文件)来加载页面和跳转的而两种修改方式都是通过修改wizard_script 来实现的
下面是wizard_script 的一个脚本片段是一个sim missing page
<WizardAction wizard:uri="intent:#Intent;action=com.android.setupwizard.SIM_MISSING;end" id="sim_missing">
<result wizard:action="carrier_setup" />
</WizardAction>
id 是定义了当前页面的表示 当其他页面要跳到此页面是就通过该id
result 是指此页面后要跳的页面id
接下来我们来追加自己的页面
<!--添加页-->
<WizardAction
id="nuu_setup"
wizard:uri="intent:#Intent;action=action.NUU_SUW;end">
<result wizard:action="sim_missing" />
</WizardAction>
<!---->
<WizardAction
id="sim_missing"
wizard:uri="intent:#Intent;action=com.android.setupwizard.SIM_MISSING;end">
<result wizard:action="carrier_setup" />
</WizardAction>
我们将重新修改后的文件放到我们的apk的目录下 直接放到对应的目录下就可以了
也可以通过:
<string name="wizard_script_uri">android.resource://package name/xml/wizard_script</string>
来指定脚本指向
下面都说下两种方式:
第一:通过overlay方式 (关于对RRO不懂可另行搜索)
目录结构:
manifest的内容如下:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.google.android.setupwizard.overlay">
<overlay
android:priority="1"
android:targetPackage="com.google.android.setupwizard" />
</manifest>
strings.xml 是重新定位脚本的位置
<resources>
<string name="wizard_script_uri">android.resource://com.google.android.setupwizard.overlay/raw/wizard_script</string>
</resources>
第二种方式:
通过实现:
<receiver android:name=".receiver.PartnerReceiver">
<intent-filter>
<action android:name="com.android.setupwizard.action.PARTNER_CUSTOMIZATION" />
</intent-filter>
</receiver>
PartnerReceiver是不需要什么内容 只用于google查找
修改方式一样
上一篇: VR全景图在旅游行业的应用及发展
推荐阅读
-
Android 定制Google SetupWizard
-
android 接入Google Pay 遇到的坑。
-
Google Android for Cars的整理Android Automotive OS(一)
-
Google登录集成(Android)
-
Android编程权威指南(第二版)学习笔记(二十九)—— 第29章 定制视图与触摸事件...
-
php脚本生成google play url的下载链接,下载apk并自动反编译后获取android版本号
-
android通过google api获取天气信息示例
-
Android定制自己的EditText轻松改变底线颜色
-
Android定制自己的EditText轻松改变底线颜色
-
Android快速开发之定制BaseTemplate