集成部分
- 官网下载SDK
https://open.weixin.qq.com (微信的)
http://open.weibo.com (新浪的)(这里我只简单介绍二种,其他的大同小异) - 拉入项目中
-
配置需要的一些库文件
weibo.png
wechat.png - 编译下。提示有方法找不到的时候可以在 Build SettIngs -> 搜索 other linker Flags-> 添加 -ObjC
- 配置URL Schemes
- 在info.plist里配置白名单
<key>LSApplicationQueriesSchemes</key>
<array>
<string>sinaweibohd</string>
<string>sinaweibo</string>
<string>weibosdk</string>
<string>weibosdk2.5</string>
<string>weixin</string>
</array>
- 部分代码
- (void) shareToWechat
{
WXMediaMessage *message = [WXMediaMessage message];
message.title = @"标题";
message.description = @"详情";
//获取原图
UIImage *originImage = [[SDImageCache sharedImageCache] imageFromDiskCacheForKey:@"图片URL"];//这里使用SD进行图片缓存
[message setThumbImage:originImage];
WXVideoObject *ext = [WXVideoObject object];//视频类型
ext.videoUrl = @"链接地址";
message.mediaObject = ext;
SendMessageToWXReq *req = [[SendMessageToWXReq alloc] init];
req.bText = NO;
req.message = message;
req.scene = WXSceneSession;//WXSceneTimeline(朋友圈)
[WXApi sendReq:req];
}
- (void)shareToSina
{
WBAuthorizeRequest *authRequest = [WBAuthorizeRequest request];
authRequest.redirectURI = @"http://www.sina.com";
authRequest.scope = @"all";
WBMessageObject *message = [WBMessageObject message];
WBWebpageObject *webpage = [WBWebpageObject object];
webpage.objectID = @"identifier1";
webpage.title = @"标题";
webpage.description = @"描述";
//切记分享的图片大小不能超过32k,否则分享不成功(个人觉得放LOGO的)。
webpage.thumbnailData = [NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"userImage" ofType:@"png"]];
webpage.webpageUrl = @"链接地址";
message.mediaObject = webpage;
WBSendMessageToWeiboRequest *request = [WBSendMessageToWeiboRequest requestWithMessage:message authInfo:authRequest access_token:nil];
[WeiboSDK sendRequest:request];
}
- 可能遇到的问题
编译时报错,什么方法找不到,看是否有加入-ObjC
跳转不成功?看是否有配置白名单
返回时崩溃?在AppDelegate中加入回调方法(个人愚见)
/** 微博分享结束后的回调 */
- (void)didReceiveWeiboResponse:(WBBaseResponse *)response{}
- (void)didReceiveWeiboRequest:(WBBaseRequest *)request{}
/** 分享回调 */
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url {
return [WXApi handleOpenURL:url delegate:self] | [WeiboSDK handleOpenURL:url delegate:self];
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
return [WXApi handleOpenURL:url delegate:self] | [WeiboSDK handleOpenURL:url delegate:self];
}
说一下申请AppKey
-
微信开放平台
账号:邮箱注册(未注册开发平台、未注册公众平台、未绑定私人账号)
应用中英文名称、中英文简介
28X28像素的、108X108像素的PNG格式的图片(logo)
应用官网(网址)
Bundle ID // 很容易申请成功。。。我第二天就有结果了 -
新浪开放平台
微博账号登录
开发者类型:个人 公司
开发者名称、企业邮箱、企业电话、紧急联系人、电话
真实姓名、证件号码、证件照片、手机验证
Apple ID、
应用简介(15)、应用介绍(1000)
搜索标签
16X16、80X80、120X120(PNG/JPG)
应用介绍图片三张(高:300px 宽:450px) //需要个人认证,才能提交审核
网友评论