共计 1308 个字符,预计需要花费 4 分钟才能阅读完成。
背景
项目组游戏心愿接入华为的利用外领取性能,在华为利用市场的本游戏详情页点击商品领取, 通过 DeepLink 链接从华为利用市场跳转至本游戏领取详情页,传递领取商品 ID 进行购买。
参考文档:https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/appgallerykit-devguide-game#h1-1589804284330
为了更好的接入,这里先做了个性能验证,同步分享给大家了。
实现形式
1. manifest 中 Activity 配置
在 Activity 中配置 intent-filter 过滤器
<data android:scheme="agpms" android:path="/product/pay" android:host="com.sxx.huawei"/>
拼接之后的申请地址是:agpms://com.sxx.huawei/product/pay
链接格局要求如下文档格局 (如不依照此格局,营销地址上架审核会不通过):
配置如图:
2. 跳转代码实现(此处是从内部利用中关上 deeplink 地址)
实践上应该在华为利用市场 APP 中测试关上这个地址的,然而以后因为咱们游戏没有上架,且华为利用市场 APP 侧也无这样的测试环境,因而为了看下成果,本人弄了一个其余利用。
Intent intent = new Intent();
intent.setAction("com.google.open02");
intent.addCategory("android.intent.category.DEFAULT");
intent.setData(Uri.parse("agpms://com.sxx.huawei/product/pay?producid=TestProduct503"));
startActivity(intent);
agpms://com.sxx.huawei/product/pay?producid=TestProduct503
问号前面参数携带个别是 key=value&key1=value1 格局。
代码截图如下:
如上代码:只携带了一个字段就是 producid
3. 跳转至领取详情页面后解析 deeplink 地址中携带的字段参数
- 若跳转之前详情页面未关上,则须要在 Activity 生命周期 onCreate 中获取 intent 对象解析 data.
- 若跳转之前详情页面未关上,则须要在 Activity 生命周期 onCreate 中获取 intent 对象解析 data.
代码截图如下:
如上代码获取到 data 数据中商品 ID 之后,即可发动 HMS SDK 领取接口拉起领取页面。
FAQ
Deeplink 相干配置实现之后还是无奈关上?
个别是因为跳转时拼接的地址中的 scheme,host,path 和配置中的不统一导致的,参考下面文档自检下。
原文链接:https://developer.huawei.com/consumer/cn/forum/topic/0204405033183830230?fid=18
原作者:AppGallery Connect