iOS发起微信分享每次都会二次跳转

问题记录:

微信开放平台配置Universal Link,如下:
配置

  1. 后端开发人员在域名服务器的根路径下的/.well-known/文件下添加apple-app-site-association配置文件(注意:文件名不能有后缀):
    旧格式(苹果已弃用):
{
    "applinks":{
        "apps":[],
        "details":[
            {
                "appID":”9JXXXXXXNQ.com.XXXX.www",
                "paths":["/app/*"] //只要链接中包含/app/就可以唤起app
            }
        ]
    }
}

新格式:

{
  "applinks": {
      "details": [
           {
             "appIDs": [ "teamID.应用BundId"],
             "components": [
           
               {
                  "/": "/buy/*",
                  "comment": "Matches any URL with a path that starts with /buy/."
               },
               {
                  "/": "/help/website/*",
                  "exclude": true,
                  "comment": "Matches any URL with a path that starts with /help/website/ and instructs the system not to open it as a universal link."
               },
              	 {
                  "/": "/help/*",
                  "?": { "articleNumber": "????" },
                  "comment": "Matches any URL with a path that starts with /help/ and that has a query item with name 'articleNumber' and a value of exactly four characters."
               },
				{
                  "/": "/app/*",
                  "comment": "Matches any URL with a path that starts with /app/."
               },
		
             ]
           }
       ]
   },
   "webcredentials": {
      "apps": [ "9JXXXXXXNQ.com.XXXX.www ]
   }
}

1)以上文件中"apps"对应的是[ "teamID.应用BundId],
teamID在苹果开发者账号中查找,如下图:
团队ID
2)/app/*是配置的Universal Link格式。域名+/app/*即可唤醒APP,其中*为通配符,可以替换为任意字符
例如:域名+/app/123 、域名+/app/abac 、域名+/app/ab23

  1. 苹果开发者账号,找到项目对应BundleID勾选Assocated Domains能力
    BundleID配置

  2. 按如下步骤配置Xcode项目,TARGETS——Runner(或者项目名)——Signing&Capabilities 中通过点击+ Capability新增 Assocated Domains能力,并新增如下两个Domains记录;
    info配置

  3. 项目中微信SDK注册代码如下

import 'package:fluwx_no_pay/fluwx_no_pay.dart' as fluwx;

class FTSocialShareUtil {
  static initUtil() {
  	//kIosUniversalLinks是微信开放平台配置的Universal Link
    fluwx.registerWxApi(
        appId: kWechatPayAppId,
        doOnIOS: true,
        doOnAndroid: true,
        universalLink: kIosUniversalLinks);
}

问题:
点击分享每次都会二次跳转,如下图:
二次跳转

原因:配置的Universal Link未生效

调整

  1. ios项目配置的Domains记录必须是www+域名,
    如:applinks:www.wodeyuming.comwebcredentials:www.wodeyuming.com
  2. 配置文件apple-app-site-association使用新的格式
  3. 开放平台配置的Universal Link,需要https+www+域名+路径,切须以/结尾
    如: https://www.wodeyuming.com/app/

测试配置是否成功:
1) Safari输入Universal Links(包括完整路径)+随机字符串(例如: abc)
SDK Sample的Universal Links: https://help.wechat.com/sdksample/
测试输入Safari的Universal Links:https://help.wechat.com/sdksample/abc

2)下拉页面检查是否有打开app的入口提示(如下图)
safari

参考文档:
微信SDKiOS接入指南

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值