解决微信分享显示“未验证应用”问题。

微信分享出现“未验证应用”是因为没有升级微信sdk最新版,要升级到1.8.6版本以上才行。

这个是微信开发文档的截图

按着微信开发文档集成即可。需要注意的问题:

1.个别版本可能会出现找不到api里边的属性或方法报错,开始以为是微信换了API,结果不是,解决方法:把微信sdk删除,重新下了最新版导入,就可以了。

2.配置苹果的Associated Domains属性,


这个是微信开发文档的截图

注意这个是以applinks开头,格式是:applinks:加上你们的域名,例如:applinks:www.baidu.com

3.自己写一个json文件,内容如下:

{

    "applinks": {

        "apps": [],

        "details": [

            {

                "appID": "你的开发者账号的teamID.你的app的bundleID",

                "paths": ["/app/*"]

            },

            {

                "appID": "你的开发者账号的teamID.你的app的bundleID",

                "paths": ["/appcrm/*"]

            }

        ]

    }

}

如果只有一个app的话,就写一个对象就行,我这个是两个app,所以写的是两个,注意多个app的话,参数paths不能只写["/*"],得加上路径,例如["/app/*"],要不然调起微信的时候跳转有问题。两个app会混乱。appID:你的开发者账号的teamID和你的app的bundleID中间以"."符号连接。文件命名为:apple-app-site-association

4.把上边写好的文件发给后台,传到服务器的根目录下的.well-known目录中,然后得到一个路径,例如:https://www.baidu.com/.well-known/apple-app-site-association,这个路径就是你要的Universal Links。

5.得到这个路径后就在你的项目中配置相应的参数,我用的友盟分享,例如:

//配置微信平台的Universal Links

    //微信和QQ完整版会校验合法的universalLink,不设置会在初始化平台失败

    [UMSocialGlobal shareInstance].universalLinkDic = @{@(UMSocialPlatformType_WechatSession):@"https://www.baidu.com/.well-known/apple-app-site-association/",

                                                        @(UMSocialPlatformType_QQ):@"https://www.baidu.com/.well-known/apple-app-site-association/"

                                                        };

注意新版友盟没有了[[UMSocialManager defaultManager] setUmSocialAppkey:@""];这个方法,你得调用[UMConfigure initWithAppkey:@"" channel:@"App Store"];不然分享会报错。

6.要在info.plist里的LSApplicationQueriesSchemes加上weixinULAPI属性。

7.在微信开放平台信息中配置Universal Links。

8.配置完成后重新装app,运行分享会依然显示“未验证应用”,得等到第二天分享才会好。

9.如果是apple-app-site-association文件内容错了,修改完后需要卸载app后重新安装才行,不卸载会有缓冲。

问题排查:https://docs.qq.com/doc/DZHNvSGJLS3pqbHNl

你可能感兴趣的:(解决微信分享显示“未验证应用”问题。)