App支付链接唤起方案 |
您所在的位置:网站首页 › platformasi › App支付链接唤起方案 |
当终端类型为App时,在 支付 接口的返回中,支付宝会返回至多三种类型的链接: 链接名 schemeUrl applinkUrl normalUrl 描述 原生类型的 deep link。 UL/AL 类型的 deep link,在WebView 中也可以充当 H5 链接进行加载。 H5 类型的链接。该链接会屏蔽 AL/UL 属性,使得一定能进到一个 H5 页面。 样例 alipays://platformapi/startApp?appId=10000007&actionTy... https://payments.gcash.com/gcash-ac-cashier-intermedi... https://m.dana.id/m/ac/init?ACCodeValue=https%3A%2F... 补充信息 您可以根据应用的架构或兼容性需求采取对应的方案进行对接。 安卓篇添加 AndroidManifest.xml 配置出于安卓的隐私和安全政策,请在 AndroidManifest.xml 中添加 标签,以确保支付链接能打开对应的钱包 App。 参考:https://developer.android.com/guide/topics/manifest/queries-element 标签中需要配置钱包 App 的包名(package name),对应的值可以从支付宝的 支付 接口返回中获取到,或者联系支付宝技术支持。 copy ... ... 判断钱包 App 是否安装并分别处理建议使用支付宝返回的 applinkUrl 拉起支付。您可以先判断买家是否安装钱包 App,若已安装,则通过该链接唤起钱包 App 进行支付。若未安装,可以在 WebView 容器中加载该链接,页面将引导买家进行 H5 支付或者跳转至应用市场的钱包下载页。 若需要兼容低版本安卓,在尝试拉起支付时,可以使用 schemeUrl 以提高拉起成功率。若您希望直接拉起 H5 支付,可以使用 WebView 容器加载 normalUrl 或 applinkUrl。 判断是否安装以及拉起支付的代码请参考以下示例,WebView 容器的配置请参考下一节的内容。 copyString link = "https://m.tngdigital.com.my/s/ac..."; try { Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(link)); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setPackage("my.com.tngdigital.ewallet"); // 通过以下两行代码判断是否安装钱包APP PackageManager packageManager = MainActivity.this.getPackageManager(); List activities = packageManager.queryIntentActivities(intent, 0); if (activities.size() |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |