直达链接可以是一个APP唤起链接,当用户语音触发轻服务时就可以唤起指定的APP,打开指定的页面。
一、设置链接
APP唤起链接的格式为:
test://com.xyz.test/home?pkg=com.xyz.test
APP唤起链接为Android标准scheme链接,并且需要有pkg参数。
如果期望唤起APP时,直接打开某个页面,可以通过第三步添加参数的方式传参,也可以在链接中配置参数。携带参数的APP唤起链接为:
test://com.xyz.test/home?pkg=com.xyz.test&key1=value&key2=value2
如果参数值中包含有中文字符,请先将参数值进行 URLEncode,在APK获取到参数值后进行 URLDecode。
二、安卓APP标准的scheme配置方式
在安卓APK的 AndroidManifest.xml 文件中给 MainActivity 配置 scheme 的启动方式,示例如下所示:
<activity android:name=".MainActivity">
<!-- 给页面添加scheme启动方式-->
<intent-filter>
<!--该页面的路径配置-->
<data
android:host="com.zjy.test" //包名
android:path="/home" //页面路径,路径前要加 /
android:scheme="zjy"/> //推荐使用应用简写
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE" />
<action android:name="android.intent.action.VIEW"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<activity>
还需在uri中添加pkg参数(用于做应用图标过滤),则示例完整的应用调起链接为:
zjy://com.zjy.test/home?pkg=com.zjy.test
三、添加参数
点击参数区域中的“添加参数”按钮,添加一条新的参数。
在弹框中输入 参数名 和 参数值,点击“确认”保存参数。
在参数列表的操作栏,点击“编辑”可以重新编辑参数,点击“删除”可以删除这条参数。
四、获取参数
APP应用中可以通过scheme获取应用调起链接和参数:
Intent intent = getIntent();
String action = intent.getAction();
if (Intent.ACTION_VIEW.equals(action)) {
Uri uri = intent.getData();
if (uri != null) {
String tmjl_intent = uri.getQueryParameter("light_service");
}
}
获取参数后,就可以直接打开参数对应的页面,并做相应的业务处理。