开放平台:微信 for iOS
来源:互联网 发布:超级优化txt百度网盘 编辑:程序博客网 时间:2024/05/21 08:04
按照常例,列一些网址先:
微信开放平台首页: http://open.weixin.qq.com
微信 iOS SDK 官方下载地址: http://open.weixin.qq.com/download/sdk/wechat_sdk_ios.zip
微信 分享好友API调用官方使用教程: http://open.weixin.qq.com/document/gettingstart/ios/?lang=zh_CN
目前来说:微信开放平台主要提供两个API:
1:将信息分享给微信好友
2:将信息直接分享至朋友圈
其实官方教程已经非常详细了,我也是按照官方的一步步来得以实现,
那为什么写这篇教程? 有一个最主要的目的是,减少没必要的时间开销,以及一些官方教程上面提到的一些盲区.
开始:
将数据分享给好友总共5个步骤,注意:不要乱了顺序:
1:在工程Plist文件中添加一个 URL type "URL scheme”为你所注册的应用程序id,既AppID
2:引入头文件,在接口处声明要实现的委托.
3:将申请的AppID 注册, 这个方法不调用,是无法启动微信客户端的.
- [WXApi registerApp:WeiXinAppID]
- -(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
- {
- //如果涉及其他应用交互,请做如下判断,例如:还可能和新浪微博进行交互
- if ([url.scheme isEqualToString:WeiXinAppID]) {
- return [WXApi handleOpenURL:url delegate:self];
- }else
- {
- return YES;
- }
- }
5:通过调用如下方法及参数 来 立刻显示微信客户端
- SendMessageToWXReq *sendMsg = [[SendMessageToWXReq alloc] init];
- sendMsg.text = @"123";
- sendMsg.bText = YES;
- [WXApi sendReq:sendMsg];
6:当微信界面的返回按钮被点击时,微信客户端会回调之前启用自己的应用,此处触发通用的UIApplicationDelegate 代理,也就是第四点.
当执行 [WXApi handleOpenURL:url delegate:self] 以后 触发微信API自带的委托:
- -(void)onResp:(BaseResp *)resp
- {
- NSLog(@"%@",resp);
- NSLog(@"errStr %@",[resp errStr]);
- NSLog(@"errCode %d",[resp errCode]);
- NSLog(@"type %d",[resp type]);
- }
自此,整个应用与微信客户端交互就结束了.
Date:2013-1-5 21:13
如果微信的SDK在工作空间的环境下使用 并在工程配置文件的 Other Linker Flags 中设置了 -all_load
那么会真机编译时产生编译错误,也不知道是到底是什么文件出了问题,那么这时 就不要使用-all_load了, 使用 -force_load
- 开放平台:微信 for iOS
- 开放平台:微信 for iOS
- 开放平台:微信 for iOS
- iOS微信开放平台
- ios应用接入微信开放平台
- ios应用接入微信开放平台
- 开放平台:新浪微博 for iOS
- 微信开放平台
- 开放平台:StackMob for iOS
- 开放平台:Parse for iOS
- iOS:开放平台引用(二)--微信分享
- iOS:开放平台引用(二)--微信分享
- iOS 集成微信开放平台 sdk 编译不过
- 微信智能开放平台
- 微信开放平台申请
- 微信支付-开放平台-公众平台
- 微信开放平台开发(微信iOS终端SDK新手使用指南)
- 微信开放平台, 微信公众平台区别
- iOS中arc的设置与使用
- SQLite Explain(解释)
- iOS 添加微信分享
- JSON 文本 JavaScript 对象 eval() 函数
- 在xcode6.1和ios10.10.1环境下实现app发布
- 开放平台:微信 for iOS
- BMP文件读写
- 关于CC2540/2541编译Performing Post-Build Action卡住的问题
- Android settings.db数据库中添加一条新的默认配置项
- mtd解析过程中自动挂载rootfs
- 不要62(数位DP)
- mysql 读写分离
- 对于JNI方法名,数据类型和方法签名的一些认识
- 【编程拾遗】VC++中LPCTSTR、CString、char *、string之间的相互转换