上周公司有个老项目,需要APP跳转到微信小程序,我看了下微信的文档,照着写了下,发现没有用,方法找不到
后来下载了微信的SDK,发现和原来的友盟分享的冲突了,友盟分享里面也集成了微信的SDK,所以两者去掉一个就可以了,我选择去掉微信的,保留友盟里面的,但是工程太老了,之前友盟的里面的微信的SDK已经很旧了,没有包括小程序的代码,所以必须要更新友盟的SDK。
更新完了,发现原来的代码报错了,新旧对比如下
1.设置友盟appkey对比
老方法:
[[UMSocialManager defaultManager] setUmSocialAppkey:@"key值"];
新方法:
[UMConfigure initWithAppkey:@"key值" channel:@"App Store"];
2.移除微信收藏新老方法对比:
老方法:
[[UMSocialManager defaultManager].platformTypeArray removeObject:[NSNumber numberWithInteger:UMSocialPlatformType_WechatFavorite]];
新方法:
[[UMSocialManager defaultManager] removePlatformProviderWithPlatformTypes:@[@(UMSocialPlatformType_WechatFavorite),@(UMSocialPlatformType_YixinFavorite)]];
3.以上必须注册微信的前提下才可以调起微信,以前是不需要注册的
//向微信注册
WXApi registerApp:@"appkey值" universalLink:@"https://help.wechat.com/sdksample/"];
注册了才可以调起微信,但是如果universalLink和微信开发平台注册的时候,填写的不一样,就会报错
提示universal link 校验不通过
具体设置universalLink可以去微信开放平台看看,注意这些基本就没有问题了,然后跳转小程序也是可以跳转了,
需要注意的是userName是填写小程序的原始ID,不是小程序的ID
WXLaunchMiniProgram.Req req = new WXLaunchMiniProgram.Req();
req.userName = "gh_d43f693ca31f"; // 填小程序原始id
怎么查看原始ID可以看这里