微信IOS的SDK:isWXAppInstalled总是返回NO

IIIIIIIII

著作权归作者所有。
商业转载请联系作者获得授权,非商业转载请注明出处。
作者:RefuseBT
链接:https://www.zhihu.com/question/21306514/answer/21879028
来源:知乎

直接用URL判断试试

if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"weixin://"]])
{
NSLog(@"OK weixin://");
}
if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"wechat://"]])
{
NSLog(@"OK wechat://");
}
if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"fb290293790992170://"]])
{
NSLog(@"OK fb290293790992170://");
}
著作权归作者所有。
商业转载请联系作者获得授权,非商业转载请注明出处。
作者:libn
链接:https://www.zhihu.com/question/21306514/answer/64748910
来源:知乎

今天遇到了这个问题,升级ios9的原因,按照微信的升级文档解决
重要!
SDK1.6
1、iOS 9系统策略更新,限制了http协议的访问,此外应用需要在“Info.plist”中将要使用的URL Schemes列为白名单,才可正常检查其他应用是否安装。
受此影响,当你的应用在iOS 9中需要使用微信SDK的相关能力(分享、收藏、支付、登录等)时,需要在“Info.plist”里增加如下代码:

<key>LSApplicationQueriesSchemes</key>
<array>
<string>weixin</string>
</array>

<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
或者配置白名单域名

2、开发者需要在工程中链接上 CoreTelephony.framework
3、解决bitcode编译不过问题

SDK1.5
1、废弃safeSendReq:接口,使用sendReq:即可。
2、新增+(BOOL) sendAuthReq:(SendAuthReq*) req viewController : (UIViewController*) viewController delegate:(id<WXApiDelegate>) delegate;
支持未安装微信情况下Auth,具体见WXApi.h接口描述
3、微信开放平台新增了微信模块用户统计功能,便于开发者统计微信功能模块的用户使用和活跃情况。开发者需要在工程中链接上:SystemConfiguration.framework,libz.dylib,libsqlite3.0.dylib。

还有就是要升级SDK到最新
posted @ 2016-02-26 10:29  iOS_XL_NSArray  阅读(5893)  评论(0编辑  收藏  举报