如果你还不是一名开发者,请先注册成为开发者,如果是则开始创建应用 ( 此篇文章为微博sso授权对于SDK下载地址http://open.weibo.com/wiki/)
里面有开发文档,按照文档配置相应的应用,但有一点文档没说很含糊,当你创建应用时候你应该点击 微链接 -> 移动应用- > 立即接入- > 继续创建...之后才是开发文档连接上啊,继续按照开发文档说的就行
1: 设置工程中的url Scheme回调
将从 GitHub 上下载的 libWeiboSDK 文件夹添加至工程
其中包含
WeiboSDK.h 、
WeiboUser.h 、
WBHttpRequest.h 、
WBHttpRequest+WeiboUser.h
WBHttpRequest+WeiboToken.h
WBSDKRelationshipButton.h
WeiboSDK+Statistics.h 这 10 个 .h 文 件
以 及 libWeiboSDK.a 和WeiboSDK.bundle,统共 12 个文件。
6. 在工程中引入静态库之后,需要在编译时添加 –objC 编译选项,避免静态库中类加载 不全造成程序崩溃。方法:程序 Target->Buid Settings->Linking 下 OtherLinker Flags 项添加-ObjC。
添加 FrameWork 文件到工程
在工程中修改 Other Linker Flags 后,需要修改编译步骤的链接库设置,避免链接阶段由于库的设置错误导致程序崩溃。
方法:程序 Target->Buid Phases->LinkBinary With Libraries 下添加以下 Framework 至工程中。需要添加的 Frameworks为 : QuartzCore.framework 、
ImageIO.framework 、
SystemConfiguration.framework 、
Security.framework 、
CoreTelephony.framework 、
CoreText.framework 、
UIKit.framework 、
Foundation.framework 、
CoreGraphics.framework 、
libz.dylib 、
libsqlite3.dylib。
之后要在在
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[WeiboSDK enableDebugMode:YES];
[WeiboSDK registerApp:kAppKey];
return YES;
}
里面注册
和重写回调方法
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
return [WeiboSDK handleOpenURL:url delegate:self];
}
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
return [WeiboSDK handleOpenURL:url delegate:self ];
}
如果要看接收到的response则
- (void)didReceiveWeiboResponse:(WBBaseResponse *)response
{
}
在这里面处理
之后在自己的方法里面处理
WBAuthorizeRequest *authRequest = [WBAuthorizeRequest request];
authRequest.redirectURI = URL;
authRequest.scope = @"all";
// 读取图片
NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:imageUrl]];
UIImage *imageNew=[UIImage imageWithData:data];
WBMessageObject *message = [WBMessageObject message];
message.text = shareTxt;
WBImageObject *image = [WBImageObject object];
image.imageData = data;
message.imageObject = image;
WBSendMessageToWeiboRequest *request = [WBSendMessageToWeiboRequest requestWithMessage:message authInfo:authRequest access_token:sinaToken];
[WeiboSDK sendRequest:request];