diff --git a/ShareSDK.framework/Headers/ISSDKAuthView.h b/ShareSDK.framework/Headers/ISSDKAuthView.h new file mode 100644 index 0000000..42f5320 --- /dev/null +++ b/ShareSDK.framework/Headers/ISSDKAuthView.h @@ -0,0 +1,27 @@ +// +// ISSDKAuthView.h +// ShareSDK +// +// Created by fenghj on 15/12/2. +// Copyright © 2015年 掌淘科技. All rights reserved. +// + +#import +#import "SSDKTypeDefine.h" + + +@protocol ISSDKAuthView + +/** + * 取消授权 + */ +- (void)cancel; + +/** + * 授权状态变更时触发 + * + * @param stateChangedHandler 授权状态变更处理器 + */ +- (void)onAuthStateChanged:(SSDKAuthorizeStateChangedHandler)stateChangedHandler; + +@end diff --git a/ShareSDK.framework/Headers/NSMutableDictionary+SSDKInit.h b/ShareSDK.framework/Headers/NSMutableDictionary+SSDKInit.h new file mode 100644 index 0000000..3d7ec70 --- /dev/null +++ b/ShareSDK.framework/Headers/NSMutableDictionary+SSDKInit.h @@ -0,0 +1,305 @@ +// +// NSMutableDictionary+ShareSDK.h +// ShareSDK +// +// Created by 冯 鸿杰 on 15/2/6. +// Copyright (c) 2015年 掌淘科技. All rights reserved. +// + +#import +#import "SSDKTypeDefine.h" + +/** + * 初始化分享平台相关 + */ +@interface NSMutableDictionary (SSDKInit) + +/** + * 设置平台的授权配置 + * + * @param authSettings 授权配置信息 + * 例如在配置新浪微博的初始化信息中设置授权配置信息: + * [appInfo SSDKSetAuthSettings:@[@"follow_app_official_microblog"]]; + */ +- (void)SSDKSetAuthSettings:(NSArray *)authSettings; + +/** + * 设置新浪微博应用信息 + * + * @param appKey 应用标识 + * @param appSecret 应用密钥 + * @param redirectUri 回调地址 + * @param authType 授权方式。值可以是:SSDKAuthTypeSSO、SSDKAuthTypeWeb、SSDKAuthTypeBoth,分别代表SSO、网页授权、SSO+网页授权。 + */ +- (void)SSDKSetupSinaWeiboByAppKey:(NSString *)appKey + appSecret:(NSString *)appSecret + redirectUri:(NSString *)redirectUri + authType:(NSString *)authType; + +/** + * 设置微信(微信好友,微信朋友圈、微信收藏)应用信息 + * + * @param appId 应用标识 + * @param appSecret 应用密钥 + */ +- (void)SSDKSetupWeChatByAppId:(NSString *)appId + appSecret:(NSString *)appSecret; + +/** + * 设置Twitter应用信息 + * + * @param consumerKey 应用标识 + * @param consumerSecret 应用密钥 + * @param redirectUri 回调地址 + */ +- (void)SSDKSetupTwitterByConsumerKey:(NSString *)consumerKey + consumerSecret:(NSString *)consumerSecret + redirectUri:(NSString *)redirectUri; + +/** + * 设置QQ分享平台(QQ空间,QQ好友分享)应用信息 + * + * @param appId 应用标识 + * @param appKey 应用Key + * @param authType 授权方式。值可以是:SSDKAuthTypeSSO、SSDKAuthTypeWeb、SSDKAuthTypeBoth,分别代表SSO、网页授权、SSO+网页授权。 + */ +- (void)SSDKSetupQQByAppId:(NSString *)appId + appKey:(NSString *)appKey + authType:(NSString *)authType; + +/** + * 设置Facebook应用信息 + * + * @param apiKey 应用标识 + * @param appSecret 应用密钥 + * @param authType 授权方式。值可以是:SSDKAuthTypeSSO、SSDKAuthTypeWeb、SSDKAuthTypeBoth,分别代表SSO、网页授权、SSO+网页授权。 + */ +- (void)SSDKSetupFacebookByApiKey:(NSString *)apiKey + appSecret:(NSString *)appSecret + authType:(NSString *)authType; + + +/** + * 设置腾讯微博应用信息 + * + * @param appKey 应用标识 + * @param appSecret 应用密钥 + * @param redirectUri 回调地址 + * @param authType 授权方式。值可以是:SSDKAuthTypeSSO、SSDKAuthTypeWeb、SSDKAuthTypeBoth,分别代表SSO、网页授权、SSO+网页授权。 + */ +- (void)SSDKSetupTencentWeiboByAppKey:(NSString *)appKey + appSecret:(NSString *)appSecret + redirectUri:(NSString *)redirectUri; + +/** + * 设置豆瓣应用信息 + * + * @param apiKey 应用标识 + * @param secret 应用密钥 + * @param redirectUri 回调地址 + */ +- (void)SSDKSetupDouBanByApiKey:(NSString *)apiKey + secret:(NSString *)secret + redirectUri:(NSString *)redirectUri; + +/** + * 设置人人网应用信息 + * + * @param appId 应用标识 + * @param appKey 应用Key + * @param secretKey 应用密钥 + * @param authType 授权方式。值可以是:SSDKAuthTypeSSO、SSDKAuthTypeWeb、SSDKAuthTypeBoth,分别代表SSO、网页授权、SSO+网页授权。 + */ +- (void)SSDKSetupRenRenByAppId:(NSString *)appId + appKey:(NSString *)appKey + secretKey:(NSString *)secretKey + authType:(NSString *)authType; + +/** + * 设置开心网应用信息 + * + * @param apiKey 应用标识 + * @param secretKey 应用密钥 + * @param redirectUri 回调地址 + */ +- (void)SSDKSetupKaiXinByApiKey:(NSString *)apiKey + secretKey:(NSString *)secretKey + redirectUri:(NSString *)redirectUri; + +/** + * 设置Pocket应用信息 + * + * @param consumerKey 应用标识 + * @param redirectUri 回调地址 + * @param authType 授权方式。值可以是:SSDKAuthTypeSSO、SSDKAuthTypeWeb、SSDKAuthTypeBoth,分别代表SSO、网页授权、SSO+网页授权。 + */ +- (void)SSDKSetupPocketByConsumerKey:(NSString *)consumerKey + redirectUri:(NSString *)redirectUri + authType:(NSString *)authType; + +/** + * 设置Google+应用信息 + * + * @param clientId 应用标识 + * @param clientSecret 应用密钥 + * @param redirectUri 回调地址 + */ +- (void)SSDKSetupGooglePlusByClientID:(NSString *)clientId + clientSecret:(NSString *)clientSecret + redirectUri:(NSString *)redirectUri; + +/** + * 设置Instagram应用信息 + * + * @param clientId 应用标识 + * @param clientSecret 应用密钥 + * @param redirectUri 回调地址 + */ +- (void)SSDKSetupInstagramByClientID:(NSString *)clientId + clientSecret:(NSString *)clientSecret + redirectUri:(NSString *)redirectUri; + +/** + * 设置LinkedIn应用信息 + * + * @param apiKey 应用标识 + * @param secretKey 应用密钥 + * @param redirectUrl 回调地址 + */ +- (void)SSDKSetupLinkedInByApiKey:(NSString *)apiKey + secretKey:(NSString *)secretKey + redirectUrl:(NSString *)redirectUrl; + +/** + * 设置Tumblr应用信息 + * + * @param consumerKey 应用标识 + * @param consumerSecret 应用密钥 + * @param callbackUrl 回调地址 + */ +- (void)SSDKSetupTumblrByConsumerKey:(NSString *)consumerKey + consumerSecret:(NSString *)consumerSecret + callbackUrl:(NSString *)callbackUrl; + +/** + * 设置Flickr应用信息 + * + * @param apiKey 应用标识 + * @param apiSecret 应用密钥 + */ +- (void)SSDKSetupFlickrByApiKey:(NSString *)apiKey + apiSecret:(NSString *)apiSecret; + +/** + * 设置有道云笔记应用信息 + * + * @param consumerKey 应用标识 + * @param consumerSecret 应用密钥 + * @param oauthCallback 回调地址 + */ +- (void)SSDKSetupYouDaoNoteByConsumerKey:(NSString *)consumerKey + consumerSecret:(NSString *)consumerSecret + oauthCallback:(NSString *)oauthCallback; + +/** + * 设置印象笔记应用信息,注:中国版和国际版都是调用此接口进行初始化操作。 + * + * @param consumerKey 应用标识 + * @param consumerSecret 应用密钥 + * @param sandbox 是否为沙箱模式, YES 沙箱模式,NO 非沙箱模式 + */ +- (void)SSDKSetupEvernoteByConsumerKey:(NSString *)consumerKey + consumerSecret:(NSString *)consumerSecret + sandbox:(BOOL)sandbox; + +/** + * 设置支付宝好友应用信息 + * + * @param appId 应用标识 + */ +- (void)SSDKSetupAliPaySocialByAppId:(NSString *)appId; + +/** + * 设置Pinterest应用信息 + * + * @param clientId 应用标识 + */ +- (void)SSDKSetupPinterestByClientId:(NSString *)clientId; + +/** + * 设置KaKao应用信息 + * + * @param appKey 应用标识, 当使用客户端授权分享和授权时需要传入该标识 + * @param restApiKey RestApi标识 + * @param reidrectUri 回调地址 + * @param authType 授权方式。值可以是:SSDKAuthTypeSSO、SSDKAuthTypeWeb、SSDKAuthTypeBoth,分别代表SSO、网页授权、SSO+网页授权。 + */ +- (void)SSDKSetupKaKaoByAppKey:(NSString *)appKey + restApiKey:(NSString *)restApiKey + redirectUri:(NSString *)redirectUri + authType:(NSString *)authType; + +/** + * 设置Dropbox应用信息 + * + * @param appKey 应用标识 + * @param appSecret 应用密钥 + * @param oauthCallback 回调地址 + */ +- (void)SSDKSetupDropboxByAppKey:(NSString *)appKey + appSecret:(NSString *)appSecret + oauthCallback:(NSString *)oauthCallback; + +/** + * 设置VKontakte应用信息 + * + * @param applicationId 应用标识 + * @param secretKey 应用密钥 + * @param authType 授权方式。值可以是:SSDKAuthTypeSSO、SSDKAuthTypeWeb、SSDKAuthTypeBoth,分别代表SSO、网页授权、SSO+网页授权。 + */ +- (void)SSDKSetupVKontakteByApplicationId:(NSString *)applicationId + secretKey:(NSString *)secretKey; + +- (void)SSDKSetupVKontakteByApplicationId:(NSString *)applicationId + secretKey:(NSString *)secretKey + authType:(NSString *)authType; + +/** + * 设置明道应用信息 + * + * @param appKey 应用标识 + * @param appSecret 应用密钥 + * @param redirectUri 回调地址 + */ +- (void)SSDKSetupMingDaoByAppKey:(NSString *)appKey + appSecret:(NSString *)appSecret + redirectUri:(NSString *)redirectUri; + +/** + * 设置易信(易信好友,易信朋友圈、易信收藏)应用信息 + * + * @param appId 应用标识 + * @param appSecret 应用密钥 + * @param redirectUri 回调地址 + * @param authType 授权方式。值可以是:SSDKAuthTypeSSO、SSDKAuthTypeWeb、SSDKAuthTypeBoth,分别代表SSO、网页授权、SSO+网页授权。 + */ +- (void)SSDKSetupYiXinByAppId:(NSString *)appId + appSecret:(NSString *)appSecret + redirectUri:(NSString *)redirectUri + authType:(NSString *)authType; + +/** + * 设置Instapaper + * + * @param consumerKey 应用标识 + * @param comsumerSecret 应用密钥 + */ +- (void)SSDKSetupInstapaperByConsumerKey:(NSString *)consumerKey + consumerSecret:(NSString *)consumerSecret; +/** + * 设置钉钉应用信息 + * + * @param appId 应用标识 + */ +- (void)SSDKSetupDingTalkByAppId:(NSString *)appId; +@end diff --git a/ShareSDK.framework/Headers/NSMutableDictionary+SSDKShare.h b/ShareSDK.framework/Headers/NSMutableDictionary+SSDKShare.h new file mode 100644 index 0000000..d2c78dd --- /dev/null +++ b/ShareSDK.framework/Headers/NSMutableDictionary+SSDKShare.h @@ -0,0 +1,737 @@ +// +// NSMutableDictionary+SSDKShare.h +// ShareSDK +// +// Created by 冯 鸿杰 on 15/2/9. +// Copyright (c) 2015年 掌淘科技. All rights reserved. +// + +#import +#import "SSDKTypeDefine.h" +#import "SSDKImage.h" +#import "SSDKData.h" + +/** + * 分享参数构造相关 + */ +@interface NSMutableDictionary (SSDKShare) + +/** + * 设置分享标识 + * + * @param flags 标识数组,元素为NSString。 + */ +- (void)SSDKSetShareFlags:(NSArray *)flags; + +/** + * 使用客户端分享 + */ +- (void)SSDKEnableUseClientShare; + +/** + * 设置分享参数 + * + * @param text 文本 + * @param images 图片集合,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。如: @"http://www.mob.com/images/logo_black.png" 或 @[@"http://www.mob.com/images/logo_black.png"] + * @param url 网页路径/应用路径 + * @param title 标题 + * @param type 分享类型 + */ +- (void)SSDKSetupShareParamsByText:(NSString *)text + images:(id)images + url:(NSURL *)url + title:(NSString *)title + type:(SSDKContentType)type; + +/** + * 设置新浪微博分享参数 + * + * @param text 文本 + * @param title 标题 + * @param image 图片对象,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage + * @param url 分享链接 + * @param latitude 纬度 + * @param longitude 经度 + * @param objectID 对象ID,标识系统内内容唯一性,应传入系统中分享内容的唯一标识,没有时可以传入nil + * @param type 分享类型,仅支持Text、Image、WebPage(客户端分享时)类型 + */ +- (void)SSDKSetupSinaWeiboShareParamsByText:(NSString *)text + title:(NSString *)title + image:(id)image + url:(NSURL *)url + latitude:(double)latitude + longitude:(double)longitude + objectID:(NSString *)objectID + type:(SSDKContentType)type; + +/** + * 设置腾讯微博分享参数 + * + * @param text 文本 + * @param images 分享图片列表,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。如: @"http://www.mob.com/images/logo_black.png" 或 @[@"http://www.mob.com/images/logo_black.png"] + * @param latitude 纬度 + * @param longitude 经度 + * @param type 分享类型, 仅支持Text、Image类型 + */ +- (void)SSDKSetupTencentWeiboShareParamsByText:(NSString *)text + images:(id)images + latitude:(double)latitude + longitude:(double)longitude + type:(SSDKContentType)type; + +/** + * 设置微信分享参数 + * + * @param text 文本 + * @param title 标题 + * @param url 分享链接 + * @param thumbImage 缩略图,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage + * @param image 图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage + * @param musicFileURL 音乐文件链接地址 + * @param extInfo 扩展信息 + * @param fileData 文件数据,可以为NSData、UIImage、NSString、NSURL(文件路径)、SSDKData、SSDKImage + * @param emoticonData 表情数据,可以为NSData、UIImage、NSURL(文件路径)、SSDKData、SSDKImage + * @param type 分享类型,支持SSDKContentTypeText、SSDKContentTypeImage、SSDKContentTypeWebPage、SSDKContentTypeApp、SSDKContentTypeAudio和SSDKContentTypeVideo + * @param platformType 平台子类型,只能传入SSDKPlatformSubTypeWechatSession、SSDKPlatformSubTypeWechatTimeline和SSDKPlatformSubTypeWechatFav其中一个 + * + * 分享文本时: + * 设置type为SSDKContentTypeText, 并填入text参数 + * + * 分享图片时: + * 设置type为SSDKContentTypeImage, 非gif图片时:填入title和image参数,如果为gif图片则需要填写title和emoticonData参数 + * + * 分享网页时: + * 设置type为SSDKContentTypeWebPage, 并设置text、title、url以及thumbImage参数,如果尚未设置thumbImage则会从image参数中读取图片并对图片进行缩放操作。 + * + * 分享应用时: + * 设置type为SSDKContentTypeApp,并设置text、title、extInfo(可选)以及fileData(可选)参数。 + * + * 分享音乐时: + * 设置type为SSDKContentTypeAudio,并设置text、title、url以及musicFileURL(可选)参数。 + * + * 分享视频时: + * 设置type为SSDKContentTypeVideo,并设置text、title、url参数 + */ +- (void)SSDKSetupWeChatParamsByText:(NSString *)text + title:(NSString *)title + url:(NSURL *)url + thumbImage:(id)thumbImage + image:(id)image + musicFileURL:(NSURL *)musicFileURL + extInfo:(NSString *)extInfo + fileData:(id)fileData + emoticonData:(id)emoticonData + type:(SSDKContentType)type + forPlatformSubType:(SSDKPlatformType)platformSubType; + +/** + * 设置微信分享参数 + * + * @param text 文本 + * @param title 标题 + * @param url 分享链接 + * @param thumbImage 缩略图,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage + * @param image 图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage + * @param musicFileURL 音乐文件链接地址 + * @param extInfo 扩展信息 + * @param fileData 文件数据,可以为NSData、UIImage、NSString、NSURL(文件路径)、SSDKData、SSDKImage + * @param emoticonData 表情数据,可以为NSData、UIImage、NSURL(文件路径)、SSDKData、SSDKImage + * @param sourceFileExtension 源文件后缀名 + * @param sourceFileData 源文件数据,可以为NSData、NSString、NSURL(文件路径)、SSDKData + * @param type 分享类型,支持SSDKContentTypeText、SSDKContentTypeImage、SSDKContentTypeWebPage、SSDKContentTypeApp、SSDKContentTypeAudio和SSDKContentTypeVideo + * @param platformType 平台子类型,只能传入其中一个 + * + * 分享文本时: + * 设置type为SSDKContentTypeText, 并填入text参数 + * + * 分享图片时: + * 设置type为SSDKContentTypeImage, 非gif图片时:填入title和image参数,如果为gif图片则需要填写title和emoticonData参数 + * + * 分享网页时: + * 设置type为SSDKContentTypeWebPage, 并设置text、title、url以及thumbImage参数,如果尚未设置thumbImage则会从image参数中读取图片并对图片进行缩放操作。 + * + * 分享应用时: + * 设置type为SSDKContentTypeApp,并设置text、title、extInfo(可选)以及fileData(可选)参数。 + * + * 分享音乐时: + * 设置type为SSDKContentTypeAudio,并设置text、title、url以及musicFileURL(可选)参数。 + * + * 分享视频时: + * 设置type为SSDKContentTypeVideo,并设置text、title、url参数 + * + * 分享文件时: + * 设置type为SSDKContentTypeFile(例如.mp3、.mp4、.pdf、.docx的分享),设置title、sourceFileExtension、sourceFileData,以及thumbImage参数,如果尚未设置thumbImage则会从image参数中读取图片并对图片进行缩放操作参数 + */ +- (void)SSDKSetupWeChatParamsByText:(NSString *)text + title:(NSString *)title + url:(NSURL *)url + thumbImage:(id)thumbImage + image:(id)image + musicFileURL:(NSURL *)musicFileURL + extInfo:(NSString *)extInfo + fileData:(id)fileData + emoticonData:(id)emoticonData + sourceFileExtension:(NSString *)fileExtension + sourceFileData:(id)sourceFileData + type:(SSDKContentType)type + forPlatformSubType:(SSDKPlatformType)platformSubType; + +/** + * 设置Twitter分享参数 + * + * @param text 分享内容 + * @param images 分享图片列表,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。如: @"http://www.mob.com/images/logo_black.png" 或 @[@"http://www.mob.com/images/logo_black.png"] + * @param latitude 地理位置,纬度 + * @param longitude 地理位置,经度 + * @param type 分享类型,仅支持Text、Image类型 + */ +- (void)SSDKSetupTwitterParamsByText:(NSString *)text + images:(id)images + latitude:(double)latitude + longitude:(double)longitude + type:(SSDKContentType)type; + +/** + * 设置QQ分享参数 + * + * @param text 分享内容 + * @param title 分享标题 + * @param url 分享链接 + * @param thumbImage 缩略图,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage + * @param image 图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage + * @param type 分享类型, 仅支持Text(仅QQFriend)、Image(仅QQFriend)、WebPage、Audio、Video类型 + * @param platformSubType 平台子类型,只能传入SSDKPlatformSubTypeQZone或者SSDKPlatformSubTypeQQFriend其中一个 + */ +- (void)SSDKSetupQQParamsByText:(NSString *)text + title:(NSString *)title + url:(NSURL *)url + thumbImage:(id)thumbImage + image:(id)image + type:(SSDKContentType)type + forPlatformSubType:(SSDKPlatformType)platformSubType; + +/** + * 设置QQ分享参数 + * + * @param text 分享内容 + * @param title 分享标题 + * @param url 分享链接(如果分享类型为音频/视频时,应该传入音频/视频的网络URL地址) + [特别说明:分享视频到QZone时,视频为网络视频,请传入视频网络URL地址;视频为本地视频的,请传入来源于手机系统相册的相关的Asset URL地址] + * @param audioFlashURL 分享音频时缩略图播放源,仅平台子类型为SSDKPlatformSubTypeQQFriend,且分享类型为Audio时生效 + * @param videoFlashURL 分享视频时缩略图播放源,仅平台子类型为SSDKPlatformSubTypeQQFriend,且分享类型为Video时生效 + * @param thumbImage 缩略图,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage + * @param images 图片集合,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage + QQ会采用首张图片,QZone则支持图片数组 + * @param type 分享类型, 仅支持Text、Image、WebPage、Audio、Video类型 + * @param platformSubType 平台子类型,只能传入SSDKPlatformSubTypeQZone或者SSDKPlatformSubTypeQQFriend其中一个 + */ +- (void)SSDKSetupQQParamsByText:(NSString *)text + title:(NSString *)title + url:(NSURL *)url + audioFlashURL:(NSURL *)audioFlashURL + videoFlashURL:(NSURL *)videoFlashURL + thumbImage:(id)thumbImage + images:(id)images + type:(SSDKContentType)type + forPlatformSubType:(SSDKPlatformType)platformSubType; +/** + * 设置Facebook分享参数 + * + * @param text 分享内容 + * @param image 图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage + * @param type 分享类型,仅支持Text、Image类型 + */ +- (void)SSDKSetupFacebookParamsByText:(NSString *)text + image:(id)image + type:(SSDKContentType)type; + +/** + * 设置Facebook分享参数 + * + * @param text 分享内容(注意:当分享类型为WebPage时会作为链接描述) + * @param image 图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage (注意:在分享类型为WegPage时,仅网络图片有效;若不传,FB会自动根据分享的链接URL寻找) + * @param url 分享链接(注意:仅当分享类型为WebPage时生效) + [如果分享的连接是AppStore/GooglePlay/Facebook个人/公共主页,所对应的图片,标题,描述等参数可能不会生效,而实际生效的是FB通过爬虫网络根据连接搜刮而来的信息] + * @param title 链接标题(注意:仅当分享类型为WebPage时生效) + * @param urlName 连接名称(注意:仅当分享类型为WebPage时生效) + * @param attachementUrl 附件链接(附加的媒体文件(SWF 或 MP3)的网址。如果是 SWF,还必须指定image以提供视频的缩略图) + * @param type 分享类型,仅支持Text、Image、WebPage类型 + */ +- (void)SSDKSetupFacebookParamsByText:(NSString *)text + image:(id)image + url:(NSURL *)url + urlTitle:(NSString *)title + urlName:(NSString *)urlName + attachementUrl:(NSURL *)attachementUrl + type:(SSDKContentType)type; + +/** + * 设置短信分享参数 + * + * @param text 文本 + * @param title 标题 + * @param images 分享图片列表,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。如: @"http://www.mob.com/images/logo_black.png" 或 @[@"http://www.mob.com/images/logo_black.png"] + * @param attachments 附件列表, 可以为单个附件也可以为一个数组,元素可以为NSData、UIImage、NSString、NSURL(文件路径)、SSDKData、SSDKImage,注:只允许指定本地资源 + * @param recipients 接收人信息,如:@[@"400-685-2216"] + * @param type 分享类型,仅支持Text、Image类型 + */ +- (void)SSDKSetupSMSParamsByText:(NSString *)text + title:(NSString *)title + images:(id)images + attachments:(id)attachments + recipients:(NSArray *)recipients + type:(SSDKContentType)type; + +/** + * 设置邮件分享参数 + * + * @param text 文本 + * @param title 标题 + * @param images 分享图片列表,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。如: @"http://www.mob.com/images/logo_black.png" 或 @[@"http://www.mob.com/images/logo_black.png"] + * @param attachments 附件列表, 可以为单个附件也可以为一个数组,元素可以为NSData、UIImage、NSString、NSURL(文件路径)、SSDKData、SSDKImage,注:只允许指定本地资源 + * @param recipients 接收人信息,如:@["tester@163.com"] + * @param ccRecipients 抄送人信息,如:@["tester2@163.com"] + * @param bccRecipients 密送人信息,如:@["tester3@163.com"] + * @param type 分享类型,仅支持Text、Image类型 + */ +- (void)SSDKSetupMailParamsByText:(NSString *)text + title:(NSString *)title + images:(id)images + attachments:(id)attachments + recipients:(NSArray *)recipients + ccRecipients:(NSArray *)ccRecipients + bccRecipients:(NSArray *)bccRecipients + type:(SSDKContentType)type; + +/** + * 设置拷贝参数 + * + * @param text 文本,仅在type为Text时有效 + * @param images 分享图片列表,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。如: @"http://www.mob.com/images/logo_black.png" 或 @[@"http://www.mob.com/images/logo_black.png"] + * @param url 链接,仅在type为WebPage时有效 + * @param type 分享类型,仅支持Text、Image、WebPage类型 + */ +- (void)SSDKSetupCopyParamsByText:(NSString *)text + images:(id)images + url:(NSURL *)url + type:(SSDKContentType)type; + +/** + * 设置豆瓣分享参数 + * + * @param text 文本 + * @param image 分享图片,当type为Image时,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。当type为WebPage时,只能为网络图片,可以传入NSString(图片路径)、NSURL(图片路径)。 + * @param title 网页标题,仅在type为WebPage时有效。 + * @param url 网页链接,仅在type为WebPage时有效。 + * @param urlDesc 网页描述,仅在type为WebPage时有效。 + * @param type 分享类型,仅支持Text、Image、WebPage类型 + */ +- (void)SSDKSetupDouBanParamsByText:(NSString *)text + image:(id)image + title:(NSString *)title + url:(NSURL *)url + urlDesc:(NSString *)urlDesc + type:(SSDKContentType)type; + +/** + * 设置人人网分享参数 + * + * @param text 文本 + * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage,仅在type为Image时有效。 + * @param url 网页链接,仅在type为WebPage时有效。 + * @param albumId 相册ID,指定分享的图片要放入哪个相册,默认为nil,仅在type为Image时有效。 + * @param type 分享类型,仅支持Image、WebPage类型 + */ +- (void)SSDKSetupRenRenParamsByText:(NSString *)text + image:(id)image + url:(NSURL *)url + albumId:(NSString *)albumId + type:(SSDKContentType)type; + +/** + * 设置开心网分享参数 + * + * @param text 文本 + * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage,仅在type为Image时有效。 + * @param type 分享类型,仅支持Text、Image类型 + */ +- (void)SSDKSetupKaiXinParamsByText:(NSString *)text + image:(id)image + type:(SSDKContentType)type; + +/** + * 设置Pocket分享参数 + * + * @param url 分享链接 + * @param title 标题 + * @param tags 标签,可以为NSString或者NSArray。为NSString时,标签名称要以逗号分隔;为NSArray时,元素为NSString。 + * @param tweetId 关联的推文ID + */ +- (void)SSDKSetupPocketParamsByUrl:(NSURL *)url + title:(NSString *)title + tags:(id)tags + tweetId:(NSString *)tweetId; + +/** + * 设置GooglePlus分享参数 + * + * @param text 文本 + * @param url 分享链接,仅在type为WebPage时有效 + * @param type 分享类型,仅支持Text、WebPage类型 + */ +- (void)SSDKSetupGooglePlusParamsByText:(NSString *)text + url:(NSURL *)url + type:(SSDKContentType)type; + +/** + * 设置Instagram分享参数 + * + * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage,仅在type为Image时有效。 + * @param point 分享菜单的显示位置,仅用于iPad版 + */ +- (void)SSDKSetupInstagramByImage:(id)image + menuDisplayPoint:(CGPoint)point; + +/** + * 设置LinkedIn分享参数 + * + * @param text 分享文本 + * @param image 分享图片,只能够是网络图片,传入类型可以为NSString(图片路径), NSURL(图片路径)。 + * @param url 分享链接 + * @param title 标题 + * @param urlDesc 链接的相关描述 + * @param visibility 可见性,可以传入anyone或者connections-only,默认为anyone + * @param type 分享类型,仅支持Text和WebPage + */ +- (void)SSDKSetupLinkedInParamsByText:(NSString *)text + image:(id)image + url:(NSURL *)url + title:(NSString *)title + urlDesc:(NSString *)urlDesc + visibility:(NSString *)visibility + type:(SSDKContentType)type; + +/** + * 设置Tumblr分享参数 + * + * @param text 分享文本 + * @param image 分享图片,只能够是网络图片,传入类型可以为NSString(图片路径), NSURL(图片路径)。 + * @param url 分享链接 + * @param title 标题 + * @param blogName 博客名称,如果为nil,则默认分享到默认博客中。 + * @param type 分享类型,仅支持Text和Image + */ +- (void)SSDKSetupTumblrParamsByText:(NSString *)text + image:(id)image + url:(NSURL *)url + title:(NSString *)title + blogName:(NSString *)blogName + type:(SSDKContentType)type; + +/** + * 设置Flickr分享参数 + * + * @param text 图片描述 + * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。 + * @param title 图片标题 + * @param tags 图片标签列表 + * @param isPublic 指定是否公开图片,NO 私有 YES 公开。 + * @param isFriend 指定好友是否可以查看图片,NO 不允许,YES 允许 + * @param isFamily 指定家人是否可以查看图片,NO 不允许,YES 允许 + * @param safetyLevel 安全级别。1 安全 2 辅导级 3 限制级。 + * @param contentType 1 照片、2 屏幕截图、3 其他。 + * @param hidden 1 照片、2 屏幕截图、3 其他。 + */ +- (void)SSDKSetupFlickrParamsByText:(NSString *)text + image:(id)image + title:(NSString *)title + tags:(NSArray *)tags + isPublic:(BOOL)isPublic + isFriend:(BOOL)isFriend + isFamily:(BOOL)isFamily + safetyLevel:(NSInteger)safetyLevel + contentType:(NSInteger)contentType + hidden:(NSInteger)hidden; + +/** + * 设置WhatsApp分享参数 + * + * @param text 分享文本 + * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。 + * @param audio 分享音频, 可以为NSData、NSString、NSURL(文件路径)、SSDKData、注:只允许指定本地资源 + * @param video 分享视频, 可以为NSData、NSString、NSURL(文件路径)、SSDKData、注:只允许指定本地资源 + * @param point 分享菜单的显示位置,仅用于iPad版 + * @param type 分享类型,仅支持Text、Image、Audio、Video + */ +- (void)SSDKSetupWhatsAppParamsByText:(NSString *)text + image:(id)image + audio:(id)audio + video:(id)video + menuDisplayPoint:(CGPoint)point + type:(SSDKContentType)type; + +/** + * 设置有道云笔记分享参数 + * + * @param text 分享文本 + * @param images 分享图片列表,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage, + * + * @param title 标题 + * @param source 来源 + * @param author 作者 + * @param notebook 笔记本 + */ +- (void)SSDKSetupYouDaoNoteParamsByText:(NSString *)text + images:(id)images + title:(NSString *)title + source:(NSString *)source + author:(NSString *)author + notebook:(NSString *)notebook; + +/** + * 设置Line分享参数 + * + * @param text 分享文本 + * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。 + * @param type 分享类型,仅支持Text、Image + */ +- (void)SSDKSetupLineParamsByText:(NSString *)text + image:(id)image + type:(SSDKContentType)type; + +/** + * 设置印象笔记分享参数,注:中国版和国际版都是调用此接口进行分享参数设置。 + * + * @param text 分享文本 + * @param images 分享图片列表,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage,如: @"http://www.mob.com/images/logo_black.png" 或 @[@"http://www.mob.com/images/logo_black.png"] + * @param title 标题 + * @param notebook 笔记本GUID + * @param tags 标签GUID列表 + * @param platformType 分享平台类型,仅支持输入SSDKPlatformTypeYinXiang和SSDKPlatformTypeEvernote + */ +- (void)SSDKSetupEvernoteParamsByText:(NSString *)text + images:(id)images + title:(NSString *)title + notebook:(NSString *)notebook + tags:(NSArray *)tags + platformType:(SSDKPlatformType)platformType; + +/** + * 设置支付宝好友分享参数 + * + * @param text 分享文本 + * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。 + * @param title 标题 + * @param url 分享链接 + * @param type 分享类型,仅支持Text、Image、WebPage + */ +- (void)SSDKSetupAliPaySocialParamsByText:(NSString *)text + image:(id)image + title:(NSString *)title + url:(NSURL *)url + type:(SSDKContentType)type __deprecated_msg("use [SSDKSetupAliPaySocialParamsByText:image:title:url:type:platformType:] method instead"); + +/** + * 设置支付宝分享参数 + * + * @param text 分享文本 + * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。 + * @param title 标题 + * @param url 分享链接 + * @param type 分享类型,仅支持Text、Image、WebPage + * @param platformType 分享平台类型,仅支持输入SSDKPlatformTypeAliPaySocial和SSDKPlatformTypeAliPaySocialTimeline + * 分享类型,平台支持情况如下: + * SSDKPlatformTypeAliPaySocial(支付宝好友):支持Text、Image、WebPage + * SSDKPlatformTypeAliPaySocialTimeline(支付宝朋友圈):支持Image、WebPage + * + */ +- (void)SSDKSetupAliPaySocialParamsByText:(NSString *)text + image:(id)image + title:(NSString *)title + url:(NSURL *)url + type:(SSDKContentType)type + platformType:(SSDKPlatformType)platformType; + +/** + * 设置Pinterest分享参数 + * + * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。 + * @param desc 图片描述 + * @param url 链接地址 + * @param boardName Board名称 + */ +- (void)SSDKSetupPinterestParamsByImage:(id)image + desc:(NSString *)desc + url:(NSURL *)url + boardName:(NSString *)boardName; + +/** + * 设置KaKao分享参数 + * + * @param text 分享文本 + * @param images 分享图片列表,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage,如: @"http://www.mob.com/images/logo_black.png" 或 @[@"http://www.mob.com/images/logo_black.png"] + * @param title 分享链接标题,用于SSDKPlatformSubTypeKaKaoTalk分享 + * @param url 分享链接 + * @param permission 查看权限:F 表示好友可以查看,A 表示任何人可以查看,M 表示私有,默认为A + * @param enableShare 是否允许分享,当查看权限为好友查看时,该选项有效,可以设置内容是否允许再分享。 + * @PARAM imageSize 图片尺寸,,用于SSDKPlatformSubTypeKaKaoTalk分享时指定图片尺寸 + * @param appButtonTitle 应用按钮标题,用于SSDKPlatformSubTypeKaKaoTalk分享App类型时设置 + * @param androidExecParam 启动安卓版应用时传入参数,如果没有可以为nil,如:@{@"key" : @"value", @"key2" : @"value2"}。 + * @param andoridMarkParam 安卓版应用的下载地址,如果没有可以为nil + * @param iphoneExecParams 启动iPhone应用时传入参数,如果没有可以为nil,如:@{@"key" : @"value", @"key2" : @"value2"}。 + * @param iphoneMarkParam iPhone应用的下载地址,如果没有可以nil + * @param ipadExecParams iPad应用时传入参数,如果没有可以为nil,如:@{@"key" : @"value", @"key2" : @"value2"}。此参数仅用于Kakao Talk平台。 + * @param ipadMarkParam iPad应用的下载地址,如果没有可以为nil,此参数仅用于Kakao Talk平台。 + * @param type 分享类型,仅支持Text、Image、WebPage、App + * @param platformSubType 子平台类型,只能传入SSDKPlatformSubTypeKaKaoTalk或者SSDKPlatformSubTypeKaKaoStory + * + * 分享类型,平台支持情况如下: + * Kakao Talk Kakao Story + * + * Text 仅支持客户端分享 应用内分享和客户端分享 + * Image 仅支持网络图片的客户端分享 仅支持应用内分享 + * WebPage 仅支持客户端分享 仅支持应用内分享 + * App 仅支持客户端分享 不支持 + */ +- (void)SSDKSetupKaKaoParamsByText:(NSString *)text + images:(id)images + title:(NSString *)title + url:(NSURL *)url + permission:(NSString *)permission + enableShare:(BOOL)enableShare + imageSize:(CGSize)imageSize + appButtonTitle:(NSString *)appButtonTitle + androidExecParam:(NSDictionary *)androidExecParam + androidMarkParam:(NSString *)androidMarkParam + iphoneExecParams:(NSDictionary *)iphoneExecParams + iphoneMarkParam:(NSString *)iphoneMarkParam + ipadExecParams:(NSDictionary *)ipadExecParams + ipadMarkParam:(NSString *)ipadMarkParam + type:(SSDKContentType)type + forPlatformSubType:(SSDKPlatformType)platformSubType; + +/** + * 设置Dropbox分享参数 + * + * @param attachment 分享附件。附可以为NSData、UIImage、NSString、NSURL(文件路径)、SSDKData、SSDKImage,注:只允许指定本地资源 + */ +- (void)SSDKSetupDropboxParamsByAttachment:(id)attachment; + +/** + * 设置VKontakte分享参数 + * + * @param text 分享文本 + * @param images 分享图片列表,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。如: @"http://www.mob.com/images/logo_black.png" 或 @[@"http://www.mob.com/images/logo_black.png"] + * @param url 分享的链接 + * @param groupId 圈子标识,默认为nil,分享到share圈子 + * @param friendsOnly 是否为好友可见,默认为NO,表示所有人可以看到。 + * @param latitude 纬度 + * @param longitude 经度 + * @param type 分享类型,仅支持Text、Image、WebPage + */ +- (void)SSDKSetupVKontakteParamsByText:(NSString *)text + images:(id)images + url:(NSURL *)url + groupId:(NSString *)groupId + friendsOnly:(BOOL)friendsOnly + latitude:(double)latitude + longitude:(double)longitude + type:(SSDKContentType)type; + +/** + * 设置明道分享参数 + * + * @param text 分享文本 + * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。分享WebPage时需要指定为网络图片 + * @param url 分享链接,仅在WebPage时有效。 + * @param title 标题,仅在WebPage时有效 + * @param type 分享类型,仅支持Text、Image、WebPage + */ +- (void)SSDKSetupMingDaoParamsByText:(NSString *)text + image:(id)image + url:(NSURL *)url + title:(NSString *)title + type:(SSDKContentType)type; + +/** + * 设置Instapaper分享参数 + * + * @param url 分享链接,如果isPrivateFromSource为YES并且content不为空时将忽略此参数 + * @param title 分享标题 + * @param desc 分享的链接描述 + * @param content 内容 + * @param isPrivateFromSource 是否为私有源 + * @param folderId 文件夹ID + * @param resolveFinalUrl 解决最终URL问题标识,默认开启,用于解决跳转页面问题,设置为NO则表示不进行跳转 + */ +- (void)SSDKSetupInstapaperParamsByUrl:(NSURL *)url + title:(NSString *)title + desc:(NSString *)desc + content:(NSString *)content + isPrivateFromSource:(BOOL)isPrivateFromSource + folderId:(NSInteger)folderId + resolveFinalUrl:(BOOL)resolveFinalUrl; + +/** + * 设置微信分享参数 + * + * @param text 文本 + * @param title 标题 + * @param url 分享链接 + * @param thumbImage 缩略图,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage + * @param image 图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage + * @param musicFileURL 音乐文件链接地址 + * @param extInfo 扩展信息 + * @param fileData 文件数据,可以为NSData、UIImage、NSString、NSURL(文件路径)、SSDKData、SSDKImage + * @param comment 评论信息,在应用内分享朋友圈时该字段有效 + * @param userId 发送給指定用户的唯一标识,在应用内分享好友时需要指定。注:如果双方为非好友关系发送消息即使提示成功,对方也无法接受。 + * @param type 分享类型,支持SSDKContentTypeText、SSDKContentTypeImage、SSDKContentTypeWebPage、SSDKContentTypeApp、SSDKContentTypeAudio和SSDKContentTypeVideo + * @param platformType 平台子类型,只能传入SSDKPlatformTypeYiXinSession、SSDKPlatformTypeYiXinTimeline和SSDKPlatformTypeYiXinFav其中一个 + * + * 分享文本时: + * 设置type为SSDKContentTypeText, 并填入text参数 + * + * 分享图片时: + * 设置type为SSDKContentTypeImage, 非gif图片时:填入title和image参数 + * + * 分享网页时: + * 设置type为SSDKContentTypeWebPage, 并设置text、title、url以及thumbImage参数,如果尚未设置thumbImage则会从image参数中读取图片并对图片进行缩放操作。 + * + * 分享应用时: + * 设置type为SSDKContentTypeApp,并设置text、title、extInfo(可选)以及fileData(可选)参数。 + * + * 分享音乐时: + * 设置type为SSDKContentTypeAudio,并设置text、title、url以及musicFileURL(可选)参数。 + * + * 分享视频时: + * 设置type为SSDKContentTypeVideo,并设置text、title、url参数 + */ +- (void)SSDKSetupYiXinParamsByText:(NSString *)text + title:(NSString *)title + url:(NSURL *)url + thumbImage:(id)thumbImage + image:(id)image + musicFileURL:(NSURL *)musicFileURL + extInfo:(NSString *)extInfo + fileData:(id)fileData + comment:(NSString *)comment + toUserId:(NSString *)userId + type:(SSDKContentType)type + forPlatformSubType:(SSDKPlatformType)platformSubType; + +/** + * 设置Facebook Messenger分享参数 + * + * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。 + * @param image 分享gif图,可以为NSData、NSString、NSURL(文件路径)、SSDKData。 + * @param audio 分享音频, 可以为NSData、NSString、NSURL(文件路径)、SSDKData。 + * @param video 分享视频, 可以为NSData、NSString、NSURL(文件路径)、SSDKData。 + * @param type 分享类型,仅支持Image、Audio、Video + */ +- (void)SSDKSetupFacebookMessengerParamsByImage:(id)image + gif:(id)gif + audio:(id)audio + video:(id)video + type:(SSDKContentType)type; + +@end diff --git a/ShareSDK.framework/Headers/SSDKAuthViewStyle.h b/ShareSDK.framework/Headers/SSDKAuthViewStyle.h new file mode 100644 index 0000000..6fe6fa5 --- /dev/null +++ b/ShareSDK.framework/Headers/SSDKAuthViewStyle.h @@ -0,0 +1,98 @@ +// +// SSDKAuthViewStyle.h +// ShareSDK +// +// Created by fenghj on 15/4/13. +// Copyright (c) 2015年 掌淘科技. All rights reserved. +// + +#import + +/** + * 授权视图样式 + */ +@interface SSDKAuthViewStyle : NSObject + +/** + * 设置导航栏背景 + * + * @param image 背景图片 + */ ++ (void)setNavigationBarBackgroundImage:(UIImage *)image; + +/** + * 设置导航栏颜色 + * + * @param color 背景颜色 + */ ++ (void)setNavigationBarBackgroundColor:(UIColor *)color; + +/** + * 设置标题 + * + * @param title 标题 + */ ++ (void)setTitle:(NSString *)title; + +/** + * 设置标题文本颜色 + * + * @param color 颜色 + */ ++ (void)setTitleColor:(UIColor *)color; + +/** + * 设置取消按钮标签 + * + * @param label 取消按钮标签 + */ ++ (void)setCancelButtonLabel:(NSString *)label; + +/** + * 设置取消按钮标签文本颜色 + * + * @param color 颜色 + */ ++ (void)setCancelButtonLabelColor:(UIColor *)color; + +/** + * 设置取消按钮图片 + * + * @param image 图片 + */ ++ (void)setCancelButtonImage:(UIImage *)image; + +/** + * 设置取消按钮的左边距 + * + * @param margin 边距 + */ ++ (void)setCancelButtonLeftMargin:(CGFloat)margin; + +/** + * 设置导航栏右边按钮 + * + * @param label 右边按钮 + */ ++ (void)setRightButton:(UIButton *)button; + +/** + * 设置导航栏右边按钮的右边距 + * + * @param margin 边距 + */ ++ (void)setRightButtonRightMargin:(CGFloat)margin; + +/** + * 设置支持的页面方向 + */ ++ (void)setSupportedInterfaceOrientation:(UIInterfaceOrientationMask)toInterfaceOrientation; + +/** + * 设置状态栏样式 + * + * @param style 样式 + */ ++ (void)setStatusBarStyle:(UIStatusBarStyle)style; + +@end diff --git a/ShareSDK.framework/Headers/SSDKContentEntity.h b/ShareSDK.framework/Headers/SSDKContentEntity.h new file mode 100644 index 0000000..078f099 --- /dev/null +++ b/ShareSDK.framework/Headers/SSDKContentEntity.h @@ -0,0 +1,41 @@ +// +// SSDKContentEntity.h +// ShareSDK +// +// Created by 冯 鸿杰 on 15/2/9. +// Copyright (c) 2015年 掌淘科技. All rights reserved. +// + +#import + +/** + * 内容实体 + */ +@interface SSDKContentEntity : NSObject + +/** + * 内容标识 + */ +@property (nonatomic, copy) NSString *cid; + +/** + * 分享文本 + */ +@property (nonatomic, copy) NSString *text; + +/** + * 分享图片列表,元素为SSDKImage + */ +@property (nonatomic, retain) NSArray *images; + +/** + * 分享链接列表,元素为NSURL + */ +@property (nonatomic, retain) NSArray *urls; + +/** + * 原始数据 + */ +@property (nonatomic, retain) id rawData; + +@end diff --git a/ShareSDK.framework/Headers/SSDKCredential.h b/ShareSDK.framework/Headers/SSDKCredential.h new file mode 100644 index 0000000..6831a34 --- /dev/null +++ b/ShareSDK.framework/Headers/SSDKCredential.h @@ -0,0 +1,69 @@ +// +// SSDKAuthorizeCredential.h +// ShareSDK +// +// Created by 冯 鸿杰 on 15/2/6. +// Copyright (c) 2015年 掌淘科技. All rights reserved. +// + +#import + +/** + * 授权类型 + */ +typedef NS_ENUM(NSUInteger, SSDKCredentialType){ + /** + * 未知 + */ + SSDKCredentialTypeUnknown = 0, + /** + * OAuth 1.x + */ + SSDKCredentialTypeOAuth1x = 1, + /** + * OAuth 2 + */ + SSDKCredentialTypeOAuth2 = 2, +}; + +/** + * 授权凭证 + */ +@interface SSDKCredential : NSObject + +/** + * 用户标识 + */ +@property (nonatomic, copy) NSString *uid; + +/** + * 用户令牌 + */ +@property (nonatomic, copy) NSString *token; + +/** + * 用户令牌密钥 + */ +@property (nonatomic, copy) NSString *secret; + +/** + * 过期时间 + */ +@property (nonatomic, strong) NSDate *expired; + +/** + * 授权类型 + */ +@property (nonatomic) SSDKCredentialType type; + +/** + * 原始数据 + */ +@property (nonatomic, strong) NSDictionary *rawData; + +/** + * 标识授权是否可用,YES 可用, NO 已过期 + */ +@property (nonatomic, readonly) BOOL available; + +@end diff --git a/ShareSDK.framework/Headers/SSDKData.h b/ShareSDK.framework/Headers/SSDKData.h new file mode 100644 index 0000000..f2959ee --- /dev/null +++ b/ShareSDK.framework/Headers/SSDKData.h @@ -0,0 +1,34 @@ +// +// SSDKData.h +// ShareSDK +// +// Created by fenghj on 15/6/5. +// Copyright (c) 2015年 掌淘科技. All rights reserved. +// + +#import + +/** + * 数据 + */ +@interface SSDKData : NSObject + +/** + * 初始化数据 + * + * @param URL 数据的地址 + * + * @return 数据对象 + */ +- (id)initWithURL:(NSURL *)URL; + +/** + * 初始化数据 + * + * @param data 原始数据对象 + * + * @return 数据对象 + */ +- (id)initWithData:(NSData *)data; + +@end diff --git a/ShareSDK.framework/Headers/SSDKImage.h b/ShareSDK.framework/Headers/SSDKImage.h new file mode 100644 index 0000000..93396e7 --- /dev/null +++ b/ShareSDK.framework/Headers/SSDKImage.h @@ -0,0 +1,79 @@ +// +// SSDKImage.h +// ShareSDK +// +// Created by 冯 鸿杰 on 15/2/25. +// Copyright (c) 2015年 掌淘科技. All rights reserved. +// + +#import +#import + +/** + * JPG图片格式 + */ +extern NSString *const SSDKImageFormatJpeg; + +/** + * PNG图片格式 + */ +extern NSString *const SSDKImageFormatPng; + +/** + * 图片质量键,当图片为JPG时有效 + */ +extern NSString *const SSDKImageSettingQualityKey; + +/** + * 图片 + */ +@interface SSDKImage : NSObject + +/** + * 初始化图片 + * + * @param URL 图片路径 + * + * @return 图片对象 + */ +- (id)initWithURL:(NSURL *)URL; + +/** + * 初始化图片 + * + * @param image 原始的图片对象 + * @param format 图片格式,由SSDKImageFormatJpeg和SSDKImageFormatPng来指定分享出去的是JPG还是PNG图片,如果传入其他值则默认为JPG + * + * @return 图片对象 + */ +- (id)initWithImage:(UIImage *)image format:(NSString *)format settings:(NSDictionary *)settings; + +/** + * 获取原生图片对象 + * + * @param handler 处理器 + */ +- (void)getNativeImage:(void(^)(UIImage *image))handler; + +/** + * 获取图片数据 + * + * @param imagePath 图片路径 + * @param thumbImagePath 缩略图路径 + * @param handler 返回回调 + */ ++ (void)getImage:(NSString *)imagePath + thumbImagePath:(NSString *)thumbImagePath + result:(void(^)(NSData *thumbImage, NSData *image))handler; + +/** + * 检测缩略图,由于微信限制缩略图不能大于32k,此方法就是用于检测图片大小使用的方法。 + * + * @param thumbImageData 缩略图数据 + * + * @return 调整后缩略图数据 + */ ++ (NSData *)checkThumbImageSize:(NSData *)thumbImageData; + + +@end diff --git a/ShareSDK.framework/Headers/SSDKPlatform.h b/ShareSDK.framework/Headers/SSDKPlatform.h new file mode 100644 index 0000000..490f273 --- /dev/null +++ b/ShareSDK.framework/Headers/SSDKPlatform.h @@ -0,0 +1,32 @@ +// +// SSDKPlatform.h +// ShareSDK +// +// Created by 冯 鸿杰 on 15/2/6. +// Copyright (c) 2015年 掌淘科技. All rights reserved. +// + +#import +#import "SSDKTypeDefine.h" + +/** + * 分享平台信息 + */ +@interface SSDKPlatform : NSObject + +/** + * 平台类型 + */ +@property (nonatomic) SSDKPlatformType type; + +/** + * 平台名称 + */ +@property (nonatomic, copy) NSString *name; + +/** + * 平台图标 + */ +@property (nonatomic, retain) UIImage *icon; + +@end diff --git a/ShareSDK.framework/Headers/SSDKTypeDefine.h b/ShareSDK.framework/Headers/SSDKTypeDefine.h new file mode 100644 index 0000000..9a933ad --- /dev/null +++ b/ShareSDK.framework/Headers/SSDKTypeDefine.h @@ -0,0 +1,418 @@ +// +// SSDKTypeDefine.h +// ShareSDK +// +// Created by 冯 鸿杰 on 15/2/6. +// Copyright (c) 2015年 掌淘科技. All rights reserved. +// + +#ifndef ShareSDK_SSDKTypeDefine_h +#define ShareSDK_SSDKTypeDefine_h + +@protocol ISSDKAuthView; + +@class SSDKUser; +@class SSDKFriendsPaging; +@class SSDKContentEntity; +@class UIView; +@class SSDKAddFriendView; + +/** + * 结合SSO和Web授权方式 + */ +extern NSString *const SSDKAuthTypeBoth; +/** + * SSO授权方式 + */ +extern NSString *const SSDKAuthTypeSSO; +/** + * 网页授权方式 + */ +extern NSString *const SSDKAuthTypeWeb; + +/** + * HTTP的GET请求方式 + */ +extern NSString *const SSDKHttpMethodGet; +/** + * HTTP的POST请求方式 + */ +extern NSString *const SSDKHttpMethodPost; +/** + * HTTP的DELETE请求方式 + */ +extern NSString *const SSDKHttpMethodDelete; +/** + * HTTP的PUT请求方式 + */ +extern NSString *const SSDKHttpMethodPut; +/** + * HTTP的HEAD请求方式 + */ +extern NSString *const SSDKHttpMethodHead; + +/** + * 授权设置键名, 其对应键值为NSArray,数组中元素为NSString,如:@{SSDKAuthSettingKeyScopes : @[@"all", @"mail"]} + */ +extern NSString *const SSDKAuthSettingKeyScopes; + +/** + * 平台类型 + */ +typedef NS_ENUM(NSUInteger, SSDKPlatformType){ + /** + * 未知 + */ + SSDKPlatformTypeUnknown = 0, + /** + * 新浪微博 + */ + SSDKPlatformTypeSinaWeibo = 1, + /** + * 腾讯微博 + */ + SSDKPlatformTypeTencentWeibo = 2, + /** + * 豆瓣 + */ + SSDKPlatformTypeDouBan = 5, + /** + * QQ空间 + */ + SSDKPlatformSubTypeQZone = 6, + /** + * 人人网 + */ + SSDKPlatformTypeRenren = 7, + /** + * 开心网 + */ + SSDKPlatformTypeKaixin = 8, + /** + * Facebook + */ + SSDKPlatformTypeFacebook = 10, + /** + * Twitter + */ + SSDKPlatformTypeTwitter = 11, + /** + * 印象笔记 + */ + SSDKPlatformTypeYinXiang = 12, + /** + * Google+ + */ + SSDKPlatformTypeGooglePlus = 14, + /** + * Instagram + */ + SSDKPlatformTypeInstagram = 15, + /** + * LinkedIn + */ + SSDKPlatformTypeLinkedIn = 16, + /** + * Tumblr + */ + SSDKPlatformTypeTumblr = 17, + /** + * 邮件 + */ + SSDKPlatformTypeMail = 18, + /** + * 短信 + */ + SSDKPlatformTypeSMS = 19, + /** + * 打印 + */ + SSDKPlatformTypePrint = 20, + /** + * 拷贝 + */ + SSDKPlatformTypeCopy = 21, + /** + * 微信好友 + */ + SSDKPlatformSubTypeWechatSession = 22, + /** + * 微信朋友圈 + */ + SSDKPlatformSubTypeWechatTimeline = 23, + /** + * QQ好友 + */ + SSDKPlatformSubTypeQQFriend = 24, + /** + * Instapaper + */ + SSDKPlatformTypeInstapaper = 25, + /** + * Pocket + */ + SSDKPlatformTypePocket = 26, + /** + * 有道云笔记 + */ + SSDKPlatformTypeYouDaoNote = 27, + /** + * Pinterest + */ + SSDKPlatformTypePinterest = 30, + /** + * Flickr + */ + SSDKPlatformTypeFlickr = 34, + /** + * Dropbox + */ + SSDKPlatformTypeDropbox = 35, + /** + * VKontakte + */ + SSDKPlatformTypeVKontakte = 36, + /** + * 微信收藏 + */ + SSDKPlatformSubTypeWechatFav = 37, + /** + * 易信好友 + */ + SSDKPlatformSubTypeYiXinSession = 38, + /** + * 易信朋友圈 + */ + SSDKPlatformSubTypeYiXinTimeline = 39, + /** + * 易信收藏 + */ + SSDKPlatformSubTypeYiXinFav = 40, + /** + * 明道 + */ + SSDKPlatformTypeMingDao = 41, + /** + * Line + */ + SSDKPlatformTypeLine = 42, + /** + * WhatsApp + */ + SSDKPlatformTypeWhatsApp = 43, + /** + * KaKao Talk + */ + SSDKPlatformSubTypeKakaoTalk = 44, + /** + * KaKao Story + */ + SSDKPlatformSubTypeKakaoStory = 45, + /** + * Facebook Messenger + */ + SSDKPlatformTypeFacebookMessenger = 46, + /** + * 支付宝好友 + */ + SSDKPlatformTypeAliPaySocial = 50, + /** + * 支付宝朋友圈 + */ + SSDKPlatformTypeAliPaySocialTimeline= 51, + /** + * 钉钉 + */ +// SSDKPlatformTypeDingTalk = 52, + /** + * 易信 + */ + SSDKPlatformTypeYiXin = 994, + /** + * KaKao + */ + SSDKPlatformTypeKakao = 995, + /** + * 印象笔记国际版 + */ + SSDKPlatformTypeEvernote = 996, + /** + * 微信平台, + */ + SSDKPlatformTypeWechat = 997, + /** + * QQ平台 + */ + SSDKPlatformTypeQQ = 998, + /** + * 任意平台 + */ + SSDKPlatformTypeAny = 999 +}; + +/** + * 印象笔记服务器类型 + */ +typedef NS_ENUM(NSUInteger, SSDKEvernoteHostType){ + /** + * 沙箱 + */ + SSDKEvernoteHostTypeSandbox = 0, + /** + * 印象笔记 + */ + SSDKEvernoteHostTypeCN = 1, + /** + * Evernote International + */ + SSDKEvernoteHostTypeUS = 2, +}; + +/** + * 回复状态 + */ +typedef NS_ENUM(NSUInteger, SSDKResponseState){ + + /** + * 开始 + */ + SSDKResponseStateBegin = 0, + + /** + * 成功 + */ + SSDKResponseStateSuccess = 1, + + /** + * 失败 + */ + SSDKResponseStateFail = 2, + + /** + * 取消 + */ + SSDKResponseStateCancel = 3 +}; + +/** + * 内容类型 + */ +typedef NS_ENUM(NSUInteger, SSDKContentType){ + + /** + * 自动适配类型,视传入的参数来决定 + */ + SSDKContentTypeAuto = 0, + + /** + * 文本 + */ + SSDKContentTypeText = 1, + + /** + * 图片 + */ + SSDKContentTypeImage = 2, + + /** + * 网页 + */ + SSDKContentTypeWebPage = 3, + + /** + * 应用 + */ + SSDKContentTypeApp = 4, + + /** + * 音频 + */ + SSDKContentTypeAudio = 5, + + /** + * 视频 + */ + SSDKContentTypeVideo = 6, + + /** + * 文件类型(暂时仅微信可用) + */ + SSDKContentTypeFile = 7 + +}; + +/** + * 配置分享平台回调处理器 + * + * @param platformType 需要初始化的分享平台类型 + * @param appInfo 需要初始化的分享平台应用信息 + */ +typedef void(^SSDKConfigurationHandler) (SSDKPlatformType platformType, NSMutableDictionary *appInfo); + +/** + * 导入原平台SDK回调处理器 + * + * @param platformType 需要导入原平台SDK的平台类型 + */ +typedef void(^SSDKImportHandler) (SSDKPlatformType platformType); + +/** + * 授权视图显示回调处理器 + * + * @param view 授权视图 + */ +typedef void(^SSDKAuthorizeViewDisplayHandler) (UIView *view); + +/** + * 添加好友视图显示回调处理器,仅用于Facebook添加好友时触发 + * + * @param view 添加好友视图 + */ +typedef void(^SSDKAddFriendViewDisplayHandler) (SSDKAddFriendView *view); + +/** + * 授权状态变化回调处理器 + * + * @param state 状态 + * @param user 授权用户信息,当且仅当state为SSDKResponseStateSuccess时返回 + * @param error 错误信息,当且仅当state为SSDKResponseStateFail时返回 + */ +typedef void(^SSDKAuthorizeStateChangedHandler) (SSDKResponseState state, SSDKUser *user, NSError *error); + +/** + * 获取用户状态变更回调处理器 + * + * @param state 状态 + * @param user 用户信息,当且仅当state为SSDKResponseStateSuccess时返回 + * @param error 错误信息,当且仅当state为SSDKResponseStateFail时返回 + */ +typedef void(^SSDKGetUserStateChangedHandler) (SSDKResponseState state, SSDKUser *user, NSError *error); + + +/** + * 分享内容状态变更回调处理器 + * + * @param state 状态 + * @param userData 附加数据, 返回状态以外的一些数据描述,如:邮件分享取消时,标识是否保存草稿等 + * @param contentEntity 分享内容实体,当且仅当state为SSDKResponseStateSuccess时返回 + * @param error 错误信息,当且仅当state为SSDKResponseStateFail时返回 + */ +typedef void(^SSDKShareStateChangedHandler) (SSDKResponseState state, NSDictionary *userData, SSDKContentEntity *contentEntity, NSError *error); + +/** + * 调用API状态变更回调处理器 + * + * @param state 状态 + * @param data 返回数据 + * @param error 错误信息 + */ +typedef void(^SSDKCallApiStateChangedHandler)(SSDKResponseState state, id data, NSError *error); + +/** + * 需要授权回调处理器 + * + * @param authorizeStateChangedHandler 授权状态回调 + */ +typedef void(^SSDKNeedAuthorizeHandler)(SSDKAuthorizeStateChangedHandler authorizeStateChangedHandler); + +#endif diff --git a/ShareSDK.framework/Headers/SSDKUser.h b/ShareSDK.framework/Headers/SSDKUser.h new file mode 100644 index 0000000..bb2becc --- /dev/null +++ b/ShareSDK.framework/Headers/SSDKUser.h @@ -0,0 +1,132 @@ +// +// SSDKUser.h +// ShareSDK +// +// Created by 冯 鸿杰 on 15/2/6. +// Copyright (c) 2015年 掌淘科技. All rights reserved. +// + +#import +#import "SSDKTypeDefine.h" + +@class SSDKCredential; + +/** + * 性别 + */ +typedef NS_ENUM(NSUInteger, SSDKGender){ + /** + * 男 + */ + SSDKGenderMale = 0, + /** + * 女 + */ + SSDKGenderFemale = 1, + /** + * 未知 + */ + SSDKGenderUnknown = 2, +}; + +/** + * 用户信息 + */ +@interface SSDKUser : NSObject + +/** + * 平台类型 + */ +@property (nonatomic) SSDKPlatformType platformType; + +/** + * 授权凭证, 为nil则表示尚未授权 + */ +@property (nonatomic, retain) SSDKCredential *credential; + +/** + * 用户标识 + */ +@property (nonatomic, copy) NSString *uid; + +/** + * 昵称 + */ +@property (nonatomic, copy) NSString *nickname; + +/** + * 头像 + */ +@property (nonatomic, copy) NSString *icon; + +/** + * 性别 + */ +@property (nonatomic) SSDKGender gender; + +/** + * 用户主页 + */ +@property (nonatomic, copy) NSString *url; + +/** + * 用户简介 + */ +@property (nonatomic, copy) NSString *aboutMe; + +/** + * 认证用户类型 + */ +@property (nonatomic) NSInteger verifyType; + +/** + * 认证描述 + */ +@property (nonatomic, copy) NSString *verifyReason; + +/** + * 生日 + */ +@property (nonatomic, strong) NSDate *birthday; + +/** + * 粉丝数 + */ +@property (nonatomic) NSInteger followerCount; + +/** + * 好友数 + */ +@property (nonatomic) NSInteger friendCount; + +/** + * 分享数 + */ +@property (nonatomic) NSInteger shareCount; + +/** + * 注册时间 + */ +@property (nonatomic) NSTimeInterval regAt; + +/** + * 用户等级 + */ +@property (nonatomic) NSInteger level; + +/** + * 教育信息 + */ +@property (nonatomic, retain) NSArray *educations; + +/** + * 职业信息 + */ +@property (nonatomic, retain) NSArray *works; + +/** + * 原始数据 + */ +@property (nonatomic, retain) NSDictionary *rawData; + +@end diff --git a/ShareSDK.framework/Headers/SSDKUserQueryConditional.h b/ShareSDK.framework/Headers/SSDKUserQueryConditional.h new file mode 100644 index 0000000..5e91949 --- /dev/null +++ b/ShareSDK.framework/Headers/SSDKUserQueryConditional.h @@ -0,0 +1,43 @@ +// +// SSDKUserQuery.h +// ShareSDK +// +// Created by 冯 鸿杰 on 15/2/6. +// Copyright (c) 2015年 掌淘科技. All rights reserved. +// + +#import + +/** + * 用户查询条件 + */ +@interface SSDKUserQueryConditional : NSObject + +/** + * 创建用户标识查询条件 + * + * @param uid 用户标识 + * + * @return 查询条件对象 + */ ++ (SSDKUserQueryConditional *)userQueryConditionalByUserId:(NSString *)uid; + +/** + * 创建用户名称查询条件 + * + * @param userName 用户名称 + * + * @return 查询条件对象 + */ ++ (SSDKUserQueryConditional *)userQueryConditionalByUserName:(NSString *)userName; + +/** + * 创建用户路径查询条件 + * + * @param path 用户主页路径 + * + * @return 查询条件对象 + */ ++ (SSDKUserQueryConditional *)userQueryConditionalByPath:(NSString *)path; + +@end diff --git a/ShareSDK.framework/Headers/ShareSDK+Base.h b/ShareSDK.framework/Headers/ShareSDK+Base.h new file mode 100644 index 0000000..bbb8dca --- /dev/null +++ b/ShareSDK.framework/Headers/ShareSDK+Base.h @@ -0,0 +1,97 @@ +// +// ShareSDK+Base.h +// ShareSDK +// +// Created by 冯 鸿杰 on 15/2/6. +// Copyright (c) 2015年 掌淘科技. All rights reserved. +// + +#import +#import "ISSDKAuthView.h" + +/** + * ShareSDK基础APIs + */ +@interface ShareSDK (Base) + +/** + * 获取SDK版本 + * + * @return 版本号 + */ ++ (NSString *)sdkVer; + +/** + * 获取激活的平台列表 + * + * @return 平台列表 + */ ++ (NSArray *)activePlatforms; + +/** + * 检测平台是否支持授权 + * + * @param platformType 平台类型 + * + * @return YES 支持,NO 不支持 + */ ++ (BOOL)isSupportAuth:(SSDKPlatformType)platformType; + +/** + * 获取当前授权用户 + * + * @param platformType 平台类型 + * + * @return 用户信息 + */ ++ (SSDKUser *)currentUser:(SSDKPlatformType)platformType; + +/** + * 设置当前授权用户 + * + * @param user 用户信息 + * @param platformType 平台类型 + */ ++ (void)setCurrentUser:(SSDKUser *)user forPlatformType:(SSDKPlatformType)platformType; + +/** + * 分享平台授权 + * + * @param platformType 平台类型 + * @param settings 授权设置 + * @param viewDisplayHandler 授权视图显示回调处理,当授权时需要在应用中显示授权时触发此回调(即SSO授权此回调不触发) + * @param stateChangeHandler 授权状态变更回调处理 + */ ++ (void)authorize:(SSDKPlatformType)platformType + settings:(NSDictionary *)settings + onViewDisplay:(SSDKAuthorizeViewDisplayHandler)viewDisplayHandler + onStateChanged:(SSDKAuthorizeStateChangedHandler)stateChangedHandler; + +/** + * 获取授权用户信息 + * + * @param platformType 平台类型 + * @param conditional 查询条件 + * @param authorizeHandler 授权处理器 + * @param stateChangeHandler 状态变更回调处理 + */ ++ (void)getUserInfo:(SSDKPlatformType)platformType + conditional:(SSDKUserQueryConditional *)conditional + onAuthorize:(SSDKNeedAuthorizeHandler)authorizeHandler + onStateChanged:(SSDKGetUserStateChangedHandler)stateChangedHandler; + +/** + * 分享内容 + * + * @param platformType 平台类型 + * @param parameters 分享参数 + * @param authorizeHandler 授权处理器 + * @param stateChangedHandler 状态变更回调处理 + */ ++ (void)share:(SSDKPlatformType)platformType + parameters:(NSMutableDictionary *)parameters + onAuthorize:(SSDKNeedAuthorizeHandler)authorizeHandler +onStateChanged:(SSDKShareStateChangedHandler)stateChangedHandler; + + +@end diff --git a/ShareSDK.framework/Headers/ShareSDK.h b/ShareSDK.framework/Headers/ShareSDK.h new file mode 100644 index 0000000..2f76886 --- /dev/null +++ b/ShareSDK.framework/Headers/ShareSDK.h @@ -0,0 +1,103 @@ +// +// ShareSDK.h +// ShareSDK +// +// Created by 冯 鸿杰 on 15/2/5. +// Copyright (c) 2015年 掌淘科技. All rights reserved. +// + +#import +#import "NSMutableDictionary+SSDKInit.h" +#import "NSMutableDictionary+SSDKShare.h" +#import "SSDKTypeDefine.h" +#import "SSDKUserQueryConditional.h" +#import "SSDKContentEntity.h" +#import "SSDKUser.h" +#import "SSDKCredential.h" +#import "SSDKAuthViewStyle.h" + +/** + * ShareSDK APIs + */ +@interface ShareSDK : NSObject + +#pragma mark - 初始化 + +/** + * 初始化ShareSDK应用 + * + * @param appKey ShareSDK应用标识,可在http://mob.com中登录并创建App后获得。 + * @param activePlatforms 使用的分享平台集合,如:@[@(SSDKPlatformTypeSinaWeibo), @(SSDKPlatformTypeTencentWeibo)]; + * @param connectHandler 导入回调处理,当某个平台的功能需要依赖原平台提供的SDK支持时,需要在此方法中对原平台SDK进行导入操作。具体的导入方式可以参考ShareSDKConnector.framework中所提供的方法。 + * @param configurationHandler 配置回调处理,在此方法中根据设置的platformType来填充应用配置信息 + */ ++ (void)registerApp:(NSString *)appKey + activePlatforms:(NSArray *)activePlatforms + onImport:(SSDKImportHandler)importHandler + onConfiguration:(SSDKConfigurationHandler)configurationHandler; + +#pragma mark - 授权 + +/** + * 分享平台授权 + * + * @param platformType 平台类型 + * @param @param settings 授权设置,目前只接受SSDKAuthSettingKeyScopes属性设置,如新浪微博关注官方微博:@{SSDKAuthSettingKeyScopes : @[@"follow_app_official_microblog"]},类似“follow_app_official_microblog”这些字段是各个社交平台提供的。 + * @param stateChangeHandler 授权状态变更回调处理 + */ ++ (void)authorize:(SSDKPlatformType)platformType + settings:(NSDictionary *)settings + onStateChanged:(SSDKAuthorizeStateChangedHandler)stateChangedHandler; + +/** + * 判断分享平台是否授权 + * + * @param platformType 平台类型 + * @return YES 表示已授权,NO 表示尚未授权 + */ ++ (BOOL)hasAuthorized:(SSDKPlatformType)platformTypem; + +/** + * 取消分享平台授权 + * + * @param platformType 平台类型 + */ ++ (void)cancelAuthorize:(SSDKPlatformType)platformType; + +#pragma mark - 用户 + +/** + * 获取授权用户信息 + * + * @param platformType 平台类型 + * @param stateChangeHandler 状态变更回调处理 + */ ++ (void)getUserInfo:(SSDKPlatformType)platformType + onStateChanged:(SSDKGetUserStateChangedHandler)stateChangedHandler; + +/** + * 获取用户信息 + * + * @param platformType 平台类型 + * @param conditional 查询条件,如果为nil则获取当前授权用户信息 + * @param stateChangeHandler 状态变更回调处理 + */ ++ (void)getUserInfo:(SSDKPlatformType)platformType + conditional:(SSDKUserQueryConditional *)conditional + onStateChanged:(SSDKGetUserStateChangedHandler)stateChangedHandler; + +#pragma mark - 分享 + +/** + * 分享内容 + * + * @param platformType 平台类型 + * @param parameters 分享参数 + * @param stateChangeHandler 状态变更回调处理 + */ ++ (void)share:(SSDKPlatformType)platformType + parameters:(NSMutableDictionary *)parameters +onStateChanged:(SSDKShareStateChangedHandler)stateChangedHandler; + + +@end diff --git a/ShareSDK.framework/Info.plist b/ShareSDK.framework/Info.plist new file mode 100644 index 0000000..c6e17e8 Binary files /dev/null and b/ShareSDK.framework/Info.plist differ diff --git a/ShareSDK.framework/ShareSDK b/ShareSDK.framework/ShareSDK new file mode 100644 index 0000000..e3a8506 Binary files /dev/null and b/ShareSDK.framework/ShareSDK differ diff --git a/Support/PlatformConnector/QQConnector.framework/Headers/QQConnector.h b/Support/PlatformConnector/QQConnector.framework/Headers/QQConnector.h new file mode 100644 index 0000000..72727c4 --- /dev/null +++ b/Support/PlatformConnector/QQConnector.framework/Headers/QQConnector.h @@ -0,0 +1,24 @@ +// +// QQConnector.h +// ShareSDKConnector +// +// Created by 冯鸿杰 on 16/9/28. +// Copyright © 2016年 mob. All rights reserved. +// + +#import + +/** + * QQ连接器 + */ +@interface QQConnector : NSObject + +/** + * 连接QQAPI以供ShareSDK可以正常使用QQ或者QQ空间客户端来授权或者分享内容。 + * + * @param qqApiInterfaceClass QQSDK中的类型,应先导入TencentOpenAPI.framework,再传入[QQApiInterface class]到此参数。 + * @param tencentOAuthClass QQSDK中的类型,应先导入TencentOpenAPI.framework,再传入[TencentOAuth class]到此参数。 + */ ++ (void)connect:(Class)qqApiInterfaceClass tencentOAuthClass:(Class)tencentOAuthClass; + +@end diff --git a/Support/PlatformConnector/QQConnector.framework/Info.plist b/Support/PlatformConnector/QQConnector.framework/Info.plist new file mode 100644 index 0000000..043a2e9 Binary files /dev/null and b/Support/PlatformConnector/QQConnector.framework/Info.plist differ diff --git a/Support/PlatformConnector/QQConnector.framework/QQConnector b/Support/PlatformConnector/QQConnector.framework/QQConnector new file mode 100644 index 0000000..a975807 Binary files /dev/null and b/Support/PlatformConnector/QQConnector.framework/QQConnector differ diff --git a/Support/PlatformConnector/SinaWeiboConnector.framework/Headers/SinaWeiboConnector.h b/Support/PlatformConnector/SinaWeiboConnector.framework/Headers/SinaWeiboConnector.h new file mode 100644 index 0000000..84c1384 --- /dev/null +++ b/Support/PlatformConnector/SinaWeiboConnector.framework/Headers/SinaWeiboConnector.h @@ -0,0 +1,23 @@ +// +// SinaWeiboConnector.h +// ShareSDKConnector +// +// Created by 冯鸿杰 on 16/9/28. +// Copyright © 2016年 mob. All rights reserved. +// + +#import + +/** + * 新浪微博连接器 + */ +@interface SinaWeiboConnector : NSObject + +/** + * 连接微博API以供ShareSDK可以使用微博客户端来分享内容,不调用此方法也不会影响应用内分享、授权等相关功能。 + * + * @param weiboClass 微博SDK中的类型,应先导入libWeiboSDK.a,再传入[WeiboSDK class]到此参数. + */ ++ (void)connect:(Class)weiboSDKClass; + +@end diff --git a/Support/PlatformConnector/SinaWeiboConnector.framework/Info.plist b/Support/PlatformConnector/SinaWeiboConnector.framework/Info.plist new file mode 100644 index 0000000..52840a8 Binary files /dev/null and b/Support/PlatformConnector/SinaWeiboConnector.framework/Info.plist differ diff --git a/Support/PlatformConnector/SinaWeiboConnector.framework/SinaWeiboConnector b/Support/PlatformConnector/SinaWeiboConnector.framework/SinaWeiboConnector new file mode 100644 index 0000000..dfe8d40 Binary files /dev/null and b/Support/PlatformConnector/SinaWeiboConnector.framework/SinaWeiboConnector differ diff --git a/Support/PlatformConnector/WechatConnector.framework/Headers/WeChatConnector.h b/Support/PlatformConnector/WechatConnector.framework/Headers/WeChatConnector.h new file mode 100644 index 0000000..bf2465a --- /dev/null +++ b/Support/PlatformConnector/WechatConnector.framework/Headers/WeChatConnector.h @@ -0,0 +1,25 @@ +// +// SSPWeChatConnector.h +// ShareSDKConnector +// +// Created by 冯鸿杰 on 16/9/28. +// Copyright © 2016年 mob. All rights reserved. +// + +#import + +/** + * 微信连接器 + */ +@interface WeChatConnector : NSObject + +/** + * 链接微信API已供ShareSDK可以正常使用微信的相关功能(授权、分享) + * + * @param weChatClass 微信SDK中的类型,应先导入libWXApi.a,再传入[WXApi class]到此参数。注:此参数不能为nil,否则会导致授权、分享无法正常使用 + * @param delegate 对于需要获取微信回复或请求时传入该委托对象。该对象必须实现WXApiDelegate协议中的方法。 + */ ++ (void)connect:(Class)wxApiClass; ++ (void)connect:(Class)wxApiClass delegate:(id)delegate; + +@end diff --git a/Support/PlatformConnector/WechatConnector.framework/Info.plist b/Support/PlatformConnector/WechatConnector.framework/Info.plist new file mode 100644 index 0000000..7d39e00 Binary files /dev/null and b/Support/PlatformConnector/WechatConnector.framework/Info.plist differ diff --git a/Support/PlatformConnector/WechatConnector.framework/WechatConnector b/Support/PlatformConnector/WechatConnector.framework/WechatConnector new file mode 100644 index 0000000..233e7a1 Binary files /dev/null and b/Support/PlatformConnector/WechatConnector.framework/WechatConnector differ diff --git a/Support/PlatformSDK/SinaWeiboSDK/WBHttpRequest+WeiboGame.h b/Support/PlatformSDK/SinaWeiboSDK/WBHttpRequest+WeiboGame.h new file mode 100755 index 0000000..9874000 --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WBHttpRequest+WeiboGame.h @@ -0,0 +1,168 @@ +// +// WBHttpRequest+WeiboGame.h +// WeiboSDK +// +// Created by insomnia on 15/3/11. +// Copyright (c) 2015年 SINA iOS Team. All rights reserved. +// + +#import "WBHttpRequest.h" + +@interface WBHttpRequest (WeiboGame) + +/*! + @method + + @abstract + 新增游戏对象。 在http://open.weibo.com/wiki/%E6%B8%B8%E6%88%8F%E6%8E%A5%E5%8F%A3 中有关于该接口的细节说明。 + + @param userID 当前授权用户的uid + + @param accessToken 当前授权用户的accessToken + + @param otherProperties 一个NSDictionary字典,承载任意想额外添加到请求中的参数。 + + @param queue 指定发送请求的NSOperationQueue,如果这个参数为nil,则请求会发送在MainQueue( [NSOperationQueue mainQueue] )中。 + + @param handler 完成请求后会回调handler,处理完成请求后的逻辑。 + */ ++ (WBHttpRequest *)addGameObject:(NSString*)userID + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +/*! + @method + + @abstract + 游戏成就对象入库/更新。 在http://open.weibo.com/wiki/%E6%B8%B8%E6%88%8F%E6%8E%A5%E5%8F%A3 中有关于该接口的细节说明。 + + @param userID 当前授权用户的uid + + @param accessToken 当前授权用户的accessToken + + @param otherProperties 一个NSDictionary字典,承载任意想额外添加到请求中的参数。 + + @param queue 指定发送请求的NSOperationQueue,如果这个参数为nil,则请求会发送在MainQueue( [NSOperationQueue mainQueue] )中。 + + @param handler 完成请求后会回调handler,处理完成请求后的逻辑。 + */ ++ (WBHttpRequest *)addGameAchievementObject:(NSString*)userID + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +/*! + @method + + @abstract + 用户获得游戏成就关系入库/更新。 在http://open.weibo.com/wiki/%E6%B8%B8%E6%88%8F%E6%8E%A5%E5%8F%A3 中有关于该接口的细节说明。 + + @param userID 当前授权用户的uid + + @param accessToken 当前授权用户的accessToken + + @param otherProperties 一个NSDictionary字典,承载任意想额外添加到请求中的参数。 + + @param queue 指定发送请求的NSOperationQueue,如果这个参数为nil,则请求会发送在MainQueue( [NSOperationQueue mainQueue] )中。 + + @param handler 完成请求后会回调handler,处理完成请求后的逻辑。 + */ ++ (WBHttpRequest *)addGameAchievementGain:(NSString*)userID + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +/*! + @method + + @abstract + 用户游戏得分关系入库/更新。 在http://open.weibo.com/wiki/%E6%B8%B8%E6%88%8F%E6%8E%A5%E5%8F%A3 中有关于该接口的细节说明。 + + @param userID 当前授权用户的uid + + @param accessToken 当前授权用户的accessToken + + @param otherProperties 一个NSDictionary字典,承载任意想额外添加到请求中的参数。 + + @param queue 指定发送请求的NSOperationQueue,如果这个参数为nil,则请求会发送在MainQueue( [NSOperationQueue mainQueue] )中。 + + @param handler 完成请求后会回调handler,处理完成请求后的逻辑。 + */ ++ (WBHttpRequest *)addGameScoreGain:(NSString*)userID + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + + +/*! + @method + + @abstract + 读取玩家游戏分数。 在http://open.weibo.com/wiki/%E6%B8%B8%E6%88%8F%E6%8E%A5%E5%8F%A3 中有关于该接口的细节说明。 + + @param userID 当前授权用户的uid + + @param accessToken 当前授权用户的accessToken + + @param otherProperties 一个NSDictionary字典,承载任意想额外添加到请求中的参数。 + + @param queue 指定发送请求的NSOperationQueue,如果这个参数为nil,则请求会发送在MainQueue( [NSOperationQueue mainQueue] )中。 + + @param handler 完成请求后会回调handler,处理完成请求后的逻辑。 + */ ++ (WBHttpRequest *)requestForGameScore:(NSString*)userID + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +/*! + @method + + @abstract + 读取玩家互粉好友游戏分数。 在http://open.weibo.com/wiki/%E6%B8%B8%E6%88%8F%E6%8E%A5%E5%8F%A3 中有关于该接口的细节说明。 + + @param userID 当前授权用户的uid + + @param accessToken 当前授权用户的accessToken + + @param otherProperties 一个NSDictionary字典,承载任意想额外添加到请求中的参数。 + + @param queue 指定发送请求的NSOperationQueue,如果这个参数为nil,则请求会发送在MainQueue( [NSOperationQueue mainQueue] )中。 + + @param handler 完成请求后会回调handler,处理完成请求后的逻辑。 + */ ++ (WBHttpRequest *)requestForFriendsGameScore:(NSString*)userID + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +/*! + @method + + @abstract + 读取玩家获取成就列表。 在http://open.weibo.com/wiki/%E6%B8%B8%E6%88%8F%E6%8E%A5%E5%8F%A3 中有关于该接口的细节说明。 + + @param userID 当前授权用户的uid + + @param accessToken 当前授权用户的accessToken + + @param otherProperties 一个NSDictionary字典,承载任意想额外添加到请求中的参数。 + + @param queue 指定发送请求的NSOperationQueue,如果这个参数为nil,则请求会发送在MainQueue( [NSOperationQueue mainQueue] )中。 + + @param handler 完成请求后会回调handler,处理完成请求后的逻辑。 + */ ++ (WBHttpRequest *)requestForGameAchievementGain:(NSString*)userID + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +@end diff --git a/Support/PlatformSDK/SinaWeiboSDK/WBHttpRequest+WeiboShare.h b/Support/PlatformSDK/SinaWeiboSDK/WBHttpRequest+WeiboShare.h new file mode 100755 index 0000000..e0c0b13 --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WBHttpRequest+WeiboShare.h @@ -0,0 +1,93 @@ +// +// WBHttpRequest+WeiboShare.h +// WeiboSDK +// +// Created by DannionQiu on 14/10/31. +// Copyright (c) 2014年 SINA iOS Team. All rights reserved. +// + +#import "WBHttpRequest.h" + +@class WBImageObject; + +@interface WBHttpRequest (WeiboShare) + +/*! + @method + + @abstract + 获得当前授权用户的微博id列表。 + + @param userID 当前授权用户的uid + + @param accessToken 当前授权用户的accessToken + + @param otherProperties 一个NSDictionary字典,承载任意想额外添加到请求中的参数。 + + @param queue 指定发送请求的NSOperationQueue,如果这个参数为nil,则请求会发送在MainQueue( [NSOperationQueue mainQueue] )中。 + + @param handler 完成请求后会回调handler,处理完成请求后的逻辑。 +*/ ++ (WBHttpRequest *)requestForStatusIDsFromCurrentUser:(NSString*)userID + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +/*! + @method + + @abstract + 转发微博。转发微博id所对应的微博。 + + @param statusID 微博id,微博的唯一标识符。 + + @param text 添加的转发文本,内容不超过140个汉字,不填则默认为“转发微博”。 + + @param accessToken 当前授权用户的accessToken + + @param otherProperties 一个NSDictionary字典,承载任意想额外添加到请求中的参数。 + + @param queue 指定发送请求的NSOperationQueue,如果这个参数为nil,则请求会发送在MainQueue( [NSOperationQueue mainQueue] )中。 + + @param handler 完成请求后会回调handler,处理完成请求后的逻辑。 + */ ++ (WBHttpRequest *)requestForRepostAStatus:(NSString*)statusID + repostText:(NSString*)text + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +/*! + @method + + @abstract + 发表一个微博(无图或者带一张图片的微博)。 + + @param statusText 要发布的微博文本内容,内容不超过140个汉字。 + + @param imageObject 要上传的图片,仅支持JPEG、GIF、PNG格式,图片大小小于5M。这个参数可为nil。由于只能传一张图片,若imageObject和url都有值,请看@caution。 + + @param url 图片的URL地址,必须以http开头。这个参数可为nil,由于只能传一张图片,若imageObject和url都有值,请看@caution。 + + @param accessToken 当前授权用户的accessToken + + @param otherProperties 一个NSDictionary字典,承载任意想额外添加到请求中的参数。 + + @param queue 指定发送请求的NSOperationQueue,如果这个参数为nil,则请求会发送在MainQueue( [NSOperationQueue mainQueue] )中。 + + @param handler 完成请求后会回调handler,处理完成请求后的逻辑。 + + @caution 注意,如果参数imageObject和url都有值,则发布带有imageObject所对应的图片,忽略url所对应的图片。 + */ ++ (WBHttpRequest *)requestForShareAStatus:(NSString*)statusText + contatinsAPicture:(WBImageObject*)imageObject + orPictureUrl:(NSString*)url + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + + +@end diff --git a/Support/PlatformSDK/SinaWeiboSDK/WBHttpRequest+WeiboToken.h b/Support/PlatformSDK/SinaWeiboSDK/WBHttpRequest+WeiboToken.h new file mode 100755 index 0000000..2457efe --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WBHttpRequest+WeiboToken.h @@ -0,0 +1,30 @@ +// +// WBHttpRequest+WeiboToken.h +// WeiboSDK +// +// Created by DannionQiu on 14/11/6. +// Copyright (c) 2014年 SINA iOS Team. All rights reserved. +// + +#import "WBHttpRequest.h" + +@interface WBHttpRequest (WeiboToken) +/*! + @method + + @abstract + 使用RefreshToken去换取新的身份凭证AccessToken. + + @discussion + 在SSO授权登录后,服务器会下发有效期为7天的refreshToken以及有效期为1天的AccessToken。 + 当有效期为1天的AccessToken过期时,可以调用该接口带着refreshToken信息区换取新的AccessToken。 + @param refreshToken refreshToken + + @param queue 指定发送请求的NSOperationQueue,如果这个参数为nil,则请求会发送在MainQueue( [NSOperationQueue mainQueue] )中。 + + @param handler 完成请求后会回调handler,处理完成请求后的逻辑。 + */ ++ (WBHttpRequest *)requestForRenewAccessTokenWithRefreshToken:(NSString*)refreshToken + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; +@end diff --git a/Support/PlatformSDK/SinaWeiboSDK/WBHttpRequest+WeiboUser.h b/Support/PlatformSDK/SinaWeiboSDK/WBHttpRequest+WeiboUser.h new file mode 100755 index 0000000..47657a4 --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WBHttpRequest+WeiboUser.h @@ -0,0 +1,439 @@ +// +// WBHttpRequest+WeiboUser.h +// WeiboSDK +// +// Created by DannionQiu on 14-9-23. +// Copyright (c) 2014年 SINA iOS Team. All rights reserved. +// + +#import "WBHttpRequest.h" + +@interface WBHttpRequest (WeiboUser) + +/*! + @method + + @abstract + Creates a request representing a Open API call to the "friendships/friends". + + @discussion + Simplifies preparing a request and sending request to retrieve the user's friends. + + A successful Open API call will return an NSDictionary of objects which contanis an array of objects representing the + user's friends. + + You can see more details about this API in http://open.weibo.com/wiki/2/friendships/friends/en + + @param currentUserID should be the current User's UserID which has been authorized. + + @param accessToken The token string. + + @param otherProperties Any additional properties for the Open API Request. + + @param queue specify the queue that you want to send request on, if this param is nil, the request will be start on MainQueue( [NSOperationQueue mainQueue] ). + + @param handler the comletion block which will be executed after received response from Open API server. + */ ++ (WBHttpRequest *)requestForFriendsListOfUser:(NSString*)currentUserID + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +/*! + @method + + @abstract + Creates a request representing a Open API call to the "friendships/friends/ids". + + @discussion + Simplifies preparing a request and sending request to retrieve the user's friends' UserID. + + A successful Open API call will return an NSDictionary of objects which contanis an array of NSString representing the + user's friends' UserID. + + You can see more details about this API in http://open.weibo.com/wiki/2/friendships/friends/ids/en + + @param currentUserID should be the current User's UserID which has been authorized. + + @param accessToken The token string. + + @param otherProperties Any additional properties for the Open API Request. + + @param queue specify the queue that you want to send request on, if this param is nil, the request will be start on MainQueue( [NSOperationQueue mainQueue] ). + + @param handler the comletion block which will be executed after received response from Open API server. + */ ++ (WBHttpRequest *)requestForFriendsUserIDListOfUser:(NSString*)currentUserID + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + + +/*! + @method + + @abstract + Creates a request representing a Open API call to the "friendships/friends/in_common". + + @discussion + Simplifies preparing a request and sending request to retrieve the common friends list between two users.. + + A successful Open API call will return an NSDictionary of objects which contanis an array of objects representing the + user's friends. + + You can see more details about this API in http://open.weibo.com/wiki/2/friendships/friends/in_common/en + + @param currentUserID should be the current User's UserID which has been authorized. + + @param accessToken The token string. + + @param otherProperties Any additional properties for the Open API Request. + + @param queue specify the queue that you want to send request on, if this param is nil, the request will be start on MainQueue( [NSOperationQueue mainQueue] ). + + @param handler the comletion block which will be executed after received response from Open API server. + */ ++ (WBHttpRequest *)requestForCommonFriendsListBetweenUser:(NSString*)currentUserID + andUser:(NSString*)anotherUserID + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +/*! + @method + + @abstract + Creates a request representing a Open API call to the "friendships/friends/bilateral". + + @discussion + Simplifies preparing a request and sending request to retrieve the list of the users that are following the specified user and are being followed by the specified user. + + A successful Open API call will return an NSDictionary of objects which contanis an array of objects representing the + users that are following the specified user and are being followed by the specified user. + + You can see more details about this API in http://open.weibo.com/wiki/2/friendships/friends/bilateral/en + + @param currentUserID should be the current User's UserID which has been authorized. + + @param accessToken The token string. + + @param otherProperties Any additional properties for the Open API Request. + + @param queue specify the queue that you want to send request on, if this param is nil, the request will be start on MainQueue( [NSOperationQueue mainQueue] ). + + @param handler the comletion block which will be executed after received response from Open API server. + */ ++ (WBHttpRequest *)requestForBilateralFriendsListOfUser:(NSString*)currentUserID + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +/*! + @method + + @abstract + Creates a request representing a Open API call to the "friendships/followers". + + @discussion + Simplifies preparing a request and sending request to retrieve the user's followers. + + A successful Open API call will return an NSDictionary of objects which contanis an array of objects representing the + user's followers. + + You can see more details about this API in http://open.weibo.com/wiki/2/friendships/followers/en + + @param currentUserID should be the current User's UserID which has been authorized. + + @param accessToken The token string. + + @param otherProperties Any additional properties for the Open API Request. + + @param queue specify the queue that you want to send request on, if this param is nil, the request will be start on MainQueue( [NSOperationQueue mainQueue] ). + + @param handler the comletion block which will be executed after received response from Open API server. + */ ++ (WBHttpRequest *)requestForFollowersListOfUser:(NSString*)currentUserID + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +/*! + @method + + @abstract + Creates a request representing a Open API call to the "friendships/followers/ids". + + @discussion + Simplifies preparing a request and sending request to retrieve the user's followers' UserID. + + A successful Open API call will return an NSDictionary of objects which contanis an array of NSString representing the + user's followers' UserID. + + You can see more details about this API in http://open.weibo.com/wiki/2/friendships/followers/ids/en + + @param currentUserID should be the current User's UserID which has been authorized. + + @param accessToken The token string. + + @param otherProperties Any additional properties for the Open API Request. + + @param queue specify the queue that you want to send request on, if this param is nil, the request will be start on MainQueue( [NSOperationQueue mainQueue] ). + + @param handler the comletion block which will be executed after received response from Open API server. + */ ++ (WBHttpRequest *)requestForFollowersUserIDListOfUser:(NSString*)currentUserID + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +/*! + @method + + @abstract + Creates a request representing a Open API call to the "friendships/followers/active". + + @discussion + Simplifies preparing a request and sending request to retrieve the active(high quality) followers list of a user. + + A successful Open API call will return an NSDictionary of objects which contanis an array of objects representing the active(high quality) followers list of a user. + + You can see more details about this API in http://open.weibo.com/wiki/2/friendships/followers/active/en + + @param currentUserID should be the current User's UserID which has been authorized. + + @param accessToken The token string. + + @param otherProperties Any additional properties for the Open API Request. + + @param queue specify the queue that you want to send request on, if this param is nil, the request will be start on MainQueue( [NSOperationQueue mainQueue] ). + + @param handler the comletion block which will be executed after received response from Open API server. + */ ++ (WBHttpRequest *)requestForActiveFollowersListOfUser:(NSString*)currentUserID + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +/*! + @method + + @abstract + Creates a request representing a Open API call to the "friendships/friends_chain/followers". + + @discussion + Simplifies preparing a request and sending request to retrieve the users that are being followed by the authenticating user and are following the specified user. + + A successful Open API call will return an NSDictionary of objects which contanis an array of objects representing the users that are being followed by the authenticating user and are following the specified user. + + You can see more details about this API in http://open.weibo.com/wiki/2/friendships/friends_chain/followers/en + + @param currentUserID should be the current User's UserID which has been authorized. + + @param accessToken The token string. + + @param otherProperties Any additional properties for the Open API Request. + + @param queue specify the queue that you want to send request on, if this param is nil, the request will be start on MainQueue( [NSOperationQueue mainQueue] ). + + @param handler the comletion block which will be executed after received response from Open API server. + */ ++ (WBHttpRequest *)requestForBilateralFollowersListOfUser:(NSString*)currentUserID + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +/*! + @method + + @abstract + Creates a request representing a Open API call to the "friendships/show". + + @discussion + Simplifies preparing a request and sending request to retrieve the relationship of two users. + + A successful Open API call will return an NSDictionary of objects which contanis the relationship of two users. + + You can see more details about this API in http://open.weibo.com/wiki/2/friendships/show + + @param targetUserID a User ID + + @param sourceUserID a User ID + + @param accessToken The token string. + + @param otherProperties Any additional properties for the Open API Request. + + @param queue specify the queue that you want to send request on, if this param is nil, the request will be start on MainQueue( [NSOperationQueue mainQueue] ). + + @param handler the comletion block which will be executed after received response from Open API server. + */ ++ (WBHttpRequest *)requestForFriendshipDetailBetweenTargetUser:(NSString*)targetUserID + andSourceUser:(NSString*)sourceUserID + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +/*! + @method + + @abstract + Creates a request representing a Open API call to the "friendships/create". + + @discussion + Simplifies preparing a request and sending request to Follow a user. + + A successful Open API call will return an object representing the user to be followed. + + You can see more details about this API in http://open.weibo.com/wiki/2/friendships/create/en + + @param theUserToBeFollowed the userID of the user which you want to follow. + + @param accessToken The token string. + + @param otherProperties Any additional properties for the Open API Request. + + @param queue specify the queue that you want to send request on, if this param is nil, the request will be start on MainQueue( [NSOperationQueue mainQueue] ). + + @param handler the comletion block which will be executed after received response from Open API server. + */ ++ (WBHttpRequest *)requestForFollowAUser:(NSString*)theUserToBeFollowed + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +/*! + @method + + @abstract + Creates a request representing a Open API call to the "friendships/destroy". + + @discussion + Simplifies preparing a request and sending request to cancel following a user. + + A successful Open API call will return an object representing the user to be followed. + + You can see more details about this API in http://open.weibo.com/wiki/2/friendships/destroy/en + + @param theUserThatYouDontLike the userID of the user which you want to cancel following. + + @param accessToken The token string. + + @param otherProperties Any additional properties for the Open API Request. + + @param queue specify the queue that you want to send request on, if this param is nil, the request will be start on MainQueue( [NSOperationQueue mainQueue] ). + + @param handler the comletion block which will be executed after received response from Open API server. + */ ++ (WBHttpRequest *)requestForCancelFollowAUser:(NSString*)theUserThatYouDontLike + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +/*! + @method + + @abstract + Creates a request representing a Open API call to the "friendships/followers/destroy". + + @discussion + Simplifies preparing a request and sending request to remove a follower of the authenticating user. + + A successful Open API call will return an object representing the user to be followed. + + this API requires advanced level authorization. You can see more details about advanced level authorization in http://open.weibo.com/wiki/%E6%8E%88%E6%9D%83%E6%9C%BA%E5%88%B6%E8%AF%B4%E6%98%8E#scope + + You can see more details about this API in http://open.weibo.com/wiki/2/friendships/followers/destroy/en + + @param theUserThatYouDontLike the userID of the follower which you want to remove. + + @param accessToken The token string. + + @param otherProperties Any additional properties for the Open API Request. + + @param queue specify the queue that you want to send request on, if this param is nil, the request will be start on MainQueue( [NSOperationQueue mainQueue] ). + + @param handler the comletion block which will be executed after received response from Open API server. + */ ++ (WBHttpRequest *)requestForRemoveFollowerUser:(NSString*)theUserThatYouDontLike + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +/*! + @method + + @abstract + Creates a request representing a Open API call to the "messages/invite". + + @discussion + Simplifies preparing a request and sending request to send invitation to a bilateral friend of the authenticating user. + + A successful Open API call will return an NSDictionary of objects which contanis objects representing sender and receiver and other invitation details. + + You can see more details about this API in http://open.weibo.com/wiki/2/messages/invite + + @param theUserThatShouldBeYourBilateralFriend the userID of the follower which you want to remove. + + @param accessToken The token string. + + @param text The text content in your invitation message. should not be nil. + + @param url The url in your invitation message. can be nil. + + @param logoUrl The logoUrl in your invitation message. can be nil. + + @param queue specify the queue that you want to send request on, if this param is nil, the request will be start on MainQueue( [NSOperationQueue mainQueue] ). + + @param handler the comletion block which will be executed after received response from Open API server. + */ ++ (WBHttpRequest *)requestForInviteBilateralFriend:(NSString*)theUserThatShouldBeYourBilateralFriend + withAccessToken:(NSString*)accessToken + inviteText:(NSString*)text + inviteUrl:(NSString*)url + inviteLogoUrl:(NSString*)logoUrl + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + + +/*! + @method + + @abstract + Creates a request representing a Open API call to the "users/show". + + @discussion + Simplifies preparing a request and sending request to retrieve user profile by user ID.. + + A successful Open API call will return a object representing the user profile by user ID. + + You can see more details about this API in http://open.weibo.com/wiki/2/users/show/en + + @param aUserID a User ID. + + @param accessToken The token string. + + @param otherProperties Any additional properties for the Open API Request. + + @param queue specify the queue that you want to send request on, if this param is nil, the request will be start on MainQueue( [NSOperationQueue mainQueue] ). + + @param handler the comletion block which will be executed after received response from Open API server. + */ ++ (WBHttpRequest *)requestForUserProfile:(NSString*)aUserID + withAccessToken:(NSString*)accessToken + andOtherProperties:(NSDictionary*)otherProperties + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +@end diff --git a/Support/PlatformSDK/SinaWeiboSDK/WBHttpRequest.h b/Support/PlatformSDK/SinaWeiboSDK/WBHttpRequest.h new file mode 100755 index 0000000..dcd5325 --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WBHttpRequest.h @@ -0,0 +1,182 @@ +// +// WBHttpRequest.h +// WeiboSDK +// +// Created by DannionQiu on 14-9-18. +// Copyright (c) 2014年 SINA iOS Team. All rights reserved. +// + +#import +#import + +#pragma mark - WBHttpRequest and WBHttpRequestDelegate +@class WBHttpRequest; + +/** + 接收并处理来自微博sdk对于网络请求接口的调用响应 以及openAPI + 如inviteFriend、logOutWithToken的请求 + */ +@protocol WBHttpRequestDelegate + +/** + 收到一个来自微博Http请求的响应 + + @param response 具体的响应对象 + */ +@optional +- (void)request:(WBHttpRequest *)request didReceiveResponse:(NSURLResponse *)response; + +/** + 收到一个来自微博Http请求失败的响应 + + @param error 错误信息 + */ +@optional +- (void)request:(WBHttpRequest *)request didFailWithError:(NSError *)error; + +/** + 收到一个来自微博Http请求的网络返回 + + @param result 请求返回结果 + */ +@optional +- (void)request:(WBHttpRequest *)request didFinishLoadingWithResult:(NSString *)result; + +/** + 收到一个来自微博Http请求的网络返回 + + @param data 请求返回结果 + */ +@optional +- (void)request:(WBHttpRequest *)request didFinishLoadingWithDataResult:(NSData *)data; + +/** + 收到快速SSO授权的重定向 + + @param URI + */ +@optional +- (void)request:(WBHttpRequest *)request didReciveRedirectResponseWithURI:(NSURL *)redirectUrl; + +@end + + +/** + 微博封装Http请求的消息结构 + + */ +@interface WBHttpRequest : NSObject +{ + NSURLConnection *connection; + NSMutableData *responseData; +} + +/** + 用户自定义请求地址URL + */ +@property (nonatomic, strong) NSString *url; + +/** + 用户自定义请求方式 + + 支持"GET" "POST" + */ +@property (nonatomic, strong) NSString *httpMethod; + +/** + 用户自定义请求参数字典 + */ +@property (nonatomic, strong) NSDictionary *params; + +/** + WBHttpRequestDelegate对象,用于接收微博SDK对于发起的接口请求的请求的响应 + */ +@property (nonatomic, weak) id delegate; + +/** + 用户自定义TAG + + 用于区分回调Request + */ +@property (nonatomic, strong) NSString* tag; + +/** + 统一HTTP请求接口 + 调用此接口后,将发送一个HTTP网络请求 + @param url 请求url地址 + @param httpMethod 支持"GET" "POST" + @param params 向接口传递的参数结构 + @param delegate WBHttpRequestDelegate对象,用于接收微博SDK对于发起的接口请求的请求的响应 + @param tag 用户自定义TAG,将通过回调WBHttpRequest实例的tag属性返回 + */ ++ (WBHttpRequest *)requestWithURL:(NSString *)url + httpMethod:(NSString *)httpMethod + params:(NSDictionary *)params + delegate:(id)delegate + withTag:(NSString *)tag; + +/** + 统一微博Open API HTTP请求接口 + 调用此接口后,将发送一个HTTP网络请求(用于访问微博open api) + @param accessToken 应用获取到的accessToken,用于身份验证 + @param url 请求url地址 + @param httpMethod 支持"GET" "POST" + @param params 向接口传递的参数结构 + @param delegate WBHttpRequestDelegate对象,用于接收微博SDK对于发起的接口请求的请求的响应 + @param tag 用户自定义TAG,将通过回调WBHttpRequest实例的tag属性返回 + */ ++ (WBHttpRequest *)requestWithAccessToken:(NSString *)accessToken + url:(NSString *)url + httpMethod:(NSString *)httpMethod + params:(NSDictionary *)params + delegate:(id)delegate + withTag:(NSString *)tag; + + + +/** + 取消网络请求接口 + 调用此接口后,将取消当前网络请求,建议同时[WBHttpRequest setDelegate:nil]; + 注意:该方法只对使用delegate的request方法有效。无法取消任何使用block的request的网络请求接口。 + */ +- (void)disconnect; + +#pragma mark - block extension + +typedef void (^WBRequestHandler)(WBHttpRequest *httpRequest, + id result, + NSError *error); + +/** + 统一微博Open API HTTP请求接口 + 调用此接口后,将发送一个HTTP网络请求(用于访问微博open api) + @param url 请求url地址 + @param httpMethod 支持"GET" "POST" + @param params 向接口传递的参数结构 + @param queue 发起请求的NSOperationQueue对象,如queue为nil,则在主线程([NSOperationQueue mainQueue])发起请求。 + @param handler 接口请求返回调用的block方法 + */ ++ (WBHttpRequest *)requestWithURL:(NSString *)url + httpMethod:(NSString *)httpMethod + params:(NSDictionary *)params + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + + +/** + 统一HTTP请求接口 + 调用此接口后,将发送一个HTTP网络请求 + @param url 请求url地址 + @param httpMethod 支持"GET" "POST" + @param params 向接口传递的参数结构 + @param queue 发起请求的NSOperationQueue对象,如queue为nil,则在主线程([NSOperationQueue mainQueue])发起请求。 + @param handler 接口请求返回调用的block方法 + */ ++ (WBHttpRequest *)requestWithAccessToken:(NSString *)accessToken + url:(NSString *)url + httpMethod:(NSString *)httpMethod + params:(NSDictionary *)params + queue:(NSOperationQueue*)queue + withCompletionHandler:(WBRequestHandler)handler; + +@end diff --git a/Support/PlatformSDK/SinaWeiboSDK/WBSDKBasicButton.h b/Support/PlatformSDK/SinaWeiboSDK/WBSDKBasicButton.h new file mode 100755 index 0000000..8f92123 --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WBSDKBasicButton.h @@ -0,0 +1,18 @@ +// +// WBSDKBasicButton.h +// WeiboSDK +// +// Created by DannionQiu on 14/10/24. +// Copyright (c) 2014年 SINA iOS Team. All rights reserved. +// + +#import + +@class WBSDKBasicButton; +typedef void (^WBSDKButtonHandler)(WBSDKBasicButton *button, + BOOL isSuccess, + NSDictionary *resultDict); + +@interface WBSDKBasicButton : UIButton + +@end diff --git a/Support/PlatformSDK/SinaWeiboSDK/WBSDKCommentButton.h b/Support/PlatformSDK/SinaWeiboSDK/WBSDKCommentButton.h new file mode 100755 index 0000000..dfd7f67 --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WBSDKCommentButton.h @@ -0,0 +1,34 @@ +// +// WBSDKCommentButton.h +// WeiboSDK +// +// Created by DannionQiu on 14/10/26. +// Copyright (c) 2014年 SINA iOS Team. All rights reserved. +// + +#import "WBSDKBasicButton.h" + +@interface WBSDKCommentButton : WBSDKBasicButton + +/** + 初始化一个社会化评论按钮 + @param frame 按钮的frame值 + @param accessToken 用户授权后获取的Token + @param keyWord 社会化评论的热点词 + @param urlString 社会化评论链接,可传空 + @param category 领域ID, 此参数为必选参数。 + @param handler 回调函数,当用户点击按钮,进行完与社会化评论组件相关的交互之后,回调的函数。 + */ +- (id)initWithFrame:(CGRect)frame + accessToken:(NSString*)accessToken + keyword:(NSString*)keyWord + urlString:(NSString*)urlString + category:(NSString*)category + completionHandler:(WBSDKButtonHandler)handler; + +@property (nonatomic, strong)NSString* keyWord; +@property (nonatomic, strong)NSString* accessToken; +@property (nonatomic, strong)NSString* urlString; +@property (nonatomic, strong)NSString* category; + +@end diff --git a/Support/PlatformSDK/SinaWeiboSDK/WBSDKRelationshipButton.h b/Support/PlatformSDK/SinaWeiboSDK/WBSDKRelationshipButton.h new file mode 100755 index 0000000..8abe189 --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WBSDKRelationshipButton.h @@ -0,0 +1,50 @@ +// +// WBSDKRelationshipButton.h +// WeiboSDK +// +// Created by DannionQiu on 14/10/26. +// Copyright (c) 2014年 SINA iOS Team. All rights reserved. +// + +#import "WBSDKBasicButton.h" + +enum +{ + WBSDKRelationshipButtonStateFollow, + WBSDKRelationshipButtonStateUnfollow +}; +typedef NSUInteger WBSDKRelationshipButtonState; + + + +@interface WBSDKRelationshipButton : WBSDKBasicButton + +/** + 初始化一个关注组件按钮 + @param frame 按钮的frame值 + @param accessToken 用户授权后获取的Token + @param currentUserID 当前用户的uid值 + @param followerUserID 希望当前用户加关注的用户uid值 + @param handler 回调函数,当用户点击按钮,进行完关注组件相关的交互之后,回调的函数。 + */ +- (id)initWithFrame:(CGRect)frame + accessToken:(NSString*)accessToken + currentUser:(NSString*)currentUserID + followUser:(NSString*)followerUserID + completionHandler:(WBSDKButtonHandler)handler; + +@property (nonatomic, strong)NSString* accessToken; +@property (nonatomic, strong)NSString* currentUserID; +@property (nonatomic, strong)NSString* followUserID; + + +@property (nonatomic, assign)WBSDKRelationshipButtonState currentRelationShip; + + +/** + 获取最新的关注状态 + 该方法会调用OpenApi,获取当前用户与目标用户之间的关注状态,并将按钮的状态改变为正确的状态。 + */ +- (void)checkCurrentRelationship; + +@end diff --git a/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK+Statistics.h b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK+Statistics.h new file mode 100755 index 0000000..ac4c579 --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK+Statistics.h @@ -0,0 +1,89 @@ +// +// WeiboSDK+Statistics.h +// WeiboSDK +// +// Created by DannionQiu on 15/4/13. +// Copyright (c) 2015年 SINA iOS Team. All rights reserved. +// + +#import "WeiboSDK.h" + +@interface WeiboSDK(Statistics) + +/** 设置是否开启统计模式, 默认为NO. + @param value 为YES, SDK会开启统计功能,记录日志,并在合适的实际传上服务器。 + @return void. + */ ++ (void)setStatisticsEnabled:(BOOL)value; + +#pragma mark - Optional Configs Setting +/** 设置是否打印SDK的log信息, 默认NO(不打印log). + @param value 设置为YES, WeiboSDK 会输出log信息可供调试参考. 除非特殊需要,否则发布产品时需改回NO. + @return void. + */ ++ (void)setStatisticsLogEnabled:(BOOL)value; + +/** 设置版本信息. + @param version 版本号,为nil或@""时, 默认为Build号(CFBundleVersion) + @return void. + */ ++ (void)setVersion:(NSString*)version; + +/** 设置渠道信息. + @param channelID 渠道名称, 为nil或@""时, 默认为@"AppStore"渠道 + @return void. + */ ++ (void)setChannelID:(NSString*)channelID; + +/** 设定日志上传的发送间隔 + @param frequecy 单位为秒,最小30秒,最大8*60*60秒(8小时)。默认为180秒(3分钟) + @return void. + */ ++ (void)setUploadFrequecy:(NSTimeInterval)frequecy; + +#pragma mark - Statistics Api +/** 自动页面时长统计, 开始记录某个页面展示时长. + 使用方法:必须配对调用beginLogPageView:和endLogPageView:两个函数来完成自动统计,若只调用某一个函数不会生成有效数据。 + 在该页面展示时调用beginLogPageView:,当退出该页面时调用endLogPageView: + @param pageName 统计的页面名称. + @return void. + */ ++ (void)beginLogPageView:(NSString *)pageName; + +/** 自动页面时长统计, 结束记录某个页面展示时长. + 使用方法:必须配对调用beginLogPageView:和endLogPageView:两个函数来完成自动统计,若只调用某一个函数不会生成有效数据。 + 在该页面展示时调用beginLogPageView:,当退出该页面时调用endLogPageView: + @param pageName 统计的页面名称. + @return void. + */ ++ (void)endLogPageView:(NSString *)pageName; + + +/** 自动事件时长统计, 开始记录某个事示时长. + 使用方法:调用event:函数来完成自动统计。 + @param eventID 统计的事件标识符. + @warning eventID不能使用空格和特殊字符,且长度不能超过255个字符(否则将截取前255个字符) + */ ++ (void)event:(NSString *)eventID; + +/** 自动事件时长统计, 开始记录某个事示时长. + 使用方法:调用event:函数来完成自动统计。 + @param eventID 统计的事件标识符. + @param pageName 事件发生时所在页面. + @param userInfo 事件相关信息. + @return void. + + @warning 每个event的userInfo不能超过10个 + eventID、pageName、userInfo中key和value都不能使用空格和特殊字符,且长度不能超过255个字符(否则将截取前255个字符) + */ ++ (void)event:(NSString *)eventID onPageView:(NSString*)pageName withUserInfo:(NSDictionary*)userInfo; + +/** 强制日志上传 + 调用后,若距离上次成功上传日志时间不小于30秒,立刻上传日志。 + */ ++ (void)forceUploadRecords; + + + + +@end diff --git a/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/.svn/all-wcprops b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/.svn/all-wcprops new file mode 100644 index 0000000..05ba7ab --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/.svn/all-wcprops @@ -0,0 +1,5 @@ +K 25 +svn:wc:ra_dav:version-url +V 173 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle +END diff --git a/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/.svn/entries b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/.svn/entries new file mode 100644 index 0000000..7f00081 --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/.svn/entries @@ -0,0 +1,31 @@ +10 + +dir +588650 +https://pengjun@svn.yy.com/yy-music/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle +https://pengjun@svn.yy.com/yy-music + + + +2016-12-22T03:39:25.744704Z +524017 +wubangmin + + + + + + + + + + + + + + +ea1c70d9-e22e-4a8d-9299-3be15357ce30 + +others +dir + diff --git a/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/.svn/all-wcprops b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/.svn/all-wcprops new file mode 100644 index 0000000..68518b6 --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 180 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others +END +countryList +K 25 +svn:wc:ra_dav:version-url +V 192 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/countryList +END +mfp.cer +K 25 +svn:wc:ra_dav:version-url +V 188 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/mfp.cer +END diff --git a/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/.svn/entries b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/.svn/entries new file mode 100644 index 0000000..dec7feb --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +588650 +https://pengjun@svn.yy.com/yy-music/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others +https://pengjun@svn.yy.com/yy-music + + + +2016-12-16T08:04:00.403474Z +520872 +lanfanglong + + + + + + + + + + + + + + +ea1c70d9-e22e-4a8d-9299-3be15357ce30 + +countryList +file + + + + +2017-06-02T11:05:31.000000Z +e8cdf5bc42835d7a92a126d5746529ca +2016-12-16T08:04:00.403474Z +520872 +lanfanglong +has-props + + + + + + + + + + + + + + + + + + + + +826 + +mfp.cer +file + + + + +2017-06-02T11:05:31.000000Z +ff1d0e8264f22e80558c00bece77d95b +2016-12-16T08:04:00.403474Z +520872 +lanfanglong +has-props + + + + + + + + + + + + + + + + + + + + +577 + diff --git a/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/.svn/prop-base/countryList.svn-base b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/.svn/prop-base/countryList.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/.svn/prop-base/countryList.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/.svn/prop-base/mfp.cer.svn-base b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/.svn/prop-base/mfp.cer.svn-base new file mode 100644 index 0000000..dbc918b --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/.svn/prop-base/mfp.cer.svn-base @@ -0,0 +1,9 @@ +K 14 +svn:executable +V 1 +* +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/.svn/text-base/countryList.svn-base b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/.svn/text-base/countryList.svn-base new file mode 100644 index 0000000..86e85d9 --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/.svn/text-base/countryList.svn-base @@ -0,0 +1 @@ +{"香港地区":{"code":"00852","rule":{"mcc":["454"]}},"台湾地区":{"code":"00886","rule":{"mcc":["466"]}},"澳门地区":{"code":"00853","rule":{"mcc":["455"]}},"日本":{"code":"0081","rule":{"mcc":["440","441"]}},"韩国":{"code":"0082","rule":{"mcc":["450"]}},"新加坡":{"code":"0065","rule":{"mcc":["525"]}},"马来西亚":{"code":"0060","rule":{"mcc":["502"]}},"美国":{"code":"001","rule":{"mcc":["310","311","316"]}},"加拿大":{"code":"001","rule":{"mcc":["302"]}},"澳大利亚":{"code":"0061","rule":{"mcc":["505"]}},"英国":{"code":"0044","rule":{"mcc":["234"]}},"法国":{"code":"0033","rule":{"mcc":["208"]}},"俄罗斯":{"code":"007","rule":{"mcc":["250"]}},"印度":{"code":"0091","rule":{"mcc":["404"]}},"泰国":{"code":"0066","rule":{"mcc":["520"]}},"德国":{"code":"0049","rule":{"mcc":["262"]}}} \ No newline at end of file diff --git a/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/.svn/text-base/mfp.cer.svn-base b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/.svn/text-base/mfp.cer.svn-base new file mode 100644 index 0000000..56dd026 Binary files /dev/null and b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/.svn/text-base/mfp.cer.svn-base differ diff --git a/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/countryList b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/countryList new file mode 100755 index 0000000..86e85d9 --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/countryList @@ -0,0 +1 @@ +{"香港地区":{"code":"00852","rule":{"mcc":["454"]}},"台湾地区":{"code":"00886","rule":{"mcc":["466"]}},"澳门地区":{"code":"00853","rule":{"mcc":["455"]}},"日本":{"code":"0081","rule":{"mcc":["440","441"]}},"韩国":{"code":"0082","rule":{"mcc":["450"]}},"新加坡":{"code":"0065","rule":{"mcc":["525"]}},"马来西亚":{"code":"0060","rule":{"mcc":["502"]}},"美国":{"code":"001","rule":{"mcc":["310","311","316"]}},"加拿大":{"code":"001","rule":{"mcc":["302"]}},"澳大利亚":{"code":"0061","rule":{"mcc":["505"]}},"英国":{"code":"0044","rule":{"mcc":["234"]}},"法国":{"code":"0033","rule":{"mcc":["208"]}},"俄罗斯":{"code":"007","rule":{"mcc":["250"]}},"印度":{"code":"0091","rule":{"mcc":["404"]}},"泰国":{"code":"0066","rule":{"mcc":["520"]}},"德国":{"code":"0049","rule":{"mcc":["262"]}}} \ No newline at end of file diff --git a/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/mfp.cer b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/mfp.cer new file mode 100755 index 0000000..56dd026 Binary files /dev/null and b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/mfp.cer differ diff --git a/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.h b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.h new file mode 100755 index 0000000..0632864 --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.h @@ -0,0 +1,786 @@ +// +// WeiboSDKHeaders.h +// WeiboSDKDemo +// +// Created by Wade Cheng on 4/3/13. +// Copyright (c) 2013 SINA iOS Team. All rights reserved. +// + +#import +#import + +#import "WBHttpRequest.h" +#import "WBHttpRequest+WeiboUser.h" +#import "WBHttpRequest+WeiboShare.h" +#import "WBHttpRequest+WeiboToken.h" +#import "WBHttpRequest+WeiboGame.h" +#import "WBSDKRelationshipButton.h" +#import "WBSDKCommentButton.h" + + +typedef NS_ENUM(NSInteger, WeiboSDKResponseStatusCode) +{ + WeiboSDKResponseStatusCodeSuccess = 0,//成功 + WeiboSDKResponseStatusCodeUserCancel = -1,//用户取消发送 + WeiboSDKResponseStatusCodeSentFail = -2,//发送失败 + WeiboSDKResponseStatusCodeAuthDeny = -3,//授权失败 + WeiboSDKResponseStatusCodeUserCancelInstall = -4,//用户取消安装微博客户端 + WeiboSDKResponseStatusCodePayFail = -5,//支付失败 + WeiboSDKResponseStatusCodeShareInSDKFailed = -8,//分享失败 详情见response UserInfo + WeiboSDKResponseStatusCodeUnsupport = -99,//不支持的请求 + WeiboSDKResponseStatusCodeUnknown = -100, +}; + +@protocol WeiboSDKDelegate; +@protocol WBHttpRequestDelegate; +@class WBBaseRequest; +@class WBBaseResponse; +@class WBMessageObject; +@class WBImageObject; +@class WBBaseMediaObject; +@class WBHttpRequest; +@class WBOrderObject; +/** + 微博SDK接口类 + */ +@interface WeiboSDK : NSObject + +/** + 检查用户是否安装了微博客户端程序 + @return 已安装返回YES,未安装返回NO + */ ++ (BOOL)isWeiboAppInstalled; + +/** + 检查用户是否可以通过微博客户端进行分享 + @return 可以使用返回YES,不可以使用返回NO + */ ++ (BOOL)isCanShareInWeiboAPP; + +/** + 检查用户是否可以使用微博客户端进行SSO授权 + @return 可以使用返回YES,不可以使用返回NO + */ ++ (BOOL)isCanSSOInWeiboApp; + +/** + 打开微博客户端程序 + @return 成功打开返回YES,失败返回NO + */ ++ (BOOL)openWeiboApp; + +/** + 获取微博客户端程序的itunes安装地址 + @return 微博客户端程序的itunes安装地址 + */ ++ (NSString *)getWeiboAppInstallUrl; + +/** + 获取当前微博客户端程序所支持的SDK最高版本 + @return 当前微博客户端程序所支持的SDK最高版本号,返回 nil 表示未安装微博客户端 + */ ++ (NSString *)getWeiboAppSupportMaxSDKVersion __attribute__((deprecated)); + +/** + 获取当前微博SDK的版本号 + @return 当前微博SDK的版本号 + */ ++ (NSString *)getSDKVersion; + + +extern NSString * const WeiboSDKGetAidSucessNotification; +extern NSString * const WeiboSDKGetAidFailNotification; +/** + 获取当前微博SDK的aid + 返回的aid值可能为 nil ,当值为 nil 时会尝试获取 aid 值。 + 当获取成功( aid 值变为有效值)时,SDK会发出名为 WeiboSDKGetAidSucessNotification 的通知,通知中带有 aid 值。 + 当获取失败时,SDK会发出名为 WeiboSDKGetAidFailNotification 的通知,通知中带有 NSError 对象。 + @return aid 用于广告的与设备信息相关的标识符 + */ ++ (NSString *)getWeiboAid; + +/** + 向微博客户端程序注册第三方应用 + @param appKey 微博开放平台第三方应用appKey + @return 注册成功返回YES,失败返回NO + */ ++ (BOOL)registerApp:(NSString *)appKey; + +/** + 处理微博客户端程序通过URL启动第三方应用时传递的数据 + + 需要在 application:openURL:sourceApplication:annotation:或者application:handleOpenURL中调用 + @param url 启动第三方应用的URL + @param delegate WeiboSDKDelegate对象,用于接收微博触发的消息 + @see WeiboSDKDelegate + */ ++ (BOOL)handleOpenURL:(NSURL *)url delegate:(id)delegate; + +/** + 发送请求给微博客户端程序,并切换到微博 + + 请求发送给微博客户端程序之后,微博客户端程序会进行相关的处理,处理完成之后一定会调用 [WeiboSDKDelegate didReceiveWeiboResponse:] 方法将处理结果返回给第三方应用 + + @param request 具体的发送请求 + + @see [WeiboSDKDelegate didReceiveWeiboResponse:] + @see WBBaseResponse + */ ++ (BOOL)sendRequest:(WBBaseRequest *)request; + +/** + 收到微博客户端程序的请求后,发送对应的应答给微博客户端端程序,并切换到微博 + + 第三方应用收到微博的请求后,异步处理该请求,完成后必须调用该函数将应答返回给微博 + + @param response 具体的应答内容 + @see WBBaseRequest + */ ++ (BOOL)sendResponse:(WBBaseResponse *)response; + +/** + 设置WeiboSDK的调试模式 + + 当开启调试模式时,WeiboSDK会在控制台输出详细的日志信息,开发者可以据此调试自己的程序。默认为 NO + @param enabled 开启或关闭WeiboSDK的调试模式 + */ ++ (void)enableDebugMode:(BOOL)enabled; + +/** + 取消授权,登出接口 + 调用此接口后,token将失效 + @param token 第三方应用之前申请的Token + @param delegate WBHttpRequestDelegate对象,用于接收微博SDK对于发起的接口请求的请求的响应 + @param tag 用户自定义TAG,将通过回调WBHttpRequest实例的tag属性返回 + + */ ++ (void)logOutWithToken:(NSString *)token delegate:(id)delegate withTag:(NSString*)tag; + +/** + 邀请好友使用应用 + 调用此接口后,将发送私信至好友,成功将返回微博标准私信结构 + @param data 邀请数据。必须为json字串的形式,必须做URLEncode,采用UTF-8编码。 + data参数支持的参数: + 参数名称 值的类型 是否必填 说明描述 + text string true 要回复的私信文本内容。文本大小必须小于300个汉字。 + url string false 邀请点击后跳转链接。默认为当前应用地址。 + invite_logo string false 邀请Card展示时的图标地址,大小必须为80px X 80px,仅支持PNG、JPG格式。默认为当前应用logo地址。 + @param uid 被邀请人,需为当前用户互粉好友。 + @param access_token 第三方应用之前申请的Token + @param delegate WBHttpRequestDelegate对象,用于接收微博SDK对于发起的接口请求的请求的响应 + @param tag 用户自定义TAG,将通过回调WBHttpRequest实例的tag属性返回 + + */ ++ (void)inviteFriend:(NSString* )data withUid:(NSString *)uid withToken:(NSString *)access_token delegate:(id)delegate withTag:(NSString*)tag; + +/* + 第三方调用微博短信注册或者登陆 + @param navTitle 为登陆页navigationBar的title,如果为空的话,默认为“验证码登陆” +*/ ++ (void)messageRegister:(NSString *)navTitle; +@end + +/** + 接收并处理来至微博客户端程序的事件消息 + */ +@protocol WeiboSDKDelegate + +/** + 收到一个来自微博客户端程序的请求 + + 收到微博的请求后,第三方应用应该按照请求类型进行处理,处理完后必须通过 [WeiboSDK sendResponse:] 将结果回传给微博 + @param request 具体的请求对象 + */ +- (void)didReceiveWeiboRequest:(WBBaseRequest *)request; + +/** + 收到一个来自微博客户端程序的响应 + + 收到微博的响应后,第三方应用可以通过响应类型、响应的数据和 WBBaseResponse.userInfo 中的数据完成自己的功能 + @param response 具体的响应对象 + */ +- (void)didReceiveWeiboResponse:(WBBaseResponse *)response; + +@end + + +#pragma mark - DataTransferObject and Base Request/Response + +/** + 微博客户端程序和第三方应用之间传输数据信息的基类 + */ +@interface WBDataTransferObject : NSObject + +/** + 自定义信息字典,用于数据传输过程中存储相关的上下文环境数据 + + 第三方应用给微博客户端程序发送 request 时,可以在 userInfo 中存储请求相关的信息。 + + @warning userInfo中的数据必须是实现了 `NSCoding` 协议的对象,必须保证能序列化和反序列化 + @warning 序列化后的数据不能大于10M + */ +@property (nonatomic, strong) NSDictionary *userInfo; + + +/** + 发送该数据对象的SDK版本号 + + 如果数据对象是自己生成的,则sdkVersion为当前SDK的版本号;如果是接收到的数据对象,则sdkVersion为数据发送方SDK版本号 + */ +@property (strong, nonatomic, readonly) NSString *sdkVersion; + + +/** + 当用户没有安装微博客户端程序时是否提示用户打开微博安装页面 + + 如果设置为YES,当用户未安装微博时会弹出Alert询问用户是否要打开微博App的安装页面。默认为YES + */ +@property (nonatomic, assign) BOOL shouldOpenWeiboAppInstallPageIfNotInstalled; + + +@end + + +/** + 微博SDK所有请求类的基类 + */ +@interface WBBaseRequest : WBDataTransferObject + +/** + 返回一个 WBBaseRequest 对象 + + @return 返回一个*自动释放的*WBBaseRequest对象 + */ ++ (id)request; + +@end + + +/** + 微博SDK所有响应类的基类 + */ +@interface WBBaseResponse : WBDataTransferObject + +/** + 对应的 request 中的自定义信息字典 + + 如果当前 response 是由微博客户端响应给第三方应用的,则 requestUserInfo 中会包含原 request.userInfo 中的所有数据 + + @see WBBaseRequest.userInfo + */ +@property (strong, nonatomic, readonly) NSDictionary *requestUserInfo; + +/** + 响应状态码 + + 第三方应用可以通过statusCode判断请求的处理结果 + */ +@property (nonatomic, assign) WeiboSDKResponseStatusCode statusCode; + +/** + 返回一个 WBBaseResponse 对象 + + @return 返回一个*自动释放的*WBBaseResponse对象 + */ ++ (id)response; + +@end + +#pragma mark - Authorize Request/Response + +/** + 第三方应用向微博客户端请求认证的消息结构 + + 第三方应用向微博客户端申请认证时,需要调用 [WeiboSDK sendRequest:] 函数, 向微博客户端发送一个 WBAuthorizeRequest 的消息结构。 + 微博客户端处理完后会向第三方应用发送一个结构为 WBAuthorizeResponse 的处理结果。 + */ +@interface WBAuthorizeRequest : WBBaseRequest + +/** + 微博开放平台第三方应用授权回调页地址,默认为`http://` + + 参考 http://open.weibo.com/wiki/%E6%8E%88%E6%9D%83%E6%9C%BA%E5%88%B6%E8%AF%B4%E6%98%8E#.E5.AE.A2.E6.88.B7.E7.AB.AF.E9.BB.98.E8.AE.A4.E5.9B.9E.E8.B0.83.E9.A1.B5 + + @warning 必须保证和在微博开放平台应用管理界面配置的“授权回调页”地址一致,如未进行配置则默认为`http://` + @warning 不能为空,长度小于1K + */ +@property (nonatomic, strong) NSString *redirectURI; + +/** + 微博开放平台第三方应用scope,多个scrope用逗号分隔 + + 参考 http://open.weibo.com/wiki/%E6%8E%88%E6%9D%83%E6%9C%BA%E5%88%B6%E8%AF%B4%E6%98%8E#scope + + @warning 长度小于1K + */ +@property (nonatomic, strong) NSString *scope; + +/** + 当用户没有安装微博客户端或微博客户端过低无法支持SSO的时候是否弹出SDK自带的Webview进行授权 + + 如果设置为YES,当用户没有安装微博客户端或微博客户端过低无法支持SSO的时候会自动弹出SDK自带的Webview进行授权。 + + 如果设置为NO,会根据 shouldOpenWeiboAppInstallPageIfNotInstalled 属性判断是否弹出安装/更新微博的对话框 + + 默认为YES + */ +@property (nonatomic, assign) BOOL shouldShowWebViewForAuthIfCannotSSO; + +@end + + +/** + 微博客户端处理完第三方应用的认证申请后向第三方应用回送的处理结果 + + WBAuthorizeResponse 结构中仅包含常用的 userID 、accessToken 和 expirationDate 信息,其他的认证信息(比如部分应用可以获取的 refresh_token 信息)会统一存放到 userInfo 中 + */ +@interface WBAuthorizeResponse : WBBaseResponse + +/** + 用户ID + */ +@property (nonatomic, strong) NSString *userID; + +/** + 认证口令 + */ +@property (nonatomic, strong) NSString *accessToken; + +/** + 认证过期时间 + */ +@property (nonatomic, strong) NSDate *expirationDate; + +/** + 当认证口令过期时用于换取认证口令的更新口令 + */ +@property (nonatomic, strong) NSString *refreshToken; + +@end + +#pragma mark - ProvideMessageForWeibo Request/Response + +/** + 微博客户端向第三方程序请求提供内容的消息结构 + */ +@interface WBProvideMessageForWeiboRequest : WBBaseRequest + +@end + +/** + 微博客户端向第三方应用请求提供内容,第三方应用向微博客户端返回的消息结构 + */ +@interface WBProvideMessageForWeiboResponse : WBBaseResponse + +/** + 提供给微博客户端的消息 + */ +@property (nonatomic, strong) WBMessageObject *message; + +/** + 返回一个 WBProvideMessageForWeiboResponse 对象 + @param message 需要回送给微博客户端程序的消息对象 + @return 返回一个*自动释放的*WBProvideMessageForWeiboResponse对象 + */ ++ (id)responseWithMessage:(WBMessageObject *)message; + +@end + +#pragma mark - SendMessageToWeibo Request/Response + +/** + 第三方应用发送消息至微博客户端程序的消息结构体 + */ +@interface WBSendMessageToWeiboRequest : WBBaseRequest + +/** + 发送给微博客户端的消息 + */ +@property (nonatomic, strong) WBMessageObject *message; + +/** + 返回一个 WBSendMessageToWeiboRequest 对象 + 此方法生成对象被[WeiboSDK sendRequest:]会唤起微博客户端的发布器进行分享,如果未安装微博客户端或客户端版本太低 + 会根据 shouldOpenWeiboAppInstallPageIfNotInstalled 属性判断是否弹出安装/更新微博的对话框 + @param message 需要发送给微博客户端的消息对象 + @return 返回一个*自动释放的*WBSendMessageToWeiboRequest对象 + */ ++ (id)requestWithMessage:(WBMessageObject *)message; + +/** + 返回一个 WBSendMessageToWeiboRequest 对象 + + 当用户安装了可以支持微博客户端內分享的微博客户端时,会自动唤起微博并分享 + 当用户没有安装微博客户端或微博客户端过低无法支持通过客户端內分享的时候会自动唤起SDK內微博发布器 + + @param message 需要发送给微博的消息对象 + @param authRequest 授权相关信息,与access_token二者至少有一个不为空,当access_token为空并且需要弹出SDK內发布器时会通过此信息先进行授权后再分享 + @param access_token 第三方应用之前申请的Token,当此值不为空并且无法通过客户端分享的时候,会使用此token进行分享。 + @return 返回一个*自动释放的*WBSendMessageToWeiboRequest对象 + */ ++ (id)requestWithMessage:(WBMessageObject *)message + authInfo:(WBAuthorizeRequest *)authRequest + access_token:(NSString *)access_token; + +@end + +/** + WBSendMessageToWeiboResponse + */ +@interface WBSendMessageToWeiboResponse : WBBaseResponse + +/** + 可能在分享过程中用户进行了授权操作,当此值不为空时,为用户相应授权信息 + */ +@property (nonatomic,strong) WBAuthorizeResponse *authResponse; +@end + +#pragma mark - ShareMessageToContact Request/Response +/** + 第三方应用分享链接到私信 + */ +@interface WBShareMessageToContactRequest : WBBaseRequest + +/** + 分享链接的消息 + */ +@property (nonatomic, strong) WBMessageObject *message; + +/** + 返回一个 WBShareMessageToContactRequest 对象 + 此方法生成对象被[WeiboSDK sendRequest:]会唤起微博客户端的发布器进行分享 + @param message 需要发送给微博客户端的消息对象 + @return 返回一个*自动释放的*WBSendMessageToWeiboRequest对象 + */ ++ (id)requestWithMessage:(WBMessageObject *)message; +@end + +/** + WBSendMessageToWeiboResponse + */ +@interface WBShareMessageToContactResponse : WBBaseResponse + +/** + 可能在分享过程中用户进行了授权操作,当此值不为空时,为用户相应授权信息 + */ +@property (nonatomic,strong) WBAuthorizeResponse *authResponse; +@end + +#pragma mark - AppRecomend Request/Response + +/** + 第三方应用私信好友推荐app的请求 + */ +@interface WBSDKAppRecommendRequest : WBBaseRequest +/** + 返回一个 WBSDKAppRecommendRequest 对象 + + @param uids 为推荐的好友列表,为空时跳转到用户自选的页面 + @param access_token 第三方应用之前申请的Token,当此值不为空并且无法通过客户端分享的时候,会使用此token私信。 + @return 返回一个*自动释放的*WBSDKAppRecommendRequest对象 + */ ++ (id)requestWithUIDs:(NSArray *)uids access_token:(NSString *)access_token; + +/** + 私信对象列表 + */ +@property (nonatomic, strong) NSArray* uids; +/** + 用于认证的Token + */ +@property (nonatomic, strong) NSString *access_token; +@end + +/** + 第三方应用私信好友推荐app的响应 + + WBSDKAppRecommendResponse 结构中仅包含常用的 userID 、accessToken 和 expirationDate 信息,其他的认证信息(比如部分应用可以获取的 refresh_token 信息)会统一存放到 userInfo 中 + */ +@interface WBSDKAppRecommendResponse : WBBaseResponse +@property (nonatomic,strong) WBAuthorizeResponse *authResponse; +/** + 用户ID + */ +@property (nonatomic, strong) NSString *userID; + +/** + 认证口令 + */ +@property (nonatomic, strong) NSString *accessToken; + +/** + 认证过期时间 + */ +@property (nonatomic, strong) NSDate *expirationDate; + +/** + 当认证口令过期时用于换取认证口令的更新口令 + */ +@property (nonatomic, strong) NSString *refreshToken; +@end + +#pragma mark - Payment Request/Response + +/** + 第三方应用发送消息至微博客户端程序的消息结构体 + */ +@interface WBPaymentRequest : WBBaseRequest + +/** + 发送给微博客户端的订单 + */ +@property (nonatomic, strong) WBOrderObject *order; + +/** + 返回一个 WBPaymentRequest 对象 + @param message 需要发送给微博客户端程序的消息对象 + @return 返回一个*自动释放的*WBSendMessageToWeiboRequest对象 + */ ++ (id)requestWithOrder:(WBOrderObject *)order; + +@end + +/** + WBPaymentResponse + */ +@interface WBPaymentResponse : WBBaseResponse + +/** + 支付返回状态码 + */ +@property (nonatomic, strong) NSString *payStatusCode; + +/** + 支付返回状态信息 + */ +@property (nonatomic, strong) NSString *payStatusMessage; + +@end + +#pragma mark - MessageObject / ImageObject + +/** + 微博客户端程序和第三方应用之间传递的消息结构 + + 一个消息结构由三部分组成:文字、图片和多媒体数据。三部分内容中至少有一项不为空,图片和多媒体数据不能共存。 + */ +@interface WBMessageObject : NSObject + +/** + 消息的文本内容 + + @warning 长度小于140个汉字 + */ +@property (nonatomic, strong) NSString *text; + +/** + 消息的图片内容 + + @see WBImageObject + */ +@property (nonatomic, strong) WBImageObject *imageObject; + +/** + 消息的多媒体内容 + + @see WBBaseMediaObject + */ +@property (nonatomic, strong) WBBaseMediaObject *mediaObject; + +/** + 返回一个 WBMessageObject 对象 + + @return 返回一个*自动释放的*WBMessageObject对象 + */ ++ (id)message; + +@end + +/** + 消息中包含的图片数据对象 + */ +@interface WBImageObject : NSObject + +/** + 图片真实数据内容 + + @warning 大小不能超过10M + */ +@property (nonatomic, strong) NSData *imageData; + +/** + 返回一个 WBImageObject 对象 + + @return 返回一个*自动释放的*WBImageObject对象 + */ ++ (id)object; + +/** + 返回一个 UIImage 对象 + + @return 返回一个*自动释放的*UIImage对象 + */ +- (UIImage *)image; + +@end + +#pragma mark - Message Media Objects + +/** + 消息中包含的多媒体数据对象基类 + */ +@interface WBBaseMediaObject : NSObject + +/** + 对象唯一ID,用于唯一标识一个多媒体内容 + + 当第三方应用分享多媒体内容到微博时,应该将此参数设置为被分享的内容在自己的系统中的唯一标识 + @warning 不能为空,长度小于255 + */ +@property (nonatomic, strong) NSString *objectID; + +/** + 多媒体内容标题 + @warning 不能为空且长度小于1k + */ +@property (nonatomic, strong) NSString *title; + +/** + 多媒体内容描述 + @warning 长度小于1k + */ +@property (nonatomic, strong) NSString *description; + +/** + 多媒体内容缩略图 + @warning 大小小于32k + */ +@property (nonatomic, strong) NSData *thumbnailData; + +/** + 点击多媒体内容之后呼起第三方应用特定页面的scheme + @warning 长度小于255 + */ +@property (nonatomic, strong) NSString *scheme; + +/** + 返回一个 WBBaseMediaObject 对象 + + @return 返回一个*自动释放的*WBBaseMediaObject对象 + */ ++ (id)object; + +@end + +#pragma mark - Message Video Objects + +/** + 消息中包含的视频数据对象 + */ +@interface WBVideoObject : WBBaseMediaObject + +/** + 视频网页的url + + @warning 不能为空且长度不能超过255 + */ +@property (nonatomic, strong) NSString *videoUrl; + +/** + 视频lowband网页的url + + @warning 长度不能超过255 + */ +@property (nonatomic, strong) NSString *videoLowBandUrl; + +/** + 视频数据流url + + @warning 长度不能超过255 + */ +@property (nonatomic, strong) NSString *videoStreamUrl; + +/** + 视频lowband数据流url + + @warning 长度不能超过255 + */ +@property (nonatomic, strong) NSString *videoLowBandStreamUrl; + +@end + +#pragma mark - Message Music Objects + +/** + 消息中包含的音乐数据对象 + */ +@interface WBMusicObject : WBBaseMediaObject + +/** + 音乐网页url地址 + + @warning 不能为空且长度不能超过255 + */ +@property (nonatomic, strong) NSString *musicUrl; + +/** + 音乐lowband网页url地址 + + @warning 长度不能超过255 + */ +@property (nonatomic, strong) NSString *musicLowBandUrl; + +/** + 音乐数据流url + + @warning 长度不能超过255 + */ +@property (nonatomic, strong) NSString *musicStreamUrl; + + +/** + 音乐lowband数据流url + + @warning 长度不能超过255 + */ +@property (nonatomic, strong) NSString *musicLowBandStreamUrl; + +@end + +#pragma mark - Message WebPage Objects + +/** + 消息中包含的网页数据对象 + */ +@interface WBWebpageObject : WBBaseMediaObject + +/** + 网页的url地址 + + @warning 不能为空且长度不能超过255 + */ +@property (nonatomic, strong) NSString *webpageUrl; + +@end + +#pragma mark - OrderObject + +/** + 微博客户端程序和第三方应用之间传递的订单结构 + */ +@interface WBOrderObject : NSObject + +/** + 订单编号 + */ +@property (nonatomic, strong) NSString *orderString; + + +/** + 返回一个 WBOrderObject 对象 + + @return 返回一个*自动释放的*WBOrderObject对象 + */ ++ (id)order; + +@end \ No newline at end of file diff --git a/Support/PlatformSDK/SinaWeiboSDK/WeiboUser.h b/Support/PlatformSDK/SinaWeiboSDK/WeiboUser.h new file mode 100755 index 0000000..8c356c6 --- /dev/null +++ b/Support/PlatformSDK/SinaWeiboSDK/WeiboUser.h @@ -0,0 +1,77 @@ +// +// WeiboUser.h +// WeiboSDK +// +// Created by DannionQiu on 14-9-23. +// Copyright (c) 2014年 SINA iOS Team. All rights reserved. +// + +#import + +/*@ + You can get the latest WeiboUser field description on http://open.weibo.com/wiki/2/friendships/friends/en . +*/ +@interface WeiboUser : NSObject + +- (instancetype)initWithDictionary:(NSDictionary*)paraDict; ++ (instancetype)userWithDictionary:(NSDictionary*)paraDict; + +// Validate the dictionary to be converted. ++ (BOOL)isValidForDictionary:(NSDictionary *)dict; + +- (BOOL)updateWithDictionary:(NSDictionary*)paraDict; + + +@property(readwrite, strong, nonatomic) NSString* userID; +@property(readwrite, strong, nonatomic) NSString* userClass; +@property(readwrite, strong, nonatomic) NSString* screenName; +@property(readwrite, strong, nonatomic) NSString* name; +@property(readwrite, strong, nonatomic) NSString* province; +@property(readwrite, strong, nonatomic) NSString* city; +@property(readwrite, strong, nonatomic) NSString* location; +@property(readwrite, strong, nonatomic) NSString* userDescription; +@property(readwrite, strong, nonatomic) NSString* url; +@property(readwrite, strong, nonatomic) NSString* profileImageUrl; +@property(readwrite, strong, nonatomic) NSString* coverImageUrl; +@property(readwrite, strong, nonatomic) NSString* coverImageForPhoneUrl; +@property(readwrite, strong, nonatomic) NSString* profileUrl; +@property(readwrite, strong, nonatomic) NSString* userDomain; +@property(readwrite, strong, nonatomic) NSString* weihao; +@property(readwrite, strong, nonatomic) NSString* gender; +@property(readwrite, strong, nonatomic) NSString* followersCount; +@property(readwrite, strong, nonatomic) NSString* friendsCount; +@property(readwrite, strong, nonatomic) NSString* pageFriendsCount; +@property(readwrite, strong, nonatomic) NSString* statusesCount; +@property(readwrite, strong, nonatomic) NSString* favouritesCount; +@property(readwrite, strong, nonatomic) NSString* createdTime; +@property(readwrite, assign, nonatomic) BOOL isFollowingMe; +@property(readwrite, assign, nonatomic) BOOL isFollowingByMe; +@property(readwrite, assign, nonatomic) BOOL isAllowAllActMsg; +@property(readwrite, assign, nonatomic) BOOL isAllowAllComment; +@property(readwrite, assign, nonatomic) BOOL isGeoEnabled; +@property(readwrite, assign, nonatomic) BOOL isVerified; +@property(readwrite, strong, nonatomic) NSString* verifiedType; +@property(readwrite, strong, nonatomic) NSString* remark; +@property(readwrite, strong, nonatomic) NSString* statusID; +@property(readwrite, strong, nonatomic) NSString* ptype; +@property(readwrite, strong, nonatomic) NSString* avatarLargeUrl; +@property(readwrite, strong, nonatomic) NSString* avatarHDUrl; +@property(readwrite, strong, nonatomic) NSString* verifiedReason; +@property(readwrite, strong, nonatomic) NSString* verifiedTrade; +@property(readwrite, strong, nonatomic) NSString* verifiedReasonUrl; +@property(readwrite, strong, nonatomic) NSString* verifiedSource; +@property(readwrite, strong, nonatomic) NSString* verifiedSourceUrl; +@property(readwrite, strong, nonatomic) NSString* verifiedState; +@property(readwrite, strong, nonatomic) NSString* verifiedLevel; +@property(readwrite, strong, nonatomic) NSString* onlineStatus; +@property(readwrite, strong, nonatomic) NSString* biFollowersCount; +@property(readwrite, strong, nonatomic) NSString* language; +@property(readwrite, strong, nonatomic) NSString* star; +@property(readwrite, strong, nonatomic) NSString* mbtype; +@property(readwrite, strong, nonatomic) NSString* mbrank; +@property(readwrite, strong, nonatomic) NSString* block_word; +@property(readwrite, strong, nonatomic) NSString* block_app; +@property(readwrite, strong, nonatomic) NSString* credit_score; +@property(readwrite, strong, nonatomic) NSDictionary* originParaDict; + +@end diff --git a/Support/PlatformSDK/SinaWeiboSDK/libWeiboSDK.a b/Support/PlatformSDK/SinaWeiboSDK/libWeiboSDK.a new file mode 100755 index 0000000..7e49a42 Binary files /dev/null and b/Support/PlatformSDK/SinaWeiboSDK/libWeiboSDK.a differ diff --git a/Support/PlatformSDK/WeChatSDK/WXApi.h b/Support/PlatformSDK/WeChatSDK/WXApi.h new file mode 100644 index 0000000..8552916 --- /dev/null +++ b/Support/PlatformSDK/WeChatSDK/WXApi.h @@ -0,0 +1,166 @@ +// +// WXApi.h +// 所有Api接口 +// +// Created by Wechat on 12-2-28. +// Copyright (c) 2012年 Tencent. All rights reserved. +// + +#import +#import "WXApiObject.h" + + +#pragma mark - WXApiDelegate +/*! @brief 接收并处理来自微信终端程序的事件消息 + * + * 接收并处理来自微信终端程序的事件消息,期间微信界面会切换到第三方应用程序。 + * WXApiDelegate 会在handleOpenURL:delegate:中使用并触发。 + */ +@protocol WXApiDelegate +@optional + +/*! @brief 收到一个来自微信的请求,第三方应用程序处理完后调用sendResp向微信发送结果 + * + * 收到一个来自微信的请求,异步处理完成后必须调用sendResp发送处理结果给微信。 + * 可能收到的请求有GetMessageFromWXReq、ShowMessageFromWXReq等。 + * @param req 具体请求内容,是自动释放的 + */ +-(void) onReq:(BaseReq*)req; + + + +/*! @brief 发送一个sendReq后,收到微信的回应 + * + * 收到一个来自微信的处理结果。调用一次sendReq后会收到onResp。 + * 可能收到的处理结果有SendMessageToWXResp、SendAuthResp等。 + * @param resp具体的回应内容,是自动释放的 + */ +-(void) onResp:(BaseResp*)resp; + +@end + + + +#pragma mark - WXApi + +/*! @brief 微信Api接口函数类 + * + * 该类封装了微信终端SDK的所有接口 + */ +@interface WXApi : NSObject + +/*! @brief WXApi的成员函数,向微信终端程序注册第三方应用。 + * + * 需要在每次启动第三方应用程序时调用。第一次调用后,会在微信的可用应用列表中出现。 + * iOS7及以上系统需要调起一次微信才会出现在微信的可用应用列表中。 + * @attention 请保证在主线程中调用此函数 + * @param appid 微信开发者ID + * @param typeFlag 应用支持打开的文件类型 + * @return 成功返回YES,失败返回NO。 + */ ++(BOOL) registerApp:(NSString *)appid; + + +/*! @brief WXApi的成员函数,向微信终端程序注册第三方应用。 + * + * 需要在每次启动第三方应用程序时调用。第一次调用后,会在微信的可用应用列表中出现。 + * @see registerApp + * @param appid 微信开发者ID + * @param appdesc 应用附加信息,长度不超过1024字节 + * @return 成功返回YES,失败返回NO。 + */ ++(BOOL) registerApp:(NSString *)appid withDescription:(NSString *)appdesc; + + +/*! @brief WXApi的成员函数,向微信终端程序注册应用支持打开的文件类型。 + * + * 需要在每次启动第三方应用程序时调用。调用后并第一次成功分享数据到微信后,会在微信的可用应用列表中出现。 + * @see registerApp + * @param typeFlag 应用支持打开的数据类型, enAppSupportContentFlag枚举类型 “|” 操作后结果 + */ ++(void) registerAppSupportContentFlag:(UInt64)typeFlag; + + + +/*! @brief 处理微信通过URL启动App时传递的数据 + * + * 需要在 application:openURL:sourceApplication:annotation:或者application:handleOpenURL中调用。 + * @param url 微信启动第三方应用时传递过来的URL + * @param delegate WXApiDelegate对象,用来接收微信触发的消息。 + * @return 成功返回YES,失败返回NO。 + */ ++(BOOL) handleOpenURL:(NSURL *) url delegate:(id) delegate; + + + +/*! @brief 检查微信是否已被用户安装 + * + * @return 微信已安装返回YES,未安装返回NO。 + */ ++(BOOL) isWXAppInstalled; + + + +/*! @brief 判断当前微信的版本是否支持OpenApi + * + * @return 支持返回YES,不支持返回NO。 + */ ++(BOOL) isWXAppSupportApi; + + + +/*! @brief 获取微信的itunes安装地址 + * + * @return 微信的安装地址字符串。 + */ ++(NSString *) getWXAppInstallUrl; + + + +/*! @brief 获取当前微信SDK的版本号 + * + * @return 返回当前微信SDK的版本号 + */ ++(NSString *) getApiVersion; + + + +/*! @brief 打开微信 + * + * @return 成功返回YES,失败返回NO。 + */ ++(BOOL) openWXApp; + + + +/*! @brief 发送请求到微信,等待微信返回onResp + * + * 函数调用后,会切换到微信的界面。第三方应用程序等待微信返回onResp。微信在异步处理完成后一定会调用onResp。支持以下类型 + * SendAuthReq、SendMessageToWXReq、PayReq等。 + * @param req 具体的发送请求,在调用函数后,请自己释放。 + * @return 成功返回YES,失败返回NO。 + */ ++(BOOL) sendReq:(BaseReq*)req; + +/*! @brief 发送Auth请求到微信,支持用户没安装微信,等待微信返回onResp + * + * 函数调用后,会切换到微信的界面。第三方应用程序等待微信返回onResp。微信在异步处理完成后一定会调用onResp。支持SendAuthReq类型。 + * @param req 具体的发送请求,在调用函数后,请自己释放。 + * @param viewController 当前界面对象。 + * @param delegate WXApiDelegate对象,用来接收微信触发的消息。 + * @return 成功返回YES,失败返回NO。 + */ ++(BOOL) sendAuthReq:(SendAuthReq*)req viewController:(UIViewController*)viewController delegate:(id)delegate; + + +/*! @brief 收到微信onReq的请求,发送对应的应答给微信,并切换到微信界面 + * + * 函数调用后,会切换到微信的界面。第三方应用程序收到微信onReq的请求,异步处理该请求,完成后必须调用该函数。可能发送的相应有 + * GetMessageFromWXResp、ShowMessageFromWXResp等。 + * @param resp 具体的应答内容,调用函数后,请自己释放 + * @return 成功返回YES,失败返回NO。 + */ ++(BOOL) sendResp:(BaseResp*)resp; + + +@end diff --git a/Support/PlatformSDK/WeChatSDK/WXApiObject.h b/Support/PlatformSDK/WeChatSDK/WXApiObject.h new file mode 100644 index 0000000..12dc9ba --- /dev/null +++ b/Support/PlatformSDK/WeChatSDK/WXApiObject.h @@ -0,0 +1,803 @@ +// +// MMApiObject.h +// Api对象,包含所有接口和对象数据定义 +// +// Created by Wechat on 12-2-28. +// Copyright (c) 2012年 Tencent. All rights reserved. +// + +#import + +/*! @brief 错误码 + * + */ +enum WXErrCode { + WXSuccess = 0, /**< 成功 */ + WXErrCodeCommon = -1, /**< 普通错误类型 */ + WXErrCodeUserCancel = -2, /**< 用户点击取消并返回 */ + WXErrCodeSentFail = -3, /**< 发送失败 */ + WXErrCodeAuthDeny = -4, /**< 授权失败 */ + WXErrCodeUnsupport = -5, /**< 微信不支持 */ +}; + + + +/*! @brief 请求发送场景 + * + */ +enum WXScene { + WXSceneSession = 0, /**< 聊天界面 */ + WXSceneTimeline = 1, /**< 朋友圈 */ + WXSceneFavorite = 2, /**< 收藏 */ +}; + + + +enum WXAPISupport { + WXAPISupportSession = 0, +}; + + + +/*! @brief 跳转profile类型 + * + */ +enum WXBizProfileType{ + WXBizProfileType_Normal = 0, //**< 普通公众号 */ + WXBizProfileType_Device = 1, //**< 硬件公众号 */ +}; + + + +/*! @brief 跳转mp网页类型 + * + */ +enum WXMPWebviewType { + WXMPWebviewType_Ad = 0, /**< 广告网页 **/ +}; + + +/*! @brief 应用支持接收微信的文件类型 + * + */ +typedef NS_ENUM(UInt64, enAppSupportContentFlag) +{ + MMAPP_SUPPORT_NOCONTENT = 0x0, + MMAPP_SUPPORT_TEXT = 0x1, + MMAPP_SUPPORT_PICTURE = 0x2, + MMAPP_SUPPORT_LOCATION = 0x4, + MMAPP_SUPPORT_VIDEO = 0x8, + MMAPP_SUPPORT_AUDIO = 0x10, + MMAPP_SUPPORT_WEBPAGE = 0x20, + + // Suport File Type + MMAPP_SUPPORT_DOC = 0x40, // doc + MMAPP_SUPPORT_DOCX = 0x80, // docx + MMAPP_SUPPORT_PPT = 0x100, // ppt + MMAPP_SUPPORT_PPTX = 0x200, // pptx + MMAPP_SUPPORT_XLS = 0x400, // xls + MMAPP_SUPPORT_XLSX = 0x800, // xlsx + MMAPP_SUPPORT_PDF = 0x1000, // pdf +}; + +#pragma mark - BaseReq +/*! @brief 该类为微信终端SDK所有请求类的基类 + * + */ +@interface BaseReq : NSObject + +/** 请求类型 */ +@property (nonatomic, assign) int type; +/** 由用户微信号和AppID组成的唯一标识,发送请求时第三方程序必须填写,用于校验微信用户是否换号登录*/ +@property (nonatomic, retain) NSString* openID; + +@end + + + +#pragma mark - BaseResp +/*! @brief 该类为微信终端SDK所有响应类的基类 + * + */ +@interface BaseResp : NSObject +/** 错误码 */ +@property (nonatomic, assign) int errCode; +/** 错误提示字符串 */ +@property (nonatomic, retain) NSString *errStr; +/** 响应类型 */ +@property (nonatomic, assign) int type; + +@end + + + +#pragma mark - WXMediaMessage +@class WXMediaMessage; + +/*! @brief 第三方向微信终端发起支付的消息结构体 + * + * 第三方向微信终端发起支付的消息结构体,微信终端处理后会向第三方返回处理结果 + * @see PayResp + */ +@interface PayReq : BaseReq + +/** 商家向财付通申请的商家id */ +@property (nonatomic, retain) NSString *partnerId; +/** 预支付订单 */ +@property (nonatomic, retain) NSString *prepayId; +/** 随机串,防重发 */ +@property (nonatomic, retain) NSString *nonceStr; +/** 时间戳,防重发 */ +@property (nonatomic, assign) UInt32 timeStamp; +/** 商家根据财付通文档填写的数据和签名 */ +@property (nonatomic, retain) NSString *package; +/** 商家根据微信开放平台文档对数据做的签名 */ +@property (nonatomic, retain) NSString *sign; + +@end + + + +#pragma mark - PayResp +/*! @brief 微信终端返回给第三方的关于支付结果的结构体 + * + * 微信终端返回给第三方的关于支付结果的结构体 + */ +@interface PayResp : BaseResp + +/** 财付通返回给商家的信息 */ +@property (nonatomic, retain) NSString *returnKey; + +@end + + + +/*! @brief 第三方向微信终端发起拆企业红包的消息结构体 + * + * 第三方向微信终端发起拆企业红包的消息结构体,微信终端处理后会向第三方返回处理结果 + * @see HBReq + */ +@interface HBReq : BaseReq + +/** 随机串,防重发 */ +@property (nonatomic, retain) NSString *nonceStr; +/** 时间戳,防重发 */ +@property (nonatomic, assign) UInt32 timeStamp; +/** 商家根据微信企业红包开发文档填写的数据和签名 */ +@property (nonatomic, retain) NSString *package; +/** 商家根据微信企业红包开发文档对数据做的签名 */ +@property (nonatomic, retain) NSString *sign; + +@end + + + +#pragma mark - HBResp +/*! @brief 微信终端返回给第三方的关于拆企业红包结果的结构体 + * + * 微信终端返回给第三方的关于拆企业红包结果的结构体 + */ +@interface HBResp : BaseResp + +@end + + + + +#pragma mark - SendAuthReq +/*! @brief 第三方程序向微信终端请求认证的消息结构 + * + * 第三方程序要向微信申请认证,并请求某些权限,需要调用WXApi的sendReq成员函数, + * 向微信终端发送一个SendAuthReq消息结构。微信终端处理完后会向第三方程序发送一个处理结果。 + * @see SendAuthResp + */ +@interface SendAuthReq : BaseReq +/** 第三方程序要向微信申请认证,并请求某些权限,需要调用WXApi的sendReq成员函数,向微信终端发送一个SendAuthReq消息结构。微信终端处理完后会向第三方程序发送一个处理结果。 + * @see SendAuthResp + * @note scope字符串长度不能超过1K + */ +@property (nonatomic, retain) NSString* scope; +/** 第三方程序本身用来标识其请求的唯一性,最后跳转回第三方程序时,由微信终端回传。 + * @note state字符串长度不能超过1K + */ +@property (nonatomic, retain) NSString* state; +@end + + + +#pragma mark - SendAuthResp +/*! @brief 微信处理完第三方程序的认证和权限申请后向第三方程序回送的处理结果。 + * + * 第三方程序要向微信申请认证,并请求某些权限,需要调用WXApi的sendReq成员函数,向微信终端发送一个SendAuthReq消息结构。 + * 微信终端处理完后会向第三方程序发送一个SendAuthResp。 + * @see onResp + */ +@interface SendAuthResp : BaseResp +@property (nonatomic, retain) NSString* code; +/** 第三方程序发送时用来标识其请求的唯一性的标志,由第三方程序调用sendReq时传入,由微信终端回传 + * @note state字符串长度不能超过1K + */ +@property (nonatomic, retain) NSString* state; +@property (nonatomic, retain) NSString* lang; +@property (nonatomic, retain) NSString* country; +@end + + + +#pragma mark - SendMessageToWXReq +/*! @brief 第三方程序发送消息至微信终端程序的消息结构体 + * + * 第三方程序向微信发送信息需要传入SendMessageToWXReq结构体,信息类型包括文本消息和多媒体消息, + * 分别对应于text和message成员。调用该方法后,微信处理完信息会向第三方程序发送一个处理结果。 + * @see SendMessageToWXResp + */ +@interface SendMessageToWXReq : BaseReq +/** 发送消息的文本内容 + * @note 文本长度必须大于0且小于10K + */ +@property (nonatomic, retain) NSString* text; +/** 发送消息的多媒体内容 + * @see WXMediaMessage + */ +@property (nonatomic, retain) WXMediaMessage* message; +/** 发送消息的类型,包括文本消息和多媒体消息两种,两者只能选择其一,不能同时发送文本和多媒体消息 */ +@property (nonatomic, assign) BOOL bText; +/** 发送的目标场景,可以选择发送到会话(WXSceneSession)或者朋友圈(WXSceneTimeline)。 默认发送到会话。 + * @see WXScene + */ +@property (nonatomic, assign) int scene; + +@end + + + +#pragma mark - SendMessageToWXResp +/*! @brief 微信终端向第三方程序返回的SendMessageToWXReq处理结果。 + * + * 第三方程序向微信终端发送SendMessageToWXReq后,微信发送回来的处理结果,该结果用SendMessageToWXResp表示。 + */ +@interface SendMessageToWXResp : BaseResp +@property(nonatomic, retain) NSString* lang; +@property(nonatomic, retain) NSString* country; +@end + + + +#pragma mark - GetMessageFromWXReq +/*! @brief 微信终端向第三方程序请求提供内容的消息结构体。 + * + * 微信终端向第三方程序请求提供内容,微信终端会向第三方程序发送GetMessageFromWXReq消息结构体, + * 需要第三方程序调用sendResp返回一个GetMessageFromWXResp消息结构体。 + */ +@interface GetMessageFromWXReq : BaseReq +@property (nonatomic, retain) NSString* lang; +@property (nonatomic, retain) NSString* country; +@end + + + +#pragma mark - GetMessageFromWXResp +/*! @brief 微信终端向第三方程序请求提供内容,第三方程序向微信终端返回的消息结构体。 + * + * 微信终端向第三方程序请求提供内容,第三方程序调用sendResp向微信终端返回一个GetMessageFromWXResp消息结构体。 + */ +@interface GetMessageFromWXResp : BaseResp +/** 向微信终端提供的文本内容 + @note 文本长度必须大于0且小于10K + */ +@property (nonatomic, retain) NSString* text; +/** 向微信终端提供的多媒体内容。 + * @see WXMediaMessage + */ +@property (nonatomic, retain) WXMediaMessage* message; +/** 向微信终端提供内容的消息类型,包括文本消息和多媒体消息两种,两者只能选择其一,不能同时发送文本和多媒体消息 */ +@property (nonatomic, assign) BOOL bText; +@end + + + +#pragma mark - ShowMessageFromWXReq +/*! @brief 微信通知第三方程序,要求第三方程序显示的消息结构体。 + * + * 微信需要通知第三方程序显示或处理某些内容时,会向第三方程序发送ShowMessageFromWXReq消息结构体。 + * 第三方程序处理完内容后调用sendResp向微信终端发送ShowMessageFromWXResp。 + */ +@interface ShowMessageFromWXReq : BaseReq +/** 微信终端向第三方程序发送的要求第三方程序处理的多媒体内容 + * @see WXMediaMessage + */ +@property (nonatomic, retain) WXMediaMessage* message; +@property (nonatomic, retain) NSString* lang; +@property (nonatomic, retain) NSString* country; +@end + + + +#pragma mark - ShowMessageFromWXResp +/*! @brief 微信通知第三方程序,要求第三方程序显示或处理某些消息,第三方程序处理完后向微信终端发送的处理结果。 + * + * 微信需要通知第三方程序显示或处理某些内容时,会向第三方程序发送ShowMessageFromWXReq消息结构体。 + * 第三方程序处理完内容后调用sendResp向微信终端发送ShowMessageFromWXResp。 + */ +@interface ShowMessageFromWXResp : BaseResp +@end + + + +#pragma mark - LaunchFromWXReq +/*! @brief 微信终端打开第三方程序携带的消息结构体 + * + * 微信向第三方发送的结构体,第三方不需要返回 + */ +@interface LaunchFromWXReq : BaseReq +@property (nonatomic, retain) WXMediaMessage* message; +@property (nonatomic, retain) NSString* lang; +@property (nonatomic, retain) NSString* country; +@end + +#pragma mark - OpenTempSessionReq +/* ! @brief 第三方通知微信,打开临时会话 + * + * 第三方通知微信,打开临时会话 + */ +@interface OpenTempSessionReq : BaseReq +/** 需要打开的用户名 + * @attention 长度不能超过512字节 + */ +@property (nonatomic, retain) NSString* username; +/** 开发者自定义参数,拉起临时会话后会发给开发者后台,可以用于识别场景 + * @attention 长度不能超过32位 + */ +@property (nonatomic, retain) NSString* sessionFrom; +@end + +#pragma mark - OpenWebviewReq +/* ! @brief 第三方通知微信启动内部浏览器,打开指定网页 + * + * 第三方通知微信启动内部浏览器,打开指定Url对应的网页 + */ +@interface OpenWebviewReq : BaseReq +/** 需要打开的网页对应的Url + * @attention 长度不能超过1024 + */ +@property(nonatomic,retain)NSString* url; + +@end + +#pragma mark - OpenWebviewResp +/*! @brief 微信终端向第三方程序返回的OpenWebviewReq处理结果 + * + * 第三方程序向微信终端发送OpenWebviewReq后,微信发送回来的处理结果,该结果用OpenWebviewResp表示 + */ +@interface OpenWebviewResp : BaseResp + +@end + + +#pragma mark - OpenTempSessionResp +/*! @brief 微信终端向第三方程序返回的OpenTempSessionReq处理结果。 + * + * 第三方程序向微信终端发送OpenTempSessionReq后,微信发送回来的处理结果,该结果用OpenTempSessionResp表示。 + */ +@interface OpenTempSessionResp : BaseResp + +@end + +#pragma mark - OpenRankListReq +/* ! @brief 第三方通知微信,打开硬件排行榜 + * + * 第三方通知微信,打开硬件排行榜 + */ +@interface OpenRankListReq : BaseReq + +@end + +#pragma mark - OpenRanklistResp +/*! @brief 微信终端向第三方程序返回的OpenRankListReq处理结果。 + * + * 第三方程序向微信终端发送OpenRankListReq后,微信发送回来的处理结果,该结果用OpenRankListResp表示。 + */ +@interface OpenRankListResp : BaseResp + +@end + +#pragma mark - JumpToBizProfileReq +/* ! @brief 第三方通知微信,打开指定微信号profile页面 + * + * 第三方通知微信,打开指定微信号profile页面 + */ +@interface JumpToBizProfileReq : BaseReq +/** 跳转到该公众号的profile + * @attention 长度不能超过512字节 + */ +@property (nonatomic, retain) NSString* username; +/** 如果用户加了该公众号为好友,extMsg会上传到服务器 + * @attention 长度不能超过1024字节 + */ +@property (nonatomic, retain) NSString* extMsg; +/** + * 跳转的公众号类型 + * @see WXBizProfileType + */ +@property (nonatomic, assign) int profileType; +@end + + + +#pragma mark - JumpToBizWebviewReq +/* ! @brief 第三方通知微信,打开指定usrname的profile网页版 + * + */ +@interface JumpToBizWebviewReq : BaseReq +/** 跳转的网页类型,目前只支持广告页 + * @see WXMPWebviewType + */ +@property(nonatomic, assign) int webType; +/** 跳转到该公众号的profile网页版 + * @attention 长度不能超过512字节 + */ +@property(nonatomic, retain) NSString* tousrname; +/** 如果用户加了该公众号为好友,extMsg会上传到服务器 + * @attention 长度不能超过1024字节 + */ +@property(nonatomic, retain) NSString* extMsg; + +@end + +#pragma mark - WXCardItem + +@interface WXCardItem : NSObject +/** 卡id + * @attention 长度不能超过1024字节 + */ +@property (nonatomic,retain) NSString* cardId; +/** ext信息 + * @attention 长度不能超过2024字节 + */ +@property (nonatomic,retain) NSString* extMsg; +/** + * @attention 卡的状态,req不需要填。resp:0为未添加,1为已添加。 + */ +@property (nonatomic,assign) UInt32 cardState; +/** + * @attention req不需要填,chooseCard返回的。 + */ +@property (nonatomic,retain) NSString* encryptCode; +/** + * @attention req不需要填,chooseCard返回的。 + */ +@property (nonatomic,retain) NSString* appID; +@end; + +#pragma mark - AddCardToWXCardPackageReq +/* ! @brief 请求添加卡券至微信卡包 + * + */ + +@interface AddCardToWXCardPackageReq : BaseReq +/** 卡列表 + * @attention 个数不能超过40个 类型WXCardItem + */ +@property (nonatomic,retain) NSArray* cardAry; + +@end + + +#pragma mark - AddCardToWXCardPackageResp +/** ! @brief 微信返回第三方添加卡券结果 + * + */ + +@interface AddCardToWXCardPackageResp : BaseResp +/** 卡列表 + * @attention 个数不能超过40个 类型WXCardItem + */ +@property (nonatomic,retain) NSArray* cardAry; +@end + +#pragma mark - WXChooseCardReq +/* ! @brief 请求从微信选取卡券 + * + */ + +@interface WXChooseCardReq : BaseReq +@property(nonatomic, strong) NSString *appID; +@property(nonatomic, assign) UInt32 shopID; +@property(nonatomic, assign) UInt32 canMultiSelect; +@property(nonatomic, strong) NSString *cardType; +@property(nonatomic, strong) NSString *cardTpID; +@property(nonatomic, strong) NSString *signType; +@property(nonatomic, strong) NSString *cardSign; +@property(nonatomic, assign) UInt32 timeStamp; +@property(nonatomic, strong) NSString *nonceStr; +@end + + +#pragma mark - WXChooseCardResp +/** ! @brief 微信返回第三方请求选择卡券结果 + * + */ + +@interface WXChooseCardResp : BaseResp +@property (nonatomic,retain) NSArray* cardAry; +@end + +#pragma mark - WXMediaMessage + +/*! @brief 多媒体消息结构体 + * + * 用于微信终端和第三方程序之间传递消息的多媒体消息内容 + */ +@interface WXMediaMessage : NSObject + ++(WXMediaMessage *) message; + +/** 标题 + * @note 长度不能超过512字节 + */ +@property (nonatomic, retain) NSString *title; +/** 描述内容 + * @note 长度不能超过1K + */ +@property (nonatomic, retain) NSString *description; +/** 缩略图数据 + * @note 大小不能超过32K + */ +@property (nonatomic, retain) NSData *thumbData; +/** + * @note 长度不能超过64字节 + */ +@property (nonatomic, retain) NSString *mediaTagName; +/** + * + */ +@property (nonatomic, retain) NSString *messageExt; +@property (nonatomic, retain) NSString *messageAction; +/** + * 多媒体数据对象,可以为WXImageObject,WXMusicObject,WXVideoObject,WXWebpageObject等。 + */ +@property (nonatomic, retain) id mediaObject; + +/*! @brief 设置消息缩略图的方法 + * + * @param image 缩略图 + * @note 大小不能超过32K + */ +- (void) setThumbImage:(UIImage *)image; + +@end + + + +#pragma mark - WXImageObject +/*! @brief 多媒体消息中包含的图片数据对象 + * + * 微信终端和第三方程序之间传递消息中包含的图片数据对象。 + * @note imageData成员不能为空 + * @see WXMediaMessage + */ +@interface WXImageObject : NSObject +/*! @brief 返回一个WXImageObject对象 + * + * @note 返回的WXImageObject对象是自动释放的 + */ ++(WXImageObject *) object; + +/** 图片真实数据内容 + * @note 大小不能超过10M + */ +@property (nonatomic, retain) NSData *imageData; + +@end + + +#pragma mark - WXMusicObject +/*! @brief 多媒体消息中包含的音乐数据对象 + * + * 微信终端和第三方程序之间传递消息中包含的音乐数据对象。 + * @note musicUrl和musicLowBandUrl成员不能同时为空。 + * @see WXMediaMessage + */ +@interface WXMusicObject : NSObject +/*! @brief 返回一个WXMusicObject对象 + * + * @note 返回的WXMusicObject对象是自动释放的 + */ ++(WXMusicObject *) object; + +/** 音乐网页的url地址 + * @note 长度不能超过10K + */ +@property (nonatomic, retain) NSString *musicUrl; +/** 音乐lowband网页的url地址 + * @note 长度不能超过10K + */ +@property (nonatomic, retain) NSString *musicLowBandUrl; +/** 音乐数据url地址 + * @note 长度不能超过10K + */ +@property (nonatomic, retain) NSString *musicDataUrl; + +/**音乐lowband数据url地址 + * @note 长度不能超过10K + */ +@property (nonatomic, retain) NSString *musicLowBandDataUrl; + +@end + + + +#pragma mark - WXVideoObject +/*! @brief 多媒体消息中包含的视频数据对象 + * + * 微信终端和第三方程序之间传递消息中包含的视频数据对象。 + * @note videoUrl和videoLowBandUrl不能同时为空。 + * @see WXMediaMessage + */ +@interface WXVideoObject : NSObject +/*! @brief 返回一个WXVideoObject对象 + * + * @note 返回的WXVideoObject对象是自动释放的 + */ ++(WXVideoObject *) object; + +/** 视频网页的url地址 + * @note 长度不能超过10K + */ +@property (nonatomic, retain) NSString *videoUrl; +/** 视频lowband网页的url地址 + * @note 长度不能超过10K + */ +@property (nonatomic, retain) NSString *videoLowBandUrl; + +@end + + + +#pragma mark - WXWebpageObject +/*! @brief 多媒体消息中包含的网页数据对象 + * + * 微信终端和第三方程序之间传递消息中包含的网页数据对象。 + * @see WXMediaMessage + */ +@interface WXWebpageObject : NSObject +/*! @brief 返回一个WXWebpageObject对象 + * + * @note 返回的WXWebpageObject对象是自动释放的 + */ ++(WXWebpageObject *) object; + +/** 网页的url地址 + * @note 不能为空且长度不能超过10K + */ +@property (nonatomic, retain) NSString *webpageUrl; + +@end + + + +#pragma mark - WXAppExtendObject +/*! @brief 多媒体消息中包含的App扩展数据对象 + * + * 第三方程序向微信终端发送包含WXAppExtendObject的多媒体消息, + * 微信需要处理该消息时,会调用该第三方程序来处理多媒体消息内容。 + * @note url,extInfo和fileData不能同时为空 + * @see WXMediaMessage + */ +@interface WXAppExtendObject : NSObject +/*! @brief 返回一个WXAppExtendObject对象 + * + * @note 返回的WXAppExtendObject对象是自动释放的 + */ ++(WXAppExtendObject *) object; + +/** 若第三方程序不存在,微信终端会打开该url所指的App下载地址 + * @note 长度不能超过10K + */ +@property (nonatomic, retain) NSString *url; +/** 第三方程序自定义简单数据,微信终端会回传给第三方程序处理 + * @note 长度不能超过2K + */ +@property (nonatomic, retain) NSString *extInfo; +/** App文件数据,该数据发送给微信好友,微信好友需要点击后下载数据,微信终端会回传给第三方程序处理 + * @note 大小不能超过10M + */ +@property (nonatomic, retain) NSData *fileData; + +@end + + + +#pragma mark - WXEmoticonObject +/*! @brief 多媒体消息中包含的表情数据对象 + * + * 微信终端和第三方程序之间传递消息中包含的表情数据对象。 + * @see WXMediaMessage + */ +@interface WXEmoticonObject : NSObject + +/*! @brief 返回一个WXEmoticonObject对象 + * + * @note 返回的WXEmoticonObject对象是自动释放的 + */ ++(WXEmoticonObject *) object; + +/** 表情真实数据内容 + * @note 大小不能超过10M + */ +@property (nonatomic, retain) NSData *emoticonData; + +@end + + + +#pragma mark - WXFileObject +/*! @brief 多媒体消息中包含的文件数据对象 + * + * @see WXMediaMessage + */ +@interface WXFileObject : NSObject + +/*! @brief 返回一个WXFileObject对象 + * + * @note 返回的WXFileObject对象是自动释放的 + */ ++(WXFileObject *) object; + +/** 文件后缀名 + * @note 长度不超过64字节 + */ +@property (nonatomic, retain) NSString *fileExtension; + +/** 文件真实数据内容 + * @note 大小不能超过10M + */ +@property (nonatomic, retain) NSData *fileData; + +@end + + +#pragma mark - WXLocationObject +/*! @brief 多媒体消息中包含的地理位置数据对象 + * + * 微信终端和第三方程序之间传递消息中包含的地理位置数据对象。 + * @see WXMediaMessage + */ +@interface WXLocationObject : NSObject + +/*! @brief 返回一个WXLocationObject对象 + * + * @note 返回的WXLocationObject对象是自动释放的 + */ ++(WXLocationObject *) object; + +/** 地理位置信息 + * @note 经纬度 + */ +@property (nonatomic, assign) double lng; //经度 +@property (nonatomic, assign) double lat; //纬度 + +@end + + +#pragma mark - WXTextObject +/*! @brief 多媒体消息中包含的文本数据对象 + * + * 微信终端和第三方程序之间传递消息中包含的文本数据对象。 + * @see WXMediaMessage + */ +@interface WXTextObject : NSObject + +/*! @brief 返回一个WXTextObject对象 + * + * @note 返回的WXTextObject对象是自动释放的 + */ ++(WXTextObject *) object; + +/** 地理位置信息 + * @note 文本内容 + */ +@property (nonatomic, retain) NSString *contentText; + +@end + diff --git a/Support/PlatformSDK/WeChatSDK/WechatAuthSDK.h b/Support/PlatformSDK/WeChatSDK/WechatAuthSDK.h new file mode 100644 index 0000000..076b1d7 --- /dev/null +++ b/Support/PlatformSDK/WeChatSDK/WechatAuthSDK.h @@ -0,0 +1,64 @@ +// +// WechatAuthSDK.h +// WechatAuthSDK +// +// Created by 李凯 on 13-11-29. +// Copyright (c) 2013年 Tencent. All rights reserved. +// + +#import +#import + +enum AuthErrCode { + WechatAuth_Err_Ok = 0, //Auth成功 + WechatAuth_Err_NormalErr = -1, //普通错误 + WechatAuth_Err_NetworkErr = -2, //网络错误 + WechatAuth_Err_GetQrcodeFailed = -3, //获取二维码失败 + WechatAuth_Err_Cancel = -4, //用户取消授权 + WechatAuth_Err_Timeout = -5, //超时 +}; + +@protocol WechatAuthAPIDelegate +@optional + +- (void)onAuthGotQrcode:(UIImage *)image; //得到二维码 +- (void)onQrcodeScanned; //二维码被扫描 +- (void)onAuthFinish:(int)errCode AuthCode:(NSString *)authCode; //成功登录 + +@end + +@interface WechatAuthSDK : NSObject{ + NSString *_sdkVersion; + __weak id _delegate; +} + +@property(nonatomic, weak) id delegate; +@property(nonatomic, readonly) NSString *sdkVersion; //authSDK版本号 + +/*! @brief 发送登录请求,等待WechatAuthAPIDelegate回调 + * + * @param appId 微信开发者ID + * @param nonceStr 一个随机的尽量不重复的字符串,用来使得每次的signature不同 + * @param timeStamp 时间戳 + * @param scope 应用授权作用域,拥有多个作用域用逗号(,)分隔 + * @param signature 签名 + * @param schemeData 会在扫码后拼在scheme后 + * @return 成功返回YES,失败返回NO + 注:该实现只保证同时只有一个Auth在运行,Auth未完成或未Stop再次调用Auth接口时会返回NO。 + */ + +- (BOOL)Auth:(NSString *)appId + nonceStr:(NSString *)nonceStr + timeStamp:(NSString*)timeStamp + scope:(NSString *)scope + signature:(NSString *)signature + schemeData:(NSString *)schemeData; + + +/*! @brief 暂停登录请求 + * + * @return 成功返回YES,失败返回NO。 + */ +- (BOOL)StopAuth; + +@end diff --git a/Support/PlatformSDK/WeChatSDK/libWeChatSDK.a b/Support/PlatformSDK/WeChatSDK/libWeChatSDK.a new file mode 100755 index 0000000..1478b97 Binary files /dev/null and b/Support/PlatformSDK/WeChatSDK/libWeChatSDK.a differ diff --git a/Support/Required/MOBFoundation.framework/.svn/all-wcprops b/Support/Required/MOBFoundation.framework/.svn/all-wcprops new file mode 100644 index 0000000..12e265c --- /dev/null +++ b/Support/Required/MOBFoundation.framework/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 165 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework +END +MOBFoundation +K 25 +svn:wc:ra_dav:version-url +V 179 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/MOBFoundation +END +Info.plist +K 25 +svn:wc:ra_dav:version-url +V 176 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Info.plist +END +readme +K 25 +svn:wc:ra_dav:version-url +V 172 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/readme +END diff --git a/Support/Required/MOBFoundation.framework/.svn/entries b/Support/Required/MOBFoundation.framework/.svn/entries new file mode 100644 index 0000000..6e0065d --- /dev/null +++ b/Support/Required/MOBFoundation.framework/.svn/entries @@ -0,0 +1,136 @@ +10 + +dir +588650 +https://pengjun@svn.yy.com/yy-music/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework +https://pengjun@svn.yy.com/yy-music + + + +2017-03-30T13:15:29.587190Z +557502 +fangjiehua + + + + + + + + + + + + + + +ea1c70d9-e22e-4a8d-9299-3be15357ce30 + +MOBFoundation +file + + + + +2017-06-02T11:05:03.000000Z +7587316aa01ebfae698541a2567a7715 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +11163744 + +Info.plist +file + + + + +2017-06-02T11:05:03.000000Z +067f7eead6aa25015462f92306a80104 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +1106 + +en.lproj +dir + +Headers +dir + +readme +file + + + + +2017-06-02T11:05:03.000000Z +8c82cd0114cec6808b23eb690a5b5415 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +185 + diff --git a/Support/Required/MOBFoundation.framework/.svn/prop-base/Info.plist.svn-base b/Support/Required/MOBFoundation.framework/.svn/prop-base/Info.plist.svn-base new file mode 100644 index 0000000..dbc918b --- /dev/null +++ b/Support/Required/MOBFoundation.framework/.svn/prop-base/Info.plist.svn-base @@ -0,0 +1,9 @@ +K 14 +svn:executable +V 1 +* +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Support/Required/MOBFoundation.framework/.svn/prop-base/MOBFoundation.svn-base b/Support/Required/MOBFoundation.framework/.svn/prop-base/MOBFoundation.svn-base new file mode 100644 index 0000000..dbc918b --- /dev/null +++ b/Support/Required/MOBFoundation.framework/.svn/prop-base/MOBFoundation.svn-base @@ -0,0 +1,9 @@ +K 14 +svn:executable +V 1 +* +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Support/Required/MOBFoundation.framework/.svn/prop-base/readme.svn-base b/Support/Required/MOBFoundation.framework/.svn/prop-base/readme.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/.svn/prop-base/readme.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/.svn/text-base/Info.plist.svn-base b/Support/Required/MOBFoundation.framework/.svn/text-base/Info.plist.svn-base new file mode 100644 index 0000000..a5d7cac Binary files /dev/null and b/Support/Required/MOBFoundation.framework/.svn/text-base/Info.plist.svn-base differ diff --git a/Support/Required/MOBFoundation.framework/.svn/text-base/MOBFoundation.svn-base b/Support/Required/MOBFoundation.framework/.svn/text-base/MOBFoundation.svn-base new file mode 100644 index 0000000..c1b0f23 Binary files /dev/null and b/Support/Required/MOBFoundation.framework/.svn/text-base/MOBFoundation.svn-base differ diff --git a/Support/Required/MOBFoundation.framework/.svn/text-base/readme.svn-base b/Support/Required/MOBFoundation.framework/.svn/text-base/readme.svn-base new file mode 100644 index 0000000..b1bf827 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/.svn/text-base/readme.svn-base @@ -0,0 +1,8 @@ +========================================= +MOBFoundation.framework +========================================= + +1、引用此库需要添加下面依赖库: +libz.dylib +libicucore.dylib + diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/all-wcprops b/Support/Required/MOBFoundation.framework/Headers/.svn/all-wcprops new file mode 100644 index 0000000..cc5e2ee --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/all-wcprops @@ -0,0 +1,185 @@ +K 25 +svn:wc:ra_dav:version-url +V 173 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers +END +MOBFRSAHelper.h +K 25 +svn:wc:ra_dav:version-url +V 189 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFRSAHelper.h +END +MOBFDebug.h +K 25 +svn:wc:ra_dav:version-url +V 185 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFDebug.h +END +MOBFNotificationCenter.h +K 25 +svn:wc:ra_dav:version-url +V 198 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFNotificationCenter.h +END +MOBFNumber.h +K 25 +svn:wc:ra_dav:version-url +V 186 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFNumber.h +END +MOBFPluginManager.h +K 25 +svn:wc:ra_dav:version-url +V 193 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFPluginManager.h +END +MOBFJSTypeDefine.h +K 25 +svn:wc:ra_dav:version-url +V 192 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFJSTypeDefine.h +END +MOBFDataService.h +K 25 +svn:wc:ra_dav:version-url +V 191 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFDataService.h +END +MOBFImageObserver.h +K 25 +svn:wc:ra_dav:version-url +V 193 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFImageObserver.h +END +MOBFNetworkFlowInfo.h +K 25 +svn:wc:ra_dav:version-url +V 195 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFNetworkFlowInfo.h +END +MOBFImageGetter.h +K 25 +svn:wc:ra_dav:version-url +V 191 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFImageGetter.h +END +MOBFRSAKey.h +K 25 +svn:wc:ra_dav:version-url +V 186 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFRSAKey.h +END +MOBFHttpPostedFile.h +K 25 +svn:wc:ra_dav:version-url +V 194 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFHttpPostedFile.h +END +MOBFDevice.h +K 25 +svn:wc:ra_dav:version-url +V 186 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFDevice.h +END +MOBFXml.h +K 25 +svn:wc:ra_dav:version-url +V 183 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFXml.h +END +MOBFHttpService.h +K 25 +svn:wc:ra_dav:version-url +V 191 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFHttpService.h +END +MOBFoundation.h +K 25 +svn:wc:ra_dav:version-url +V 189 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFoundation.h +END +MOBFOAuthService.h +K 25 +svn:wc:ra_dav:version-url +V 192 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFOAuthService.h +END +MOBFApplication.h +K 25 +svn:wc:ra_dav:version-url +V 191 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFApplication.h +END +MOBFXmlNode.h +K 25 +svn:wc:ra_dav:version-url +V 187 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFXmlNode.h +END +MOBFString.h +K 25 +svn:wc:ra_dav:version-url +V 186 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFString.h +END +IMOBFPlugin.h +K 25 +svn:wc:ra_dav:version-url +V 187 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/IMOBFPlugin.h +END +MOBFJson.h +K 25 +svn:wc:ra_dav:version-url +V 184 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFJson.h +END +MOBFData.h +K 25 +svn:wc:ra_dav:version-url +V 184 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFData.h +END +MOBFRegex.h +K 25 +svn:wc:ra_dav:version-url +V 185 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFRegex.h +END +MOBFDate.h +K 25 +svn:wc:ra_dav:version-url +V 184 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFDate.h +END +MOBFViewController.h +K 25 +svn:wc:ra_dav:version-url +V 194 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFViewController.h +END +MOBFColor.h +K 25 +svn:wc:ra_dav:version-url +V 185 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFColor.h +END +MOBFJSContext.h +K 25 +svn:wc:ra_dav:version-url +V 189 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFJSContext.h +END +MOBFImage.h +K 25 +svn:wc:ra_dav:version-url +V 185 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFImage.h +END +MOBFImageServiceTypeDef.h +K 25 +svn:wc:ra_dav:version-url +V 199 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers/MOBFImageServiceTypeDef.h +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/entries b/Support/Required/MOBFoundation.framework/Headers/.svn/entries new file mode 100644 index 0000000..533c732 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/entries @@ -0,0 +1,1048 @@ +10 + +dir +588650 +https://pengjun@svn.yy.com/yy-music/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/Headers +https://pengjun@svn.yy.com/yy-music + + + +2017-03-30T13:15:29.587190Z +557502 +fangjiehua + + + + + + + + + + + + + + +ea1c70d9-e22e-4a8d-9299-3be15357ce30 + +MOBFRSAHelper.h +file + + + + +2017-06-02T11:05:03.000000Z +358b88d7dbfc777f3fb0830b2f344966 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +1153 + +MOBFDebug.h +file + + + + +2017-06-02T11:05:03.000000Z +6a3a55b89c644fd4ff8f764d504daae2 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +560 + +MOBFNotificationCenter.h +file + + + + +2017-06-02T11:05:03.000000Z +32a6861f0c27cb4309ef8447bfb2e190 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +1008 + +MOBFNumber.h +file + + + + +2017-06-02T11:05:03.000000Z +cb158e962a7565f0ec986043b0535007 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +379 + +MOBFJSTypeDefine.h +file + + + + +2017-06-02T11:05:03.000000Z +d663b59df53dc529c67f74033e0e2d4a +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +346 + +MOBFPluginManager.h +file + + + + +2017-06-02T11:05:03.000000Z +e247133b5b04a8083e5b50d374fbcb91 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +1296 + +MOBFImageObserver.h +file + + + + +2017-06-02T11:05:03.000000Z +b7341874b2921d4b8528c908bdfd9ec3 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +324 + +MOBFDataService.h +file + + + + +2017-06-02T11:05:03.000000Z +b444c3ff9e9e5064499a5495bd6d7cc2 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +1633 + +MOBFImageGetter.h +file + + + + +2017-06-02T11:05:03.000000Z +f474a7815ed70ed0f26c43afc6d1d2a4 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +1282 + +MOBFNetworkFlowInfo.h +file + + + + +2017-06-02T11:05:03.000000Z +fcf34252b98c1accd94f0bec04ed35cd +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +1114 + +MOBFHttpPostedFile.h +file + + + + +2017-06-02T11:05:03.000000Z +8b5b984002633a37b8c862cf04fb6a01 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +1376 + +MOBFRSAKey.h +file + + + + +2017-06-02T11:05:03.000000Z +762c21e1eba581156d228df38d6a9c39 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +513 + +MOBFDevice.h +file + + + + +2017-06-02T11:05:03.000000Z +fb34130363bef7f683116ad2ade60adf +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +2756 + +MOBFHttpService.h +file + + + + +2017-06-02T11:05:03.000000Z +b64d49c28d56b834f7db72a1554e0dda +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +5485 + +MOBFXml.h +file + + + + +2017-06-02T11:05:03.000000Z +a7e1ca8091af6fbc10019c3b17bb33a7 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +745 + +MOBFoundation.h +file + + + + +2017-06-02T11:05:03.000000Z +674f16752c717f5233ee165006e83b47 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +1003 + +MOBFOAuthService.h +file + + + + +2017-06-02T11:05:03.000000Z +89fb2c0ef76d9c075d26f6e6ed98b117 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +2154 + +MOBFApplication.h +file + + + + +2017-06-02T11:05:03.000000Z +40bf15d0eacabecf4efbf5550b336fe0 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +1144 + +MOBFXmlNode.h +file + + + + +2017-06-02T11:05:03.000000Z +c7a62b02c8719cf8070cefbe9b4c68c1 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +745 + +MOBFString.h +file + + + + +2017-06-02T11:05:03.000000Z +b25bb641d36b7f0c15ebd6a5efc3f373 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +2105 + +IMOBFPlugin.h +file + + + + +2017-06-02T11:05:03.000000Z +35845372bf9f82f8d6d1e5a095defe31 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +388 + +MOBFJson.h +file + + + + +2017-06-02T11:05:03.000000Z +c5db3291fc2190202eef2dd72511f6ca +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +1350 + +MOBFData.h +file + + + + +2017-06-02T11:05:03.000000Z +1a6a3e9ac42afdd6a7b1dabfd68b5572 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +3664 + +MOBFRegex.h +file + + + + +2017-06-02T11:05:03.000000Z +38f320da73aea37d5013d7f2e0309104 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +2353 + +MOBFDate.h +file + + + + +2017-06-02T11:05:03.000000Z +e2d7ca6d41d37c0a60c06dbdeca43829 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +2327 + +MOBFViewController.h +file + + + + +2017-06-02T11:05:03.000000Z +e8fd481ed104d97ce91f51399d499a05 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +579 + +MOBFColor.h +file + + + + +2017-06-02T11:05:03.000000Z +01ef20a9f205dbf8e7551a3a0aacdaee +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +533 + +MOBFJSContext.h +file + + + + +2017-06-02T11:05:03.000000Z +654c1750b5117469176bba44cfce4cc1 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +1166 + +MOBFImage.h +file + + + + +2017-06-02T11:05:03.000000Z +1d052e4eddb3aa4380332627fb9d4ade +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +2266 + +MOBFImageServiceTypeDef.h +file + + + + +2017-06-02T11:05:03.000000Z +9a239e856bb7cb6a82d4958115bb8c28 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +621 + diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/IMOBFPlugin.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/IMOBFPlugin.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/IMOBFPlugin.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFApplication.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFApplication.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFApplication.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFColor.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFColor.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFColor.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFData.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFData.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFData.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFDataService.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFDataService.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFDataService.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFDate.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFDate.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFDate.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFDebug.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFDebug.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFDebug.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFDevice.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFDevice.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFDevice.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFHttpPostedFile.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFHttpPostedFile.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFHttpPostedFile.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFHttpService.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFHttpService.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFHttpService.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFImage.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFImage.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFImage.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFImageGetter.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFImageGetter.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFImageGetter.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFImageObserver.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFImageObserver.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFImageObserver.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFImageServiceTypeDef.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFImageServiceTypeDef.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFImageServiceTypeDef.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFJSContext.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFJSContext.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFJSContext.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFJSTypeDefine.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFJSTypeDefine.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFJSTypeDefine.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFJson.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFJson.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFJson.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFNetworkFlowInfo.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFNetworkFlowInfo.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFNetworkFlowInfo.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFNotificationCenter.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFNotificationCenter.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFNotificationCenter.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFNumber.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFNumber.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFNumber.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFOAuthService.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFOAuthService.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFOAuthService.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFPluginManager.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFPluginManager.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFPluginManager.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFRSAHelper.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFRSAHelper.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFRSAHelper.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFRSAKey.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFRSAKey.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFRSAKey.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFRegex.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFRegex.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFRegex.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFString.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFString.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFString.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFViewController.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFViewController.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFViewController.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFXml.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFXml.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFXml.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFXmlNode.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFXmlNode.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFXmlNode.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFoundation.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFoundation.h.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/prop-base/MOBFoundation.h.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/IMOBFPlugin.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/IMOBFPlugin.h.svn-base new file mode 100644 index 0000000..81247f6 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/IMOBFPlugin.h.svn-base @@ -0,0 +1,30 @@ +// +// IMOBFPlugin.h +// MOBFoundation +// +// Created by fenghj on 15/6/2. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * 插件协议 + */ +@protocol IMOBFPlugin + +@required + +/** + * 插件加载时调用 + * + * @param key 插件标识 + */ +- (void)load:(NSString *)key; + +/** + * 插件卸载时调用 + */ +- (void)unload; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFApplication.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFApplication.h.svn-base new file mode 100644 index 0000000..58302a8 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFApplication.h.svn-base @@ -0,0 +1,79 @@ +// +// MOBFApplicationUtils.h +// MOBFoundation +// +// Created by vimfung on 15-1-20. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * 应用工具类 + */ +@interface MOBFApplication : NSObject + +/** + * 获取应用名称 + * + * @return 应用名称 + */ ++ (NSString *)name; + +/** + * 获取应用包名 + * + * @return 包名 + */ ++ (NSString *)bundleId; + +/** + * 获取应用编译版本 + * + * @return 编译版本 + */ ++ (NSString *)buildVersion; + +/** + * 获取应用版本号 + * + * @return 应用版本号 + */ ++ (NSString *)shortVersion; + +/** + * 获取应用版本号 + * + * @return 版本号 + */ ++ (NSString *)version __deprecated_msg("use [buildVersion] method instead"); + +/** + * 检测是否启用ATS功能 + */ ++ (BOOL)enabledATS; + +/** + * 获取应用运行经过的时间(单位:毫秒) + * + * @return 经过时间 + */ ++ (uint64_t)elapsedTime; + +/** + * 判断链接是否能打开 + * + * @param url 链接 + * + * @return YES 可以打开,NO 不能打开 + */ ++ (BOOL)canOpenUrl:(NSURL *)url; + +/** + * 打开链接 + * + * @param url 链接 + */ ++ (void)openUrl:(NSURL *)url; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFColor.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFColor.h.svn-base new file mode 100644 index 0000000..e334508 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFColor.h.svn-base @@ -0,0 +1,35 @@ +// +// MOBFColorUtils.h +// MOBFoundation +// +// Created by vimfung on 15-1-19. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import +#import + +/** + * 颜色工具类 + */ +@interface MOBFColor : NSObject + +/** + * 获取颜色对象 + * + * @param rgb RGB颜色值 + * + * @return 颜色对象 + */ ++ (UIColor *)colorWithRGB:(NSUInteger)rgb; + +/** + * 获取颜色对象 + * + * @param argb ARGB颜色值 + * + * @return 颜色对象 + */ ++ (UIColor *)colorWithARGB:(NSUInteger)argb; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFData.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFData.h.svn-base new file mode 100644 index 0000000..15729f3 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFData.h.svn-base @@ -0,0 +1,188 @@ +// +// MOBFDataUtils.h +// MOBFoundation +// +// Created by vimfung on 15-1-16. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import +#import +#import + +/** + * 数据工具类 + */ +@interface MOBFData : NSObject + +/** + * 使用HMAC-SHA1进行加密 + * + * @param data 原始数据 + * @param key 密钥 + * + * @return 加密后数据 + */ ++ (NSData *)hmacSha1Data:(NSData *)data forKey:(NSData *)key; + +/** + * 对数据进行MD5签名 + * + * @param data 原始数据 + * + * @return 签名后数据 + */ ++ (NSData *)md5Data:(NSData *)data; + +/** + * 对数据进行AES128加密 + * + * @param data 原始数据 + * @param key 密钥 + * @param encoding 字符串编码 + * + * @return 加密后数据 + */ ++ (NSData *)aes128EncryptData:(NSData *)data + key:(NSString *)key + encoding:(NSStringEncoding)encoding; + +/** + * 对数据进行AES128解密 + * + * @param data 原始数据 + * @param key 密钥 + * @param encoding 字符串编码 + * + * @return 解密后数据 + */ ++ (NSData *)aes128DecryptData:(NSData *)data + key:(NSString *)key + encoding:(NSStringEncoding)encoding; + +/** + * 对数据进行AES128加密 + * + * @param data 原始数据 + * @param key 密钥 + * @param options 选项 + * + * @return 加密后数据 + */ ++ (NSData *)aes128EncryptData:(NSData *)data + key:(NSData *)key + options:(CCOptions)options; + +/** + * 对数据进行AES128解密 + * + * @param data 原始数据 + * @param key 密钥 + * @param options 选项 + * + * @return 解密后数据 + */ ++ (NSData *)aes128DecryptData:(NSData *)data + key:(NSData *)key + options:(CCOptions)options; + +/** + * 使用GZip压缩数据 + * + * @param data 原始数据 + * + * @return 压缩后数据 + */ ++ (NSData *)compressDataUsingGZip:(NSData *)data; + +/** + * 使用GZip解压缩数据 + * + * @param data 原始数据 + * + * @return 解压缩后数据 + */ ++ (NSData *)uncompressDataUsingGZip:(NSData *)data; + +/** + * 对数据进行MD5签名 + * + * @param data 原始数据 + * + * @return 签名后字符串 + */ ++ (NSString *)stringByMD5Data:(NSData *)data; + +/** + * 使用BASE64编码数据 + * + * @param data 原始数据 + * + * @return 编码后字符串 + */ ++ (NSString *)stringByBase64EncodeData:(NSData *)data; + +/** + * 对数据进行CRC32校验 + * + * @param data 数据对象 + * + * @return 校验值 + */ ++ (uLong)valueByCRC32Data:(NSData *)data; + +/** + * 对数据进行CRC32检验 + * + * @param data 原始数据 + * + * @return 检验值 + */ ++ (NSString *)stringByCRC32Data:(NSData *)data; + +/** + * 将数据转换成16进制字符串 + * + * @param data 原始数据 + * + * @return 字符串 + */ ++ (NSString *)hexStringByData:(NSData *)data; + +/** + * 写入一个32位整数到数据对象中 + * + * @param value 整数值 + * @param data 数据对象 + */ ++ (void)writeInt32:(int32_t)value toData:(NSMutableData *)data; + +/** + * 写入一个16位整数到数据对象中 + * + * @param value 整数值 + * @param data 数据对象 + */ ++ (void)writeInt16:(int16_t)value toData:(NSMutableData *)data; + +/** + * 读取一个16位整数 + * + * @param data 数据对象 + * @param offset 偏移位置 + * + * @return 短整型数据 + */ ++ (int16_t)readInt16FromData:(NSData *)data offset:(NSInteger)offset; + +/** + * 读取一个32位整数 + * + * @param data 数据对象 + * @param offset 偏移位置 + * + * @return 整型数据 + */ ++ (int32_t)readInt32FromData:(NSData *)data offset:(NSInteger)offset; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFDataService.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFDataService.h.svn-base new file mode 100644 index 0000000..29164f7 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFDataService.h.svn-base @@ -0,0 +1,100 @@ +// +// MOBFDataService.h +// MOBFoundation +// +// Created by vimfung on 15-1-21. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * 数据服务 + */ +@interface MOBFDataService : NSObject + +/** + * 获取数据服务共享实例对象 + * + * @return 数据服务对象 + */ ++ (MOBFDataService *)sharedInstance; + +/** + * 设置共享数据 + * + * @param data 数据 + * @param key 标识 + */ +- (void)setSharedData:(id)data forKey:(NSString *)key; + +/** + * 获取共享数据 + * + * @param key 标识 + * + * @return 数据 + */ +- (id)sharedDataForKey:(NSString *)key; + +/** + * 开始缓存数据事务 + * + * @param domain 数据域 + */ +- (void)beginCacheDataTransForDomain:(NSString *)domain; + +/** + * 结束缓存数据事务 + * + * @param domain 数据域 + */ +- (void)endCacheDataTransForDomain:(NSString *)domain; + +/** + * 设置缓存数据 + * + * @param data 数据 + * @param key 标识 + * @param domain 数据域 + */ +- (void)setCacheData:(id)data forKey:(NSString *)key domain:(NSString *)domain; + +/** + * 获取缓存数据 + * + * @param key 标识 + * @param domain 数据域 + * + * @return 数据 + */ +- (id)cacheDataForKey:(NSString *)key domain:(NSString *)domain; + +/** + * 开始安全数据事务 + */ +- (void)beginSecureDataTrans; + +/** + * 结束安全数据事务 + */ +- (void)endSecureDataTrans; + +/** + * 设置安全数据 + * + * @param data 数据 + * @param key 标识 + */ +- (void)setSecureData:(id)data forKey:(NSString *)key; + +/** + * 获取安全数据 + * + * @param key 标识 + * + * @return 数据 + */ +- (id)secureDataForKey:(NSString *)key; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFDate.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFDate.h.svn-base new file mode 100644 index 0000000..f7c844a --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFDate.h.svn-base @@ -0,0 +1,124 @@ +// +// MOBFDateUtils.h +// MOBFoundation +// +// Created by vimfung on 15-1-19. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * 时间工具类 + */ +@interface MOBFDate : NSObject + +/** + * 获取时间的年份 + * + * @param date 时间 + * + * @return 年份 + */ ++ (NSInteger)fullYearByDate:(NSDate *)date; + +/** + * 获取时间的月份 + * + * @param date 时间 + * + * @return 月份 + */ ++ (NSInteger)monthByDate:(NSDate *)date; + +/** + * 获取时间的日期 + * + * @param date 时间 + * + * @return 日期部分 + */ ++ (NSInteger)dayByDate:(NSDate *)date; + +/** + * 获取时间的小时部分 + * + * @param date 时间 + * + * @return 小时部分 + */ ++ (NSInteger)hourByDate:(NSDate *)date; + +/** + * 获取时间的分钟部分 + * + * @param date 时间 + * + * @return 分钟部分 + */ ++ (NSInteger)minuteByDate:(NSDate *)date; + +/** + * 获取时间的秒部分 + * + * @param date 时间 + * + * @return 秒部分 + */ ++ (NSInteger)secondByDate:(NSDate *)date; + +/** + * 将时间转换为指定格式字符串 + * + * @param date 时间 + * @param format 格式字符串 + * + * @return 转换后字符串 + */ ++ (NSString *)stringByDate:(NSDate *)date + withFormat:(NSString *)format; + +/** + * 将字符串转换为时间对象 + * + * @param format 格式字符串 + * @param dateString 日期时间字符串 + * + * @return 时间对象 + */ ++ (NSDate *)dateWithFormat:(NSString *)format + dateString:(NSString *)dateString; + +/** + * 将字符串转换为时间对象 + * + * @param format 格式字符串 + * @param dateString 日期时间字符串 + * @param locale 本地化参数 + * + * @return 时间对象 + */ ++ (NSDate *)dateWithFormat:(NSString *)format + dateString:(NSString *)dateString + locale:(NSLocale *)locale; + +/** + * 创建日期时间对象 + * + * @param year 年份 + * @param month 月份 + * @param date 日期 + * @param hour 小时 + * @param minute 分钟 + * @param second 秒 + * + * @return 日期时间对象 + */ ++ (NSDate *)dateWithYear:(NSInteger)year + month:(NSInteger)month + date:(NSInteger)date + hour:(NSInteger)hour + minute:(NSInteger)minute + second:(NSInteger)second; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFDebug.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFDebug.h.svn-base new file mode 100644 index 0000000..f28c7ef --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFDebug.h.svn-base @@ -0,0 +1,31 @@ +// +// MOBFDebug.h +// MOBFoundation +// +// Created by 冯 鸿杰 on 15/2/4. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * 调试工具类 + */ +@interface MOBFDebug : NSObject + +/** + * 输出调试日志 + * + * @param format 日志格式 + * @param ... 日志参数 + */ ++ (void)log:(NSString *)format, ... NS_FORMAT_FUNCTION(1, 2); + +/** + * 观察释放对象,指定类型的被释放对象会打印在Console中。 + * + * @param type 对象类型 + */ ++ (void)watchDeallocObjectWithType:(Class)type; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFDevice.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFDevice.h.svn-base new file mode 100644 index 0000000..24e9c91 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFDevice.h.svn-base @@ -0,0 +1,183 @@ +// +// MOBFDeviceUtils.h +// MOBFoundation +// +// Created by vimfung on 15-1-19. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import +#import + +/** + * 网络类型 + */ +typedef NS_ENUM(NSUInteger, MOBFNetworkType) +{ + /** + * 无网咯 + */ + MOBFNetworkTypeNone = 0, + /** + * 蜂窝网络 + */ + MOBFNetworkTypeCellular = 2, + /** + * WIFI + */ + MOBFNetworkTypeWifi = 1, + /** + * 2G网络 + */ + MOBFNetworkTypeCellular2G = 3, + /** + * 3G网络 + */ + MOBFNetworkTypeCellular3G = 4, + /** + * 4G网络 + */ + MOBFNetworkTypeCellular4G = 5, +}; + +/** + * 设备工具类 + */ +@interface MOBFDevice : NSObject + +/** + * 获取网卡物理地址 + * + * @return 网卡物理地址 + */ ++ (NSString *)macAddress; + +/** + * 获取设备型号 + * + * @return 设备型号 + */ ++ (NSString *)deviceModel; + +/** + * 获取当前网络类型 + * + * @return 网络类型 + */ ++ (MOBFNetworkType)currentNetworkType; + +/** + * 获取手机运营商代码 + * + * @return 手机运营商代码 + */ ++ (NSString *)carrier; + +/** + * 获取手机运营商名称 + * + * @return 运营商名称 + */ ++ (NSString *)carrierName; + +/** + * 获取手机运营商国家码 + * + * @return 运营商国家码 + */ ++ (NSString *)mobileCountryCode; + +/** + * 获取手机运营商网络编号 + * + * @return 运营商网络编号 + */ ++ (NSString *)mobileNetworkCode; + +/** + * 与当前系统版本比较 + * + * @param other 需要对比的版本 + * + * @return < 0 低于指定版本; = 0 跟指定版本相同;> 0 高于指定版本 + */ ++ (NSInteger)versionCompare:(NSString *)other; + +/** + * 判断是否已经越狱 + * + * @return YES 已经越狱,NO 尚未越狱 + */ ++ (BOOL)hasJailBroken; + +/** + * 获取运行进程信息 + * + * @return 进程信息列表 + */ ++ (NSArray *)runningProcesses; + +/** + * 判断当前设备是否为iPad + * + * @return YES 是,NO 否 + */ ++ (BOOL)isPad; + +/** + * 获取设备唯一标识 + * + * @return 标识码 + */ ++ (NSString *)duid; + +/** + * 获取屏幕真实尺寸 + * + * @return 屏幕尺寸 + */ ++ (CGSize)nativeScreenSize; + +/** + * 获取无线局域网的服务集标识(WIFI名称) + * + * @return 服务集标识 + */ ++ (NSString *)ssid; + +/** + * 获取基础服务集标识(站点的MAC地址) + * + * @return 基础服务集标识 + */ ++ (NSString *)bssid; + +/** + * 获取广告商ID + * + * @return 广告商ID + */ ++ (NSString *)idfa; + +/** + * 获取当前语言 + * + * @return 语言描述 + */ ++ (NSString *)currentLanguage; + +/** + * 获取设备IP地址 + * + * @return IP地址 + */ ++ (NSString *)ipAddress; + +/** + * 获取开发商ID + * + * @return 开发商ID + */ ++ (NSString *)idfv; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFHttpPostedFile.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFHttpPostedFile.h.svn-base new file mode 100644 index 0000000..a27c273 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFHttpPostedFile.h.svn-base @@ -0,0 +1,63 @@ +// +// MOBHttpPostedFile.h +// MOBFoundation +// +// Created by 冯 鸿杰 on 15/1/30. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * @brief HTTP上传文件 + */ +@interface MOBFHttpPostedFile : NSObject + +/** + * @brief 文件名称 + */ +@property (nonatomic, copy) NSString *fileName; + +/** + * @brief 内容类型 + */ +@property (nonatomic, copy) NSString *contentType; + +/** + * @brief 文件数据 + */ +@property (nonatomic, retain) NSData *fileData; + +/** + * @brief 内容传输编码 + */ +@property (nonatomic, copy) NSString *transferEncoding; + +/** + * @brief 创建上传文件 + * + * @param fileName 文件名称 + * @param data 文件数据 + * @param contentType 内容类型 + * @param transferEncoding 传输编码 + * + * @return 上传文件信息 + */ ++ (MOBFHttpPostedFile *)httpPostedFileByFileName:(NSString *)fileName + data:(NSData *)data + contentType:(NSString *)contentType + transferEncoding:(NSString *)transferEncoding; + +/** + * @brief 创建上传文件 + * + * @param path 文件路径 + * @param contentType 内容类型 + * + * @return 上传文件信息 + */ ++ (MOBFHttpPostedFile *)httpPostedFileByPath:(NSString *)path + contentType:(NSString *)contentType; + + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFHttpService.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFHttpService.h.svn-base new file mode 100644 index 0000000..43db364 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFHttpService.h.svn-base @@ -0,0 +1,222 @@ +// +// MOBFHttpService.h +// MOBFoundation +// +// Created by vimfung on 15-1-20. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +@class MOBFHttpService; + +/** + * GET方式 + */ +extern NSString *const kMOBFHttpMethodGet; + +/** + * POST方式 + */ +extern NSString *const kMOBFHttpMethodPost; + +/** + * DELETE方式 + */ +extern NSString *const kMOBFHttpMethodDelete; + +/** + * HEAD方式 + */ +extern NSString *const kMOBFHttpMethodHead; + +/** + * HTTP返回事件 + * + * @param response 回复对象 + * @param responseData 回复数据 + */ +typedef void(^MOBFHttpResultEvent) (NSHTTPURLResponse *response, NSData *responseData); + +/** + * HTTP错误事件 + * + * @param error 错误信息 + */ +typedef void(^MOBFHttpFaultEvent) (NSError *error); + +/** + * HTTP上传数据事件 + * + * @param totalBytes 总字节数 + * @param loadedBytes 上传字节数据 + */ +typedef void(^MOBFHttpUploadProgressEvent) (int64_t totalBytes, int64_t loadedBytes); + +/** + * HTTP服务类 + */ +@interface MOBFHttpService : NSObject + +/** + * @brief 提交方式,默认为GET + */ +@property (nonatomic, copy) NSString *method; + +/** + 超时时间 + */ +@property (nonatomic) NSTimeInterval timeout; + +/** + * @brief 是否缓存回复对象,默认为YES + */ +@property (nonatomic) BOOL isCacheResponse; + +/** + * 自动填充请求表单,默认为YES,如果为NO则表示使用自定义的方式发起请求。 + */ +@property (nonatomic) BOOL autoFillRequestForm; + +/** + * 初始化HTTP服务 + * + * @param urlString URL地址字符串 + * + * @return HTTP服务对象 + */ +- (id)initWithURLString:(NSString *)urlString; + +/** + * 初始化HTTP服务 + * + * @param URL URL地址对象 + * + * @return HTTP服务对象 + */ +- (id)initWithURL:(NSURL *)URL; + +/** + * 初始化HTTP服务 + * + * @param request 请求对象 + * + * @return HTTP服务对象 + */ +- (id)initWithRequest:(NSURLRequest *)request; + +/** + * 添加HTTP头 + * + * @param header 名称 + * @param value 值 + */ +- (void)addHeader:(NSString *)header value:(NSString *)value; + +/** + * 添加HTTP头集合 + * + * @param headers 头集合 + */ +- (void)addHeaders:(NSDictionary *)headers; + +/** + * 添加参数 + * + * @param value 参数值 + * @param key 参数名字 + */ +- (void)addParameter:(id)value forKey:(NSString *)key; + +/** + * 添加多个参数 + * + * @param parameters 参数集合 + */ +- (void)addParameters:(NSDictionary *)parameters; + +/** + * 添加上传文件参数 + * + * @param fileData 文件数据 + * @param fileName 文件名称 + * @param mimeType MIME类型 + * @param transferEncoding 传输编码 + * @param key 参数名字 + */ +- (void)addFileParameter:(NSData *)fileData + fileName:(NSString *)fileName + mimeType:(NSString *)mimeType + transferEncoding:(NSString *)transferEncoding + forKey:(NSString *)key; + +/** + * 设置请求体数据,可以为NSData或者NSInputStream + * + * @param body 请求体数据 + */ +- (void)setBody:(id)body; + +/** + * 发送请求 + * + * @param resultHandler 返回回调 + * @param faultHandler 错误回调 + * @param uploadProgressHandler 上传数据进度回调 + */ +- (void)sendRequestOnResult:(MOBFHttpResultEvent)resultHandler + onFault:(MOBFHttpFaultEvent)faultHandler + onUploadProgress:(MOBFHttpUploadProgressEvent)uploadProgressHandler; + +/** + * 取消请求 + */ +- (void)cancelRequest; + +/** + * 发送HTTP请求 + * + * @param urlString 请求地址 + * @param method 请求方式 + * @param parameters 请求参数 + * @param headers 请求头集合 + * @param resultHandler 返回回调 + * @param faultHandler 错误回调 + * @param uploadProgressHandler 上传数据进度回调 + * + * @return HTTP服务对象 + */ ++ (MOBFHttpService *)sendHttpRequestByURLString:(NSString *)urlString + method:(NSString *)method + parameters:(NSDictionary *)parameters + headers:(NSDictionary *)headers + onResult:(MOBFHttpResultEvent)resultHandler + onFault:(MOBFHttpFaultEvent)faultHandler + onUploadProgress:(MOBFHttpUploadProgressEvent)uploadProgressHandler; + + +/** + * 发送HTTP请求 + * + * @param urlString 请求地址 + * @param method 请求方式 + * @param parameters 请求参数 + * @param headers 请求头集合 + * @param timeout 请求超时 + * @param resultHandler 返回回调 + * @param faultHandler 错误回调 + * @param uploadProgressHandler 上传数据进度回调 + * + * @return HTTP服务对象 + */ ++ (MOBFHttpService *)sendHttpRequestByURLString:(NSString *)urlString + method:(NSString *)method + parameters:(NSDictionary *)parameters + headers:(NSDictionary *)headers + timeout:(NSTimeInterval)timeout + onResult:(MOBFHttpResultEvent)resultHandler + onFault:(MOBFHttpFaultEvent)faultHandler + onUploadProgress:(MOBFHttpUploadProgressEvent)uploadProgressHandler; + + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFImage.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFImage.h.svn-base new file mode 100644 index 0000000..447bc58 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFImage.h.svn-base @@ -0,0 +1,114 @@ +// +// MOBFImageUtils.h +// MOBFoundation +// +// Created by vimfung on 15-1-19. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import +#import + +/** + * 圆角类型 + */ +typedef NS_ENUM(NSUInteger, MOBFOvalType) +{ + /** + * 无圆角 + */ + MOBFOvalTypeNone = 0x00, + /** + * 左上角 + */ + MOBFOvalTypeLeftTop = 0x01, + /** + * 左下角 + */ + MOBFOvalTypeLeftBottom = 0x02, + /** + * 右上角 + */ + MOBFOvalTypeRightTop = 0x04, + /** + * 右下角 + */ + MOBFOvalTypeRightBottom = 0x08, + /** + * 全部 + */ + MOBFOvalTypeAll = MOBFOvalTypeLeftTop | MOBFOvalTypeLeftBottom | MOBFOvalTypeRightTop | MOBFOvalTypeRightBottom +}; + +/** + * 图像工具类 + */ +@interface MOBFImage : NSObject + +/** + * 裁剪图片 + * + * @param image 原始图片 + * @param rect 裁剪范围 + * + * @return 裁剪后图片 + */ ++ (UIImage *)clipImage:(UIImage *)image withRect:(CGRect)rect; + +/** + * 将图片边角裁剪为圆角 + * + * @param image 原始图片 + * @param size 图像尺寸 + * @param ovalWidth 圆角宽度 + * @param ovalHeight 圆角高度 + * @param ovalType 圆角类型 + * + * @return 裁剪后图像 + */ ++ (UIImage *)roundRectImage:(UIImage *)image + withSize:(CGSize)size + ovalWidth:(CGFloat)ovalWidth + ovalHeight:(CGFloat)ovalHeight + ovalType:(MOBFOvalType)ovalType; + +/** + * 等比缩放图片 + * + * @param image 原始图片 + * @param size 缩放的图片尺寸 + * + * @return 缩放后图片 + */ ++ (UIImage *)scaleImage:(UIImage *)image withSize:(CGSize)size; + +/** + * 获取图片对象 + * + * @param name 图片名称 + * @param bundle 资源包对象 + * + * @return 图片对象 + */ ++ (UIImage *)imageName:(NSString *)name bundle:(NSBundle *)bundle; + +/** + * 通过指定视图生成图片 + * + * @param view 视图对象 + * + * @return 图片对象 + */ ++ (UIImage *)imageByView:(UIView *)view; + +/** + * 通过制定视图生成图片 + * + * @param view 视图对象 + * @param opaque 是否为不透明图片,YES,不透明,NO,透明 + * + * @return 图片对象 + */ ++ (UIImage *)imageByView:(UIView *)view opaque:(BOOL)opaque; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFImageGetter.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFImageGetter.h.svn-base new file mode 100644 index 0000000..58c216e --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFImageGetter.h.svn-base @@ -0,0 +1,64 @@ +// +// MOBFImageGetter.h +// MOBFoundation +// +// Created by fenghj on 16/1/21. +// Copyright © 2016年 MOB. All rights reserved. +// + +#import "MOBFImageObserver.h" +#import "MOBFImageServiceTypeDef.h" +#import + +/** + * 图片获取器 + */ +@interface MOBFImageGetter : NSObject + +/** + * 获取共享图片服务实例 + * + * @return 图片服务实例 + */ ++ (instancetype)sharedInstance; + +/** + * 是否存在图片缓存 + * + * @param url 图片URL + * + * @return YES 表示图片已缓存,NO 图片未缓存 + */ +- (BOOL)existsImageCacheWithURL:(NSURL *)url; + +/** + * 获取图片 + * + * @param url 图片路径 + * @param resultHandler 返回事件 + * + * @return 服务观察者 + */ +- (MOBFImageObserver *)getImageWithURL:(NSURL *)url + result:(MOBFImageGetterResultHandler)resultHandler; + + +/** + 获取图片数据 + + @param url 图片路径 + @param resultHandler 返回事件 + + @return 服务观察者 + */ +- (MOBFImageObserver *)getImageDataWithURL:(NSURL *)url + result:(MOBFImageDataGetterResultHandler)resultHandler; + +/** + * 移除图片观察者 + * + * @param imageObserver 图片观察者 + */ +- (void)removeImageObserver:(MOBFImageObserver *)imageObserver; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFImageObserver.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFImageObserver.h.svn-base new file mode 100644 index 0000000..36460f5 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFImageObserver.h.svn-base @@ -0,0 +1,21 @@ +// +// MOBFImageObserver.h +// MOBFoundation +// +// Created by fenghj on 16/1/21. +// Copyright © 2016年 MOB. All rights reserved. +// + +#import + +/** + * 图片观察者 + */ +@interface MOBFImageObserver : NSObject + +/** + * 图片链接 + */ +@property (nonatomic, strong, readonly) NSURL *url; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFImageServiceTypeDef.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFImageServiceTypeDef.h.svn-base new file mode 100644 index 0000000..d49b241 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFImageServiceTypeDef.h.svn-base @@ -0,0 +1,30 @@ +// +// MOBFImageServiceTypeDef.h +// MOBFoundation +// +// Created by fenghj on 15/6/8. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#ifndef MOBFoundation_MOBFImageServiceTypeDef_h +#define MOBFoundation_MOBFImageServiceTypeDef_h + +@class UIImage; + +/** + * 图片加载返回 + * + * @param image 图片对象 + * @param error 错误信息 + */ +typedef void (^MOBFImageGetterResultHandler)(UIImage *image, NSError *error); + +/** + * 图片加载返回 + * + * @param imageData 图片数据 + * @param error 错误信息 + */ +typedef void (^MOBFImageDataGetterResultHandler)(NSData *imageData, NSError *error); + +#endif diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFJSContext.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFJSContext.h.svn-base new file mode 100644 index 0000000..4689155 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFJSContext.h.svn-base @@ -0,0 +1,65 @@ +// +// MOBFJSContext.h +// MOBFoundation +// +// Created by 冯 鸿杰 on 15/2/27. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import +#import "MOBFJSTypeDefine.h" + +/** + * JavaScript上下文环境 + */ +@interface MOBFJSContext : NSObject + +/** + * 获取默认的上下文环境 + * + * @return JS上下文环境 + */ ++ (instancetype)defaultContext; + +/** + * 注册方法 + * + * @param name 方法名称 + * @param block 方法执行 + */ +- (void)registerJSMethod:(NSString *)name block:(MOBFJSMethodIMP)block; + +/** + * 调用方法 + * + * @param name 方法名称 + * @param arguments 参数 + * + * @return 返回值 + */ +- (NSString *)callJSMethod:(NSString *)name arguments:(NSArray *)arguments; + +/** + * 加载插件 + * + * @param path 插件脚本文件路径 + * @param name 插件名称 + */ +- (void)loadPluginWithPath:(NSString *)path forName:(NSString *)name; + +/** + * 加载插件 + * + * @param content 插件脚本内容 + * @param name 插件名称 + */ +- (void)loadPlugin:(NSString *)content forName:(NSString *)name; + +/** + * 执行脚本 + * + * @param script 脚本 + */ +- (void)runScript:(NSString *)script; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFJSTypeDefine.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFJSTypeDefine.h.svn-base new file mode 100644 index 0000000..e8f38ac --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFJSTypeDefine.h.svn-base @@ -0,0 +1,19 @@ +// +// MOBFJSTypeDefine.h +// MOBFoundation +// +// Created by 冯 鸿杰 on 15/2/27. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#ifndef MOBFoundation_MOBFJSTypeDefine_h +#define MOBFoundation_MOBFJSTypeDefine_h + +/** + * JS方法实现 + * + * @param params 传入参数 + */ +typedef void(^MOBFJSMethodIMP) (NSArray *arguments); + +#endif diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFJson.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFJson.h.svn-base new file mode 100644 index 0000000..3d6eca7 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFJson.h.svn-base @@ -0,0 +1,72 @@ +// +// MOBFJson.h +// MOBFoundation +// +// Created by vimfung on 15-1-20. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * JSON工具类 + */ +@interface MOBFJson : NSObject + +/** + * 通过JSON字符串反序列化为对象 + * + * @param jsonString JSON字符串 + * + * @return 对象 + */ ++ (id)objectFromJSONString:(NSString *)jsonString; + +/** + * 通过JSON数据反序列化为对象 + * + * @param jsonData JSON数据 + * + * @return 对象 + */ ++ (id)objectFromJSONData:(NSData *)jsonData; + +/** + * 通过对象序列化为JSON字符串 + * + * @param object 对象 + * + * @return JSON字符串 + */ ++ (NSString *)jsonStringFromObject:(id)object; + +/** + * 通过对象序列化为JSON字符串 + * + * @param object 对象 + * @param block 未解析类型回调 + * + * @return JSON字符串 + */ ++ (NSString *)jsonStringFromObject:(id)object serializeUnsupportedClassesUsingBlock:(id(^)(id object))block; + +/** + * 通过对象序列化为JSON数据 + * + * @param object 对象 + * + * @return JSON数据 + */ ++ (NSData *)jsonDataFromObject:(id)object; + +/** + * 通过对象序列化为JSON数据 + * + * @param object 对象 + * @param block 未解析类型回调 + * + * @return JSON数据 + */ ++ (NSData *)jsonDataFromObject:(id)object serializeUnsupportedClassesUsingBlock:(id(^)(id object))block; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFNetworkFlowInfo.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFNetworkFlowInfo.h.svn-base new file mode 100644 index 0000000..52bdca6 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFNetworkFlowInfo.h.svn-base @@ -0,0 +1,63 @@ +// +// MOBFNetworkFlowInfo.h +// MOBFoundation +// +// Created by fenghj on 15/12/17. +// Copyright © 2015年 MOB. All rights reserved. +// + +#import + +/** + * 网络流量信息 + */ +@interface MOBFNetworkFlowInfo : NSObject + +/** + * 接收到的字节数 + */ +@property (nonatomic, readonly) NSUInteger receivedBytes; + +/** + * 发送字节数 + */ +@property (nonatomic, readonly) NSUInteger sentBytes; + +/** + * 最后的更新时间 + */ +@property (nonatomic, strong, readonly) NSDate *lastChangeTime; + +/** + * WIFI下的接收字节数 + */ +@property (nonatomic, readonly) NSUInteger WIFIReceivedBytes; + +/** + * WIFI下的发送字节数 + */ +@property (nonatomic, readonly) NSUInteger WIFISentBytes; + +/** + * 蜂窝网络下的接收字节数 + */ +@property (nonatomic, readonly) NSUInteger WWANReceivedBytes; + +/** + * 蜂窝网络下的发送字节数 + */ +@property (nonatomic, readonly) NSUInteger WWANSentBytes; + +/** + * 获取网络流量信息共享实例 + * + * @return 网络流量信息对象 + */ ++ (MOBFNetworkFlowInfo *)sharedInstance; + +/** + * 更新信息 + */ +- (void)update; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFNotificationCenter.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFNotificationCenter.h.svn-base new file mode 100644 index 0000000..0f149bc --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFNotificationCenter.h.svn-base @@ -0,0 +1,52 @@ +// +// MOBFCore.h +// MOBFoundation +// +// Created by fenghj on 15/8/31. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * 应用程序崩溃通知 + */ +extern NSString *const MOBFApplicationCrashNotif; + +/** + * 核心对象 + */ +@interface MOBFNotificationCenter : NSObject + +/** + * 添加观察者 + * + * @param observer 观察者对象 + * @param selector 处理器方法 + * @param name 通知名称 + * @param object 对象信息 + */ ++ (void)addObserver:(NSObject *)observer + selector:(SEL)selector + name:(NSString *)name + object:(id)object; + +/** + * 移除观察者 + * + * @param observer 观察者对象 + */ ++ (void)removeObserver:(NSObject *)observer; + +/** + * 移除观察者 + * + * @param observer 观察者对象 + * @param name 通知名称 + * @param object 对象信息 + */ ++ (void)removeObserver:(NSObject *)observer + name:(NSString *)name + object:(id)object; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFNumber.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFNumber.h.svn-base new file mode 100644 index 0000000..23bb0ae --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFNumber.h.svn-base @@ -0,0 +1,25 @@ +// +// MOBFNumberUtils.h +// MOBFoundation +// +// Created by vimfung on 15-1-20. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * 数值工具类 + */ +@interface MOBFNumber : NSObject + +/** + * 获取随机整型值 + * + * @param max 最大随机数 + * + * @return 随机整数 + */ ++ (NSInteger)randomInteger:(NSInteger)max; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFOAuthService.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFOAuthService.h.svn-base new file mode 100644 index 0000000..986e28b --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFOAuthService.h.svn-base @@ -0,0 +1,67 @@ +// +// MOBFOAuthService.h +// MOBFoundation +// +// Created by fenghj on 15/6/9. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * OAuth服务 + */ +@interface MOBFOAuthService : MOBFHttpService + +/** + * 设置密钥 + * + * @param consumerSecret 消费者密钥,不允许为nil + * @param oauthTokenSecret 令牌密钥,如果尚未取得令牌密钥,可以传入nil + */ +- (void)setSecretByConsumerSecret:(NSString *)consumerSecret + oauthTokenSecret:(NSString *)oauthTokenSecret; + +/** + * 添加OAuth参数 + * + * @param value 参数值 + * @param key 参数名字 + */ +- (void)addOAuthParameter:(id)value forKey:(NSString *)key; + +/** + * 添加OAuth参数 + * + * @param oauthParameters OAuth参数集合 + */ +- (void)addOAuthParameters:(NSDictionary *)oauthParameters; + +/** + * 发送HTTP请求 + * + * @param urlString 请求地址 + * @param method 请求方式 + * @param parameters 请求参数 + * @param headers 请求头集合 + * @param oauthParameters OAuth请求参数 + * @param consumerSecret 消费者密钥 + * @param oauthSecret OAuth令牌密钥 + * @param resultHandler 返回回调 + * @param faultHandler 错误回调 + * @param uploadProgressHandler 上传数据进度回调 + * + * @return HTTP服务对象 + */ ++ (MOBFOAuthService *)sendRequestByURLString:(NSString *)urlString + method:(NSString *)method + parameters:(NSDictionary *)parameters + headers:(NSDictionary *)headers + oauthParameters:(NSDictionary *)oauthParameters + consumerSecret:(NSString *)consumerSecret + oauthTokenSecret:(NSString *)oauthTokenSecret + onResult:(MOBFHttpResultEvent)resultHandler + onFault:(MOBFHttpFaultEvent)faultHandler + onUploadProgress:(MOBFHttpUploadProgressEvent)uploadProgressHandler; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFPluginManager.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFPluginManager.h.svn-base new file mode 100644 index 0000000..e3229d4 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFPluginManager.h.svn-base @@ -0,0 +1,66 @@ +// +// MOBFPluginManager.h +// MOBFoundation +// +// Created by fenghj on 15/6/2. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import +#import "IMOBFPlugin.h" + +/** + * 插件创建事件处理 + * + * @return 插件对象 + */ +typedef id(^MOBFPluginConstructHandler) (); + +/** + * 插件管理器 + */ +@interface MOBFPluginManager : NSObject + +/** + * 获取默认的插件管理器 + * + * @return 插件管理器 + */ ++ (instancetype) defaultManager; + +/** + * 注册插件 + * + * @param pluginConstructHandler 插件构造事件处理器 + * @param key 插件标识 + * + * @return YES 表示注册成功,NO 表示注册失败,有可能已存在此插件 + */ +- (BOOL)registerPlugin:(MOBFPluginConstructHandler)pluginConstructHandler forKey:(NSString *)key; + +/** + * 判断是否已经注册插件 + * + * @param key 插件标识 + * + * @return YES 表示已经注册, NO 表示尚未注册 + */ +- (BOOL)isRegisterPluginForKey:(NSString *)key; + +/** + * 获取插件对象 + * + * @param key 插件标识 + * + * @return 插件对象,nil 表示该标志的插件不存在 + */ +- (id)pluginForKey:(NSString *)key; + +/** + * 卸载插件 + * + * @param key 插件标识 + */ +- (void)unloadPluginForKey:(NSString *)key; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFRSAHelper.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFRSAHelper.h.svn-base new file mode 100644 index 0000000..37a37b9 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFRSAHelper.h.svn-base @@ -0,0 +1,65 @@ +// +// MOBFRSAHelper.h +// MOBFoundation +// +// Created by fenghj on 15/7/29. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import +#import "MOBFRSAKey.h" + + +/** + * RSA加解密助手 + */ +@interface MOBFRSAHelper : NSObject + +/** + * 密钥信息 + */ +@property (nonatomic, readonly) MOBFRSAKey *key; + +/** + * 初始化RSA加密器 + * + * @param keySize 密钥长度 + * + * @return 加密器对象 + */ +- (instancetype)initWithKeySize:(int)keySize; + +/** + * 初始化RSA加密器 + * + * @param keySize 密钥长度 + * @param publicKey 公钥 + * @param privateKey 私钥 + * @param modulus 模数 + * + * @return 加密器对象 + */ +- (instancetype)initWithKeySize:(int)keySize + publicKey:(NSString *)publicKey + privateKey:(NSString *)privateKey + modulus:(NSString *)modulus; + +/** + * 加密数据 + * + * @param data 数据 + * + * @return 加密后数据 + */ +- (NSData *)encryptWithData:(NSData *)data; + +/** + * 解密数据 + * + * @param data 加密后数据 + * + * @return 解密后数据 + */ +- (NSData *)decryptWithData:(NSData *)data; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFRSAKey.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFRSAKey.h.svn-base new file mode 100644 index 0000000..d9e2c9f --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFRSAKey.h.svn-base @@ -0,0 +1,35 @@ +// +// MOBFRSAKey.h +// MOBFoundation +// +// Created by fenghj on 15/7/29. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +@class MOBFBigInteger; + +@interface MOBFRSAKey : NSObject + +/** + * bits in key + */ +@property (nonatomic) int bits; + +/** + * modulus + */ +@property (nonatomic, strong) MOBFBigInteger *n; + +/** + * public exponent + */ +@property (nonatomic, strong) MOBFBigInteger *e; + +/** + * private exponent + */ +@property (nonatomic, strong) MOBFBigInteger *d; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFRegex.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFRegex.h.svn-base new file mode 100644 index 0000000..8844fc9 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFRegex.h.svn-base @@ -0,0 +1,97 @@ +// +// MOBFRegex.h +// MOBFoundation +// +// Created by vimfung on 15-1-20. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * 替换处理 + * + * @param captureCount 捕获数量 + * @param capturedStrings 捕获字符串集合 + * @param capturedRanges 捕获字符串范围集合 + * @param stop 是否停止捕获标识 + * + * @return 替换后的字符串 + */ +typedef NSString *(^MOBFReplacingOccurrencesHandler) (NSInteger captureCount, NSString *const capturedStrings[captureCount], const NSRange capturedRanges[captureCount], volatile BOOL * const stop); + +/** + * 正则表达式选项 + */ +typedef NS_ENUM(NSUInteger, MOBFRegexOptions){ + /** + * 无设置 + */ + MOBFRegexOptionsNoOptions = 0, + /** + * 不区分大小写 + */ + MOBFRegexOptionsCaseless = 2, + /** + * 注释 + */ + MOBFRegexOptionsComments = 4, + /** + * 匹配点 + */ + MOBFRegexOptionsDotAll = 32, + /** + * 多行模式 + */ + MOBFRegexOptionsMultiline = 8, + /** + * Unicode字符 + */ + MOBFRegexOptionsUnicodeWordBoundaries = 256 +}; + +/** + * 正则表达式工具类 + */ +@interface MOBFRegex : NSObject + +/** + * 替换字符串 + * + * @param regex 正则表达式 + * @param string 原始字符串 + * @param block 块回调处理替换规则 + * + * @return 字符串 + */ ++ (NSString *)stringByReplacingOccurrencesOfRegex:(NSString *)regex + withString:(NSString *)string + usingBlock:(MOBFReplacingOccurrencesHandler)block; + +/** + * 匹配字符串 + * + * @param regex 正则表达式 + * @param options 表达式选项 + * @param range 匹配范围 + * @param string 原始字符串 + * + * @return YES 匹配,NO 不匹配 + */ ++ (BOOL)isMatchedByRegex:(NSString *)regex + options:(MOBFRegexOptions)options + inRange:(NSRange)range + withString:(NSString *)string; + +/** + * 匹配字符串 + * + * @param regex 正则表达式 + * @param string 原始字符串 + * + * @return 匹配的字符串集合 + */ ++ (NSArray *)captureComponentsMatchedByRegex:(NSString *)regex + withString:(NSString *)string; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFString.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFString.h.svn-base new file mode 100644 index 0000000..ca5d951 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFString.h.svn-base @@ -0,0 +1,107 @@ +// +// MOBFStringUtils.h +// MOBFoundation +// +// Created by vimfung on 15-1-16. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * 字符串工具 + */ +@interface MOBFString : NSObject + +/** + * URL编码 + * + * @param string 原始字符串 + * @param encoding 字符串编码 + * + * @return 编码后字符串 + */ ++ (NSString *)urlEncodeString:(NSString *)string forEncoding:(NSStringEncoding)encoding; + +/** + * URL解码 + * + * @param string 原始字符串 + * @param encoding 字符串编码 + * + * @return 解码后字符串 + */ ++ (NSString *)urlDecodeString:(NSString *)string forEncoding:(NSStringEncoding)encoding; + +/** + * 使用SHA1算法进行字符串签名 + * + * @param string 原始字符串 + * + * @return 签名后字符串 + */ ++ (NSString *)sha1String:(NSString *)string; + +/** + * 使用MD5算法进行字符串签名 + * + * @param string 原始字符串 + * + * @return 签名后字符串 + */ ++ (NSString *)md5String:(NSString *)string; + +/** + * 获取GUID字符串 + * + * @return GUID字符串 + */ ++ (NSString *)guidString; + +/** + * 使用HMAC-SHA1进行签名 + * + * @param string 原始字符串 + * @param key 密钥 + * + * @return 签名后的数据 + */ ++ (NSData *)dataByHMACSha1String:(NSString *)string forKey:(NSString *)key; + +/** + * 使用BASE64进行解码 + * + * @param string 原始字符串 + * + * @return 解码后数据 + */ ++ (NSData *)dataByBase64DecodeString:(NSString *)string; + +/** + * 判断字符串中是否包含链接 + * + * @param string 原始字符串 + * + * @return YES 表示包含URL,NO 表示不包含 + */ ++ (BOOL)containsURLByString:(NSString *)string; + +/** + * @brief 解析HTTP参数字符串,字符串格式为:参数名=参数值&参数名=参数值 + * + * @param string 参数字符串 + * + * @return 解析后字典对象 + */ ++ (NSDictionary *)parseURLParametersString:(NSString *)string; + +/** + * @brief 转换16进制字符串为NSData + * + * @param string 二进制流的16进制字符串 + * + * @return 二进制数据对象 + */ ++ (NSData *)dataByHexString:(NSString *)string; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFViewController.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFViewController.h.svn-base new file mode 100644 index 0000000..c03066a --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFViewController.h.svn-base @@ -0,0 +1,33 @@ +// +// MOBFViewControllerUtils.h +// MOBFoundation +// +// Created by vimfung on 15-1-19. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import +#import + +/** + * 视图控制器工具类 + */ +@interface MOBFViewController : NSObject + +/** + * 获取当前视图控制器 + * + * @return 视图控制器 + */ ++ (UIViewController *)currentViewController; + +/** + * 获取当前视图控制器 + * + * @param window 窗口 + * + * @return 视图控制器 + */ ++ (UIViewController *)currentViewControllerFromWindow:(UIWindow *)window; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFXml.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFXml.h.svn-base new file mode 100644 index 0000000..9a25ed9 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFXml.h.svn-base @@ -0,0 +1,48 @@ +// +// MOBFXml.h +// MOBFoundation +// +// Created by fenghj on 15/9/16. +// Copyright © 2015年 MOB. All rights reserved. +// + +#import + +@class MOBFXmlNode; + +/** + * XML工具类 + */ +@interface MOBFXml : NSObject + +/** + * 根节点 + */ +@property (nonatomic, strong, readonly) MOBFXmlNode *rootNode; + +/** + * 初始化XML实例对象 + * + * @param path XML文件路径 + * + * @return XML实例对象 + */ +- (instancetype)initWithPath:(NSString *)path; + +/** + * 初始化XML实例对象 + * + * @param string XML字符串描述 + * + * @return XML实例对象 + */ +- (instancetype)initWithString:(NSString *)string; + +/** + * 获取XML字典描述对象 + * + * @return 字典对象 + */ +- (NSDictionary *)dictionaryValue; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFXmlNode.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFXmlNode.h.svn-base new file mode 100644 index 0000000..630ffb0 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFXmlNode.h.svn-base @@ -0,0 +1,48 @@ +// +// MOBFXmlNode.h +// MOBFoundation +// +// Created by fenghj on 15/9/17. +// Copyright © 2015年 MOB. All rights reserved. +// + +#import + +/** + * XML节点 + */ +@interface MOBFXmlNode : NSObject + +/** + * 父级节点 + */ +@property (nonatomic, weak) MOBFXmlNode *parentNode; + +/** + * 节点名称 + */ +@property (nonatomic, copy) NSString *name; + +/** + * 属性集合 + */ +@property (nonatomic, strong, readonly) NSMutableDictionary *attributes; + +/** + * 子节点 + */ +@property (nonatomic, strong, readonly) NSMutableArray *children; + +/** + * 文本信息 + */ +@property (nonatomic, copy) NSString *text; + +/** + * 获取节点的字典结构描述 + * + * @return 字典结构 + */ +- (NSDictionary *)dictionaryValue; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFoundation.h.svn-base b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFoundation.h.svn-base new file mode 100644 index 0000000..72f51a7 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/.svn/text-base/MOBFoundation.h.svn-base @@ -0,0 +1,36 @@ +// +// MOBFoundation.h +// MOBFoundation +// +// Created by vimfung on 15-1-16. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#ifndef MOBFoundation_MOBFoundation_h +#define MOBFoundation_MOBFoundation_h + +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import + +#import +#import +#import +#import + +#import +#import + +#import + +#endif diff --git a/Support/Required/MOBFoundation.framework/Headers/IMOBFPlugin.h b/Support/Required/MOBFoundation.framework/Headers/IMOBFPlugin.h new file mode 100755 index 0000000..81247f6 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/IMOBFPlugin.h @@ -0,0 +1,30 @@ +// +// IMOBFPlugin.h +// MOBFoundation +// +// Created by fenghj on 15/6/2. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * 插件协议 + */ +@protocol IMOBFPlugin + +@required + +/** + * 插件加载时调用 + * + * @param key 插件标识 + */ +- (void)load:(NSString *)key; + +/** + * 插件卸载时调用 + */ +- (void)unload; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFApplication.h b/Support/Required/MOBFoundation.framework/Headers/MOBFApplication.h new file mode 100755 index 0000000..58302a8 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFApplication.h @@ -0,0 +1,79 @@ +// +// MOBFApplicationUtils.h +// MOBFoundation +// +// Created by vimfung on 15-1-20. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * 应用工具类 + */ +@interface MOBFApplication : NSObject + +/** + * 获取应用名称 + * + * @return 应用名称 + */ ++ (NSString *)name; + +/** + * 获取应用包名 + * + * @return 包名 + */ ++ (NSString *)bundleId; + +/** + * 获取应用编译版本 + * + * @return 编译版本 + */ ++ (NSString *)buildVersion; + +/** + * 获取应用版本号 + * + * @return 应用版本号 + */ ++ (NSString *)shortVersion; + +/** + * 获取应用版本号 + * + * @return 版本号 + */ ++ (NSString *)version __deprecated_msg("use [buildVersion] method instead"); + +/** + * 检测是否启用ATS功能 + */ ++ (BOOL)enabledATS; + +/** + * 获取应用运行经过的时间(单位:毫秒) + * + * @return 经过时间 + */ ++ (uint64_t)elapsedTime; + +/** + * 判断链接是否能打开 + * + * @param url 链接 + * + * @return YES 可以打开,NO 不能打开 + */ ++ (BOOL)canOpenUrl:(NSURL *)url; + +/** + * 打开链接 + * + * @param url 链接 + */ ++ (void)openUrl:(NSURL *)url; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFColor.h b/Support/Required/MOBFoundation.framework/Headers/MOBFColor.h new file mode 100755 index 0000000..e334508 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFColor.h @@ -0,0 +1,35 @@ +// +// MOBFColorUtils.h +// MOBFoundation +// +// Created by vimfung on 15-1-19. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import +#import + +/** + * 颜色工具类 + */ +@interface MOBFColor : NSObject + +/** + * 获取颜色对象 + * + * @param rgb RGB颜色值 + * + * @return 颜色对象 + */ ++ (UIColor *)colorWithRGB:(NSUInteger)rgb; + +/** + * 获取颜色对象 + * + * @param argb ARGB颜色值 + * + * @return 颜色对象 + */ ++ (UIColor *)colorWithARGB:(NSUInteger)argb; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFData.h b/Support/Required/MOBFoundation.framework/Headers/MOBFData.h new file mode 100755 index 0000000..15729f3 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFData.h @@ -0,0 +1,188 @@ +// +// MOBFDataUtils.h +// MOBFoundation +// +// Created by vimfung on 15-1-16. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import +#import +#import + +/** + * 数据工具类 + */ +@interface MOBFData : NSObject + +/** + * 使用HMAC-SHA1进行加密 + * + * @param data 原始数据 + * @param key 密钥 + * + * @return 加密后数据 + */ ++ (NSData *)hmacSha1Data:(NSData *)data forKey:(NSData *)key; + +/** + * 对数据进行MD5签名 + * + * @param data 原始数据 + * + * @return 签名后数据 + */ ++ (NSData *)md5Data:(NSData *)data; + +/** + * 对数据进行AES128加密 + * + * @param data 原始数据 + * @param key 密钥 + * @param encoding 字符串编码 + * + * @return 加密后数据 + */ ++ (NSData *)aes128EncryptData:(NSData *)data + key:(NSString *)key + encoding:(NSStringEncoding)encoding; + +/** + * 对数据进行AES128解密 + * + * @param data 原始数据 + * @param key 密钥 + * @param encoding 字符串编码 + * + * @return 解密后数据 + */ ++ (NSData *)aes128DecryptData:(NSData *)data + key:(NSString *)key + encoding:(NSStringEncoding)encoding; + +/** + * 对数据进行AES128加密 + * + * @param data 原始数据 + * @param key 密钥 + * @param options 选项 + * + * @return 加密后数据 + */ ++ (NSData *)aes128EncryptData:(NSData *)data + key:(NSData *)key + options:(CCOptions)options; + +/** + * 对数据进行AES128解密 + * + * @param data 原始数据 + * @param key 密钥 + * @param options 选项 + * + * @return 解密后数据 + */ ++ (NSData *)aes128DecryptData:(NSData *)data + key:(NSData *)key + options:(CCOptions)options; + +/** + * 使用GZip压缩数据 + * + * @param data 原始数据 + * + * @return 压缩后数据 + */ ++ (NSData *)compressDataUsingGZip:(NSData *)data; + +/** + * 使用GZip解压缩数据 + * + * @param data 原始数据 + * + * @return 解压缩后数据 + */ ++ (NSData *)uncompressDataUsingGZip:(NSData *)data; + +/** + * 对数据进行MD5签名 + * + * @param data 原始数据 + * + * @return 签名后字符串 + */ ++ (NSString *)stringByMD5Data:(NSData *)data; + +/** + * 使用BASE64编码数据 + * + * @param data 原始数据 + * + * @return 编码后字符串 + */ ++ (NSString *)stringByBase64EncodeData:(NSData *)data; + +/** + * 对数据进行CRC32校验 + * + * @param data 数据对象 + * + * @return 校验值 + */ ++ (uLong)valueByCRC32Data:(NSData *)data; + +/** + * 对数据进行CRC32检验 + * + * @param data 原始数据 + * + * @return 检验值 + */ ++ (NSString *)stringByCRC32Data:(NSData *)data; + +/** + * 将数据转换成16进制字符串 + * + * @param data 原始数据 + * + * @return 字符串 + */ ++ (NSString *)hexStringByData:(NSData *)data; + +/** + * 写入一个32位整数到数据对象中 + * + * @param value 整数值 + * @param data 数据对象 + */ ++ (void)writeInt32:(int32_t)value toData:(NSMutableData *)data; + +/** + * 写入一个16位整数到数据对象中 + * + * @param value 整数值 + * @param data 数据对象 + */ ++ (void)writeInt16:(int16_t)value toData:(NSMutableData *)data; + +/** + * 读取一个16位整数 + * + * @param data 数据对象 + * @param offset 偏移位置 + * + * @return 短整型数据 + */ ++ (int16_t)readInt16FromData:(NSData *)data offset:(NSInteger)offset; + +/** + * 读取一个32位整数 + * + * @param data 数据对象 + * @param offset 偏移位置 + * + * @return 整型数据 + */ ++ (int32_t)readInt32FromData:(NSData *)data offset:(NSInteger)offset; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFDataService.h b/Support/Required/MOBFoundation.framework/Headers/MOBFDataService.h new file mode 100755 index 0000000..29164f7 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFDataService.h @@ -0,0 +1,100 @@ +// +// MOBFDataService.h +// MOBFoundation +// +// Created by vimfung on 15-1-21. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * 数据服务 + */ +@interface MOBFDataService : NSObject + +/** + * 获取数据服务共享实例对象 + * + * @return 数据服务对象 + */ ++ (MOBFDataService *)sharedInstance; + +/** + * 设置共享数据 + * + * @param data 数据 + * @param key 标识 + */ +- (void)setSharedData:(id)data forKey:(NSString *)key; + +/** + * 获取共享数据 + * + * @param key 标识 + * + * @return 数据 + */ +- (id)sharedDataForKey:(NSString *)key; + +/** + * 开始缓存数据事务 + * + * @param domain 数据域 + */ +- (void)beginCacheDataTransForDomain:(NSString *)domain; + +/** + * 结束缓存数据事务 + * + * @param domain 数据域 + */ +- (void)endCacheDataTransForDomain:(NSString *)domain; + +/** + * 设置缓存数据 + * + * @param data 数据 + * @param key 标识 + * @param domain 数据域 + */ +- (void)setCacheData:(id)data forKey:(NSString *)key domain:(NSString *)domain; + +/** + * 获取缓存数据 + * + * @param key 标识 + * @param domain 数据域 + * + * @return 数据 + */ +- (id)cacheDataForKey:(NSString *)key domain:(NSString *)domain; + +/** + * 开始安全数据事务 + */ +- (void)beginSecureDataTrans; + +/** + * 结束安全数据事务 + */ +- (void)endSecureDataTrans; + +/** + * 设置安全数据 + * + * @param data 数据 + * @param key 标识 + */ +- (void)setSecureData:(id)data forKey:(NSString *)key; + +/** + * 获取安全数据 + * + * @param key 标识 + * + * @return 数据 + */ +- (id)secureDataForKey:(NSString *)key; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFDate.h b/Support/Required/MOBFoundation.framework/Headers/MOBFDate.h new file mode 100755 index 0000000..f7c844a --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFDate.h @@ -0,0 +1,124 @@ +// +// MOBFDateUtils.h +// MOBFoundation +// +// Created by vimfung on 15-1-19. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * 时间工具类 + */ +@interface MOBFDate : NSObject + +/** + * 获取时间的年份 + * + * @param date 时间 + * + * @return 年份 + */ ++ (NSInteger)fullYearByDate:(NSDate *)date; + +/** + * 获取时间的月份 + * + * @param date 时间 + * + * @return 月份 + */ ++ (NSInteger)monthByDate:(NSDate *)date; + +/** + * 获取时间的日期 + * + * @param date 时间 + * + * @return 日期部分 + */ ++ (NSInteger)dayByDate:(NSDate *)date; + +/** + * 获取时间的小时部分 + * + * @param date 时间 + * + * @return 小时部分 + */ ++ (NSInteger)hourByDate:(NSDate *)date; + +/** + * 获取时间的分钟部分 + * + * @param date 时间 + * + * @return 分钟部分 + */ ++ (NSInteger)minuteByDate:(NSDate *)date; + +/** + * 获取时间的秒部分 + * + * @param date 时间 + * + * @return 秒部分 + */ ++ (NSInteger)secondByDate:(NSDate *)date; + +/** + * 将时间转换为指定格式字符串 + * + * @param date 时间 + * @param format 格式字符串 + * + * @return 转换后字符串 + */ ++ (NSString *)stringByDate:(NSDate *)date + withFormat:(NSString *)format; + +/** + * 将字符串转换为时间对象 + * + * @param format 格式字符串 + * @param dateString 日期时间字符串 + * + * @return 时间对象 + */ ++ (NSDate *)dateWithFormat:(NSString *)format + dateString:(NSString *)dateString; + +/** + * 将字符串转换为时间对象 + * + * @param format 格式字符串 + * @param dateString 日期时间字符串 + * @param locale 本地化参数 + * + * @return 时间对象 + */ ++ (NSDate *)dateWithFormat:(NSString *)format + dateString:(NSString *)dateString + locale:(NSLocale *)locale; + +/** + * 创建日期时间对象 + * + * @param year 年份 + * @param month 月份 + * @param date 日期 + * @param hour 小时 + * @param minute 分钟 + * @param second 秒 + * + * @return 日期时间对象 + */ ++ (NSDate *)dateWithYear:(NSInteger)year + month:(NSInteger)month + date:(NSInteger)date + hour:(NSInteger)hour + minute:(NSInteger)minute + second:(NSInteger)second; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFDebug.h b/Support/Required/MOBFoundation.framework/Headers/MOBFDebug.h new file mode 100755 index 0000000..f28c7ef --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFDebug.h @@ -0,0 +1,31 @@ +// +// MOBFDebug.h +// MOBFoundation +// +// Created by 冯 鸿杰 on 15/2/4. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * 调试工具类 + */ +@interface MOBFDebug : NSObject + +/** + * 输出调试日志 + * + * @param format 日志格式 + * @param ... 日志参数 + */ ++ (void)log:(NSString *)format, ... NS_FORMAT_FUNCTION(1, 2); + +/** + * 观察释放对象,指定类型的被释放对象会打印在Console中。 + * + * @param type 对象类型 + */ ++ (void)watchDeallocObjectWithType:(Class)type; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFDevice.h b/Support/Required/MOBFoundation.framework/Headers/MOBFDevice.h new file mode 100755 index 0000000..24e9c91 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFDevice.h @@ -0,0 +1,183 @@ +// +// MOBFDeviceUtils.h +// MOBFoundation +// +// Created by vimfung on 15-1-19. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import +#import + +/** + * 网络类型 + */ +typedef NS_ENUM(NSUInteger, MOBFNetworkType) +{ + /** + * 无网咯 + */ + MOBFNetworkTypeNone = 0, + /** + * 蜂窝网络 + */ + MOBFNetworkTypeCellular = 2, + /** + * WIFI + */ + MOBFNetworkTypeWifi = 1, + /** + * 2G网络 + */ + MOBFNetworkTypeCellular2G = 3, + /** + * 3G网络 + */ + MOBFNetworkTypeCellular3G = 4, + /** + * 4G网络 + */ + MOBFNetworkTypeCellular4G = 5, +}; + +/** + * 设备工具类 + */ +@interface MOBFDevice : NSObject + +/** + * 获取网卡物理地址 + * + * @return 网卡物理地址 + */ ++ (NSString *)macAddress; + +/** + * 获取设备型号 + * + * @return 设备型号 + */ ++ (NSString *)deviceModel; + +/** + * 获取当前网络类型 + * + * @return 网络类型 + */ ++ (MOBFNetworkType)currentNetworkType; + +/** + * 获取手机运营商代码 + * + * @return 手机运营商代码 + */ ++ (NSString *)carrier; + +/** + * 获取手机运营商名称 + * + * @return 运营商名称 + */ ++ (NSString *)carrierName; + +/** + * 获取手机运营商国家码 + * + * @return 运营商国家码 + */ ++ (NSString *)mobileCountryCode; + +/** + * 获取手机运营商网络编号 + * + * @return 运营商网络编号 + */ ++ (NSString *)mobileNetworkCode; + +/** + * 与当前系统版本比较 + * + * @param other 需要对比的版本 + * + * @return < 0 低于指定版本; = 0 跟指定版本相同;> 0 高于指定版本 + */ ++ (NSInteger)versionCompare:(NSString *)other; + +/** + * 判断是否已经越狱 + * + * @return YES 已经越狱,NO 尚未越狱 + */ ++ (BOOL)hasJailBroken; + +/** + * 获取运行进程信息 + * + * @return 进程信息列表 + */ ++ (NSArray *)runningProcesses; + +/** + * 判断当前设备是否为iPad + * + * @return YES 是,NO 否 + */ ++ (BOOL)isPad; + +/** + * 获取设备唯一标识 + * + * @return 标识码 + */ ++ (NSString *)duid; + +/** + * 获取屏幕真实尺寸 + * + * @return 屏幕尺寸 + */ ++ (CGSize)nativeScreenSize; + +/** + * 获取无线局域网的服务集标识(WIFI名称) + * + * @return 服务集标识 + */ ++ (NSString *)ssid; + +/** + * 获取基础服务集标识(站点的MAC地址) + * + * @return 基础服务集标识 + */ ++ (NSString *)bssid; + +/** + * 获取广告商ID + * + * @return 广告商ID + */ ++ (NSString *)idfa; + +/** + * 获取当前语言 + * + * @return 语言描述 + */ ++ (NSString *)currentLanguage; + +/** + * 获取设备IP地址 + * + * @return IP地址 + */ ++ (NSString *)ipAddress; + +/** + * 获取开发商ID + * + * @return 开发商ID + */ ++ (NSString *)idfv; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFHttpPostedFile.h b/Support/Required/MOBFoundation.framework/Headers/MOBFHttpPostedFile.h new file mode 100755 index 0000000..a27c273 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFHttpPostedFile.h @@ -0,0 +1,63 @@ +// +// MOBHttpPostedFile.h +// MOBFoundation +// +// Created by 冯 鸿杰 on 15/1/30. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * @brief HTTP上传文件 + */ +@interface MOBFHttpPostedFile : NSObject + +/** + * @brief 文件名称 + */ +@property (nonatomic, copy) NSString *fileName; + +/** + * @brief 内容类型 + */ +@property (nonatomic, copy) NSString *contentType; + +/** + * @brief 文件数据 + */ +@property (nonatomic, retain) NSData *fileData; + +/** + * @brief 内容传输编码 + */ +@property (nonatomic, copy) NSString *transferEncoding; + +/** + * @brief 创建上传文件 + * + * @param fileName 文件名称 + * @param data 文件数据 + * @param contentType 内容类型 + * @param transferEncoding 传输编码 + * + * @return 上传文件信息 + */ ++ (MOBFHttpPostedFile *)httpPostedFileByFileName:(NSString *)fileName + data:(NSData *)data + contentType:(NSString *)contentType + transferEncoding:(NSString *)transferEncoding; + +/** + * @brief 创建上传文件 + * + * @param path 文件路径 + * @param contentType 内容类型 + * + * @return 上传文件信息 + */ ++ (MOBFHttpPostedFile *)httpPostedFileByPath:(NSString *)path + contentType:(NSString *)contentType; + + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFHttpService.h b/Support/Required/MOBFoundation.framework/Headers/MOBFHttpService.h new file mode 100755 index 0000000..43db364 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFHttpService.h @@ -0,0 +1,222 @@ +// +// MOBFHttpService.h +// MOBFoundation +// +// Created by vimfung on 15-1-20. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +@class MOBFHttpService; + +/** + * GET方式 + */ +extern NSString *const kMOBFHttpMethodGet; + +/** + * POST方式 + */ +extern NSString *const kMOBFHttpMethodPost; + +/** + * DELETE方式 + */ +extern NSString *const kMOBFHttpMethodDelete; + +/** + * HEAD方式 + */ +extern NSString *const kMOBFHttpMethodHead; + +/** + * HTTP返回事件 + * + * @param response 回复对象 + * @param responseData 回复数据 + */ +typedef void(^MOBFHttpResultEvent) (NSHTTPURLResponse *response, NSData *responseData); + +/** + * HTTP错误事件 + * + * @param error 错误信息 + */ +typedef void(^MOBFHttpFaultEvent) (NSError *error); + +/** + * HTTP上传数据事件 + * + * @param totalBytes 总字节数 + * @param loadedBytes 上传字节数据 + */ +typedef void(^MOBFHttpUploadProgressEvent) (int64_t totalBytes, int64_t loadedBytes); + +/** + * HTTP服务类 + */ +@interface MOBFHttpService : NSObject + +/** + * @brief 提交方式,默认为GET + */ +@property (nonatomic, copy) NSString *method; + +/** + 超时时间 + */ +@property (nonatomic) NSTimeInterval timeout; + +/** + * @brief 是否缓存回复对象,默认为YES + */ +@property (nonatomic) BOOL isCacheResponse; + +/** + * 自动填充请求表单,默认为YES,如果为NO则表示使用自定义的方式发起请求。 + */ +@property (nonatomic) BOOL autoFillRequestForm; + +/** + * 初始化HTTP服务 + * + * @param urlString URL地址字符串 + * + * @return HTTP服务对象 + */ +- (id)initWithURLString:(NSString *)urlString; + +/** + * 初始化HTTP服务 + * + * @param URL URL地址对象 + * + * @return HTTP服务对象 + */ +- (id)initWithURL:(NSURL *)URL; + +/** + * 初始化HTTP服务 + * + * @param request 请求对象 + * + * @return HTTP服务对象 + */ +- (id)initWithRequest:(NSURLRequest *)request; + +/** + * 添加HTTP头 + * + * @param header 名称 + * @param value 值 + */ +- (void)addHeader:(NSString *)header value:(NSString *)value; + +/** + * 添加HTTP头集合 + * + * @param headers 头集合 + */ +- (void)addHeaders:(NSDictionary *)headers; + +/** + * 添加参数 + * + * @param value 参数值 + * @param key 参数名字 + */ +- (void)addParameter:(id)value forKey:(NSString *)key; + +/** + * 添加多个参数 + * + * @param parameters 参数集合 + */ +- (void)addParameters:(NSDictionary *)parameters; + +/** + * 添加上传文件参数 + * + * @param fileData 文件数据 + * @param fileName 文件名称 + * @param mimeType MIME类型 + * @param transferEncoding 传输编码 + * @param key 参数名字 + */ +- (void)addFileParameter:(NSData *)fileData + fileName:(NSString *)fileName + mimeType:(NSString *)mimeType + transferEncoding:(NSString *)transferEncoding + forKey:(NSString *)key; + +/** + * 设置请求体数据,可以为NSData或者NSInputStream + * + * @param body 请求体数据 + */ +- (void)setBody:(id)body; + +/** + * 发送请求 + * + * @param resultHandler 返回回调 + * @param faultHandler 错误回调 + * @param uploadProgressHandler 上传数据进度回调 + */ +- (void)sendRequestOnResult:(MOBFHttpResultEvent)resultHandler + onFault:(MOBFHttpFaultEvent)faultHandler + onUploadProgress:(MOBFHttpUploadProgressEvent)uploadProgressHandler; + +/** + * 取消请求 + */ +- (void)cancelRequest; + +/** + * 发送HTTP请求 + * + * @param urlString 请求地址 + * @param method 请求方式 + * @param parameters 请求参数 + * @param headers 请求头集合 + * @param resultHandler 返回回调 + * @param faultHandler 错误回调 + * @param uploadProgressHandler 上传数据进度回调 + * + * @return HTTP服务对象 + */ ++ (MOBFHttpService *)sendHttpRequestByURLString:(NSString *)urlString + method:(NSString *)method + parameters:(NSDictionary *)parameters + headers:(NSDictionary *)headers + onResult:(MOBFHttpResultEvent)resultHandler + onFault:(MOBFHttpFaultEvent)faultHandler + onUploadProgress:(MOBFHttpUploadProgressEvent)uploadProgressHandler; + + +/** + * 发送HTTP请求 + * + * @param urlString 请求地址 + * @param method 请求方式 + * @param parameters 请求参数 + * @param headers 请求头集合 + * @param timeout 请求超时 + * @param resultHandler 返回回调 + * @param faultHandler 错误回调 + * @param uploadProgressHandler 上传数据进度回调 + * + * @return HTTP服务对象 + */ ++ (MOBFHttpService *)sendHttpRequestByURLString:(NSString *)urlString + method:(NSString *)method + parameters:(NSDictionary *)parameters + headers:(NSDictionary *)headers + timeout:(NSTimeInterval)timeout + onResult:(MOBFHttpResultEvent)resultHandler + onFault:(MOBFHttpFaultEvent)faultHandler + onUploadProgress:(MOBFHttpUploadProgressEvent)uploadProgressHandler; + + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFImage.h b/Support/Required/MOBFoundation.framework/Headers/MOBFImage.h new file mode 100755 index 0000000..447bc58 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFImage.h @@ -0,0 +1,114 @@ +// +// MOBFImageUtils.h +// MOBFoundation +// +// Created by vimfung on 15-1-19. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import +#import + +/** + * 圆角类型 + */ +typedef NS_ENUM(NSUInteger, MOBFOvalType) +{ + /** + * 无圆角 + */ + MOBFOvalTypeNone = 0x00, + /** + * 左上角 + */ + MOBFOvalTypeLeftTop = 0x01, + /** + * 左下角 + */ + MOBFOvalTypeLeftBottom = 0x02, + /** + * 右上角 + */ + MOBFOvalTypeRightTop = 0x04, + /** + * 右下角 + */ + MOBFOvalTypeRightBottom = 0x08, + /** + * 全部 + */ + MOBFOvalTypeAll = MOBFOvalTypeLeftTop | MOBFOvalTypeLeftBottom | MOBFOvalTypeRightTop | MOBFOvalTypeRightBottom +}; + +/** + * 图像工具类 + */ +@interface MOBFImage : NSObject + +/** + * 裁剪图片 + * + * @param image 原始图片 + * @param rect 裁剪范围 + * + * @return 裁剪后图片 + */ ++ (UIImage *)clipImage:(UIImage *)image withRect:(CGRect)rect; + +/** + * 将图片边角裁剪为圆角 + * + * @param image 原始图片 + * @param size 图像尺寸 + * @param ovalWidth 圆角宽度 + * @param ovalHeight 圆角高度 + * @param ovalType 圆角类型 + * + * @return 裁剪后图像 + */ ++ (UIImage *)roundRectImage:(UIImage *)image + withSize:(CGSize)size + ovalWidth:(CGFloat)ovalWidth + ovalHeight:(CGFloat)ovalHeight + ovalType:(MOBFOvalType)ovalType; + +/** + * 等比缩放图片 + * + * @param image 原始图片 + * @param size 缩放的图片尺寸 + * + * @return 缩放后图片 + */ ++ (UIImage *)scaleImage:(UIImage *)image withSize:(CGSize)size; + +/** + * 获取图片对象 + * + * @param name 图片名称 + * @param bundle 资源包对象 + * + * @return 图片对象 + */ ++ (UIImage *)imageName:(NSString *)name bundle:(NSBundle *)bundle; + +/** + * 通过指定视图生成图片 + * + * @param view 视图对象 + * + * @return 图片对象 + */ ++ (UIImage *)imageByView:(UIView *)view; + +/** + * 通过制定视图生成图片 + * + * @param view 视图对象 + * @param opaque 是否为不透明图片,YES,不透明,NO,透明 + * + * @return 图片对象 + */ ++ (UIImage *)imageByView:(UIView *)view opaque:(BOOL)opaque; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFImageGetter.h b/Support/Required/MOBFoundation.framework/Headers/MOBFImageGetter.h new file mode 100755 index 0000000..58c216e --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFImageGetter.h @@ -0,0 +1,64 @@ +// +// MOBFImageGetter.h +// MOBFoundation +// +// Created by fenghj on 16/1/21. +// Copyright © 2016年 MOB. All rights reserved. +// + +#import "MOBFImageObserver.h" +#import "MOBFImageServiceTypeDef.h" +#import + +/** + * 图片获取器 + */ +@interface MOBFImageGetter : NSObject + +/** + * 获取共享图片服务实例 + * + * @return 图片服务实例 + */ ++ (instancetype)sharedInstance; + +/** + * 是否存在图片缓存 + * + * @param url 图片URL + * + * @return YES 表示图片已缓存,NO 图片未缓存 + */ +- (BOOL)existsImageCacheWithURL:(NSURL *)url; + +/** + * 获取图片 + * + * @param url 图片路径 + * @param resultHandler 返回事件 + * + * @return 服务观察者 + */ +- (MOBFImageObserver *)getImageWithURL:(NSURL *)url + result:(MOBFImageGetterResultHandler)resultHandler; + + +/** + 获取图片数据 + + @param url 图片路径 + @param resultHandler 返回事件 + + @return 服务观察者 + */ +- (MOBFImageObserver *)getImageDataWithURL:(NSURL *)url + result:(MOBFImageDataGetterResultHandler)resultHandler; + +/** + * 移除图片观察者 + * + * @param imageObserver 图片观察者 + */ +- (void)removeImageObserver:(MOBFImageObserver *)imageObserver; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFImageObserver.h b/Support/Required/MOBFoundation.framework/Headers/MOBFImageObserver.h new file mode 100755 index 0000000..36460f5 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFImageObserver.h @@ -0,0 +1,21 @@ +// +// MOBFImageObserver.h +// MOBFoundation +// +// Created by fenghj on 16/1/21. +// Copyright © 2016年 MOB. All rights reserved. +// + +#import + +/** + * 图片观察者 + */ +@interface MOBFImageObserver : NSObject + +/** + * 图片链接 + */ +@property (nonatomic, strong, readonly) NSURL *url; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFImageServiceTypeDef.h b/Support/Required/MOBFoundation.framework/Headers/MOBFImageServiceTypeDef.h new file mode 100755 index 0000000..d49b241 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFImageServiceTypeDef.h @@ -0,0 +1,30 @@ +// +// MOBFImageServiceTypeDef.h +// MOBFoundation +// +// Created by fenghj on 15/6/8. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#ifndef MOBFoundation_MOBFImageServiceTypeDef_h +#define MOBFoundation_MOBFImageServiceTypeDef_h + +@class UIImage; + +/** + * 图片加载返回 + * + * @param image 图片对象 + * @param error 错误信息 + */ +typedef void (^MOBFImageGetterResultHandler)(UIImage *image, NSError *error); + +/** + * 图片加载返回 + * + * @param imageData 图片数据 + * @param error 错误信息 + */ +typedef void (^MOBFImageDataGetterResultHandler)(NSData *imageData, NSError *error); + +#endif diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFJSContext.h b/Support/Required/MOBFoundation.framework/Headers/MOBFJSContext.h new file mode 100755 index 0000000..4689155 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFJSContext.h @@ -0,0 +1,65 @@ +// +// MOBFJSContext.h +// MOBFoundation +// +// Created by 冯 鸿杰 on 15/2/27. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import +#import "MOBFJSTypeDefine.h" + +/** + * JavaScript上下文环境 + */ +@interface MOBFJSContext : NSObject + +/** + * 获取默认的上下文环境 + * + * @return JS上下文环境 + */ ++ (instancetype)defaultContext; + +/** + * 注册方法 + * + * @param name 方法名称 + * @param block 方法执行 + */ +- (void)registerJSMethod:(NSString *)name block:(MOBFJSMethodIMP)block; + +/** + * 调用方法 + * + * @param name 方法名称 + * @param arguments 参数 + * + * @return 返回值 + */ +- (NSString *)callJSMethod:(NSString *)name arguments:(NSArray *)arguments; + +/** + * 加载插件 + * + * @param path 插件脚本文件路径 + * @param name 插件名称 + */ +- (void)loadPluginWithPath:(NSString *)path forName:(NSString *)name; + +/** + * 加载插件 + * + * @param content 插件脚本内容 + * @param name 插件名称 + */ +- (void)loadPlugin:(NSString *)content forName:(NSString *)name; + +/** + * 执行脚本 + * + * @param script 脚本 + */ +- (void)runScript:(NSString *)script; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFJSTypeDefine.h b/Support/Required/MOBFoundation.framework/Headers/MOBFJSTypeDefine.h new file mode 100755 index 0000000..e8f38ac --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFJSTypeDefine.h @@ -0,0 +1,19 @@ +// +// MOBFJSTypeDefine.h +// MOBFoundation +// +// Created by 冯 鸿杰 on 15/2/27. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#ifndef MOBFoundation_MOBFJSTypeDefine_h +#define MOBFoundation_MOBFJSTypeDefine_h + +/** + * JS方法实现 + * + * @param params 传入参数 + */ +typedef void(^MOBFJSMethodIMP) (NSArray *arguments); + +#endif diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFJson.h b/Support/Required/MOBFoundation.framework/Headers/MOBFJson.h new file mode 100755 index 0000000..3d6eca7 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFJson.h @@ -0,0 +1,72 @@ +// +// MOBFJson.h +// MOBFoundation +// +// Created by vimfung on 15-1-20. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * JSON工具类 + */ +@interface MOBFJson : NSObject + +/** + * 通过JSON字符串反序列化为对象 + * + * @param jsonString JSON字符串 + * + * @return 对象 + */ ++ (id)objectFromJSONString:(NSString *)jsonString; + +/** + * 通过JSON数据反序列化为对象 + * + * @param jsonData JSON数据 + * + * @return 对象 + */ ++ (id)objectFromJSONData:(NSData *)jsonData; + +/** + * 通过对象序列化为JSON字符串 + * + * @param object 对象 + * + * @return JSON字符串 + */ ++ (NSString *)jsonStringFromObject:(id)object; + +/** + * 通过对象序列化为JSON字符串 + * + * @param object 对象 + * @param block 未解析类型回调 + * + * @return JSON字符串 + */ ++ (NSString *)jsonStringFromObject:(id)object serializeUnsupportedClassesUsingBlock:(id(^)(id object))block; + +/** + * 通过对象序列化为JSON数据 + * + * @param object 对象 + * + * @return JSON数据 + */ ++ (NSData *)jsonDataFromObject:(id)object; + +/** + * 通过对象序列化为JSON数据 + * + * @param object 对象 + * @param block 未解析类型回调 + * + * @return JSON数据 + */ ++ (NSData *)jsonDataFromObject:(id)object serializeUnsupportedClassesUsingBlock:(id(^)(id object))block; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFNetworkFlowInfo.h b/Support/Required/MOBFoundation.framework/Headers/MOBFNetworkFlowInfo.h new file mode 100755 index 0000000..52bdca6 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFNetworkFlowInfo.h @@ -0,0 +1,63 @@ +// +// MOBFNetworkFlowInfo.h +// MOBFoundation +// +// Created by fenghj on 15/12/17. +// Copyright © 2015年 MOB. All rights reserved. +// + +#import + +/** + * 网络流量信息 + */ +@interface MOBFNetworkFlowInfo : NSObject + +/** + * 接收到的字节数 + */ +@property (nonatomic, readonly) NSUInteger receivedBytes; + +/** + * 发送字节数 + */ +@property (nonatomic, readonly) NSUInteger sentBytes; + +/** + * 最后的更新时间 + */ +@property (nonatomic, strong, readonly) NSDate *lastChangeTime; + +/** + * WIFI下的接收字节数 + */ +@property (nonatomic, readonly) NSUInteger WIFIReceivedBytes; + +/** + * WIFI下的发送字节数 + */ +@property (nonatomic, readonly) NSUInteger WIFISentBytes; + +/** + * 蜂窝网络下的接收字节数 + */ +@property (nonatomic, readonly) NSUInteger WWANReceivedBytes; + +/** + * 蜂窝网络下的发送字节数 + */ +@property (nonatomic, readonly) NSUInteger WWANSentBytes; + +/** + * 获取网络流量信息共享实例 + * + * @return 网络流量信息对象 + */ ++ (MOBFNetworkFlowInfo *)sharedInstance; + +/** + * 更新信息 + */ +- (void)update; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFNotificationCenter.h b/Support/Required/MOBFoundation.framework/Headers/MOBFNotificationCenter.h new file mode 100755 index 0000000..0f149bc --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFNotificationCenter.h @@ -0,0 +1,52 @@ +// +// MOBFCore.h +// MOBFoundation +// +// Created by fenghj on 15/8/31. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * 应用程序崩溃通知 + */ +extern NSString *const MOBFApplicationCrashNotif; + +/** + * 核心对象 + */ +@interface MOBFNotificationCenter : NSObject + +/** + * 添加观察者 + * + * @param observer 观察者对象 + * @param selector 处理器方法 + * @param name 通知名称 + * @param object 对象信息 + */ ++ (void)addObserver:(NSObject *)observer + selector:(SEL)selector + name:(NSString *)name + object:(id)object; + +/** + * 移除观察者 + * + * @param observer 观察者对象 + */ ++ (void)removeObserver:(NSObject *)observer; + +/** + * 移除观察者 + * + * @param observer 观察者对象 + * @param name 通知名称 + * @param object 对象信息 + */ ++ (void)removeObserver:(NSObject *)observer + name:(NSString *)name + object:(id)object; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFNumber.h b/Support/Required/MOBFoundation.framework/Headers/MOBFNumber.h new file mode 100755 index 0000000..23bb0ae --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFNumber.h @@ -0,0 +1,25 @@ +// +// MOBFNumberUtils.h +// MOBFoundation +// +// Created by vimfung on 15-1-20. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * 数值工具类 + */ +@interface MOBFNumber : NSObject + +/** + * 获取随机整型值 + * + * @param max 最大随机数 + * + * @return 随机整数 + */ ++ (NSInteger)randomInteger:(NSInteger)max; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFOAuthService.h b/Support/Required/MOBFoundation.framework/Headers/MOBFOAuthService.h new file mode 100755 index 0000000..986e28b --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFOAuthService.h @@ -0,0 +1,67 @@ +// +// MOBFOAuthService.h +// MOBFoundation +// +// Created by fenghj on 15/6/9. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * OAuth服务 + */ +@interface MOBFOAuthService : MOBFHttpService + +/** + * 设置密钥 + * + * @param consumerSecret 消费者密钥,不允许为nil + * @param oauthTokenSecret 令牌密钥,如果尚未取得令牌密钥,可以传入nil + */ +- (void)setSecretByConsumerSecret:(NSString *)consumerSecret + oauthTokenSecret:(NSString *)oauthTokenSecret; + +/** + * 添加OAuth参数 + * + * @param value 参数值 + * @param key 参数名字 + */ +- (void)addOAuthParameter:(id)value forKey:(NSString *)key; + +/** + * 添加OAuth参数 + * + * @param oauthParameters OAuth参数集合 + */ +- (void)addOAuthParameters:(NSDictionary *)oauthParameters; + +/** + * 发送HTTP请求 + * + * @param urlString 请求地址 + * @param method 请求方式 + * @param parameters 请求参数 + * @param headers 请求头集合 + * @param oauthParameters OAuth请求参数 + * @param consumerSecret 消费者密钥 + * @param oauthSecret OAuth令牌密钥 + * @param resultHandler 返回回调 + * @param faultHandler 错误回调 + * @param uploadProgressHandler 上传数据进度回调 + * + * @return HTTP服务对象 + */ ++ (MOBFOAuthService *)sendRequestByURLString:(NSString *)urlString + method:(NSString *)method + parameters:(NSDictionary *)parameters + headers:(NSDictionary *)headers + oauthParameters:(NSDictionary *)oauthParameters + consumerSecret:(NSString *)consumerSecret + oauthTokenSecret:(NSString *)oauthTokenSecret + onResult:(MOBFHttpResultEvent)resultHandler + onFault:(MOBFHttpFaultEvent)faultHandler + onUploadProgress:(MOBFHttpUploadProgressEvent)uploadProgressHandler; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFPluginManager.h b/Support/Required/MOBFoundation.framework/Headers/MOBFPluginManager.h new file mode 100755 index 0000000..e3229d4 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFPluginManager.h @@ -0,0 +1,66 @@ +// +// MOBFPluginManager.h +// MOBFoundation +// +// Created by fenghj on 15/6/2. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import +#import "IMOBFPlugin.h" + +/** + * 插件创建事件处理 + * + * @return 插件对象 + */ +typedef id(^MOBFPluginConstructHandler) (); + +/** + * 插件管理器 + */ +@interface MOBFPluginManager : NSObject + +/** + * 获取默认的插件管理器 + * + * @return 插件管理器 + */ ++ (instancetype) defaultManager; + +/** + * 注册插件 + * + * @param pluginConstructHandler 插件构造事件处理器 + * @param key 插件标识 + * + * @return YES 表示注册成功,NO 表示注册失败,有可能已存在此插件 + */ +- (BOOL)registerPlugin:(MOBFPluginConstructHandler)pluginConstructHandler forKey:(NSString *)key; + +/** + * 判断是否已经注册插件 + * + * @param key 插件标识 + * + * @return YES 表示已经注册, NO 表示尚未注册 + */ +- (BOOL)isRegisterPluginForKey:(NSString *)key; + +/** + * 获取插件对象 + * + * @param key 插件标识 + * + * @return 插件对象,nil 表示该标志的插件不存在 + */ +- (id)pluginForKey:(NSString *)key; + +/** + * 卸载插件 + * + * @param key 插件标识 + */ +- (void)unloadPluginForKey:(NSString *)key; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFRSAHelper.h b/Support/Required/MOBFoundation.framework/Headers/MOBFRSAHelper.h new file mode 100755 index 0000000..37a37b9 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFRSAHelper.h @@ -0,0 +1,65 @@ +// +// MOBFRSAHelper.h +// MOBFoundation +// +// Created by fenghj on 15/7/29. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import +#import "MOBFRSAKey.h" + + +/** + * RSA加解密助手 + */ +@interface MOBFRSAHelper : NSObject + +/** + * 密钥信息 + */ +@property (nonatomic, readonly) MOBFRSAKey *key; + +/** + * 初始化RSA加密器 + * + * @param keySize 密钥长度 + * + * @return 加密器对象 + */ +- (instancetype)initWithKeySize:(int)keySize; + +/** + * 初始化RSA加密器 + * + * @param keySize 密钥长度 + * @param publicKey 公钥 + * @param privateKey 私钥 + * @param modulus 模数 + * + * @return 加密器对象 + */ +- (instancetype)initWithKeySize:(int)keySize + publicKey:(NSString *)publicKey + privateKey:(NSString *)privateKey + modulus:(NSString *)modulus; + +/** + * 加密数据 + * + * @param data 数据 + * + * @return 加密后数据 + */ +- (NSData *)encryptWithData:(NSData *)data; + +/** + * 解密数据 + * + * @param data 加密后数据 + * + * @return 解密后数据 + */ +- (NSData *)decryptWithData:(NSData *)data; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFRSAKey.h b/Support/Required/MOBFoundation.framework/Headers/MOBFRSAKey.h new file mode 100755 index 0000000..d9e2c9f --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFRSAKey.h @@ -0,0 +1,35 @@ +// +// MOBFRSAKey.h +// MOBFoundation +// +// Created by fenghj on 15/7/29. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +@class MOBFBigInteger; + +@interface MOBFRSAKey : NSObject + +/** + * bits in key + */ +@property (nonatomic) int bits; + +/** + * modulus + */ +@property (nonatomic, strong) MOBFBigInteger *n; + +/** + * public exponent + */ +@property (nonatomic, strong) MOBFBigInteger *e; + +/** + * private exponent + */ +@property (nonatomic, strong) MOBFBigInteger *d; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFRegex.h b/Support/Required/MOBFoundation.framework/Headers/MOBFRegex.h new file mode 100755 index 0000000..8844fc9 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFRegex.h @@ -0,0 +1,97 @@ +// +// MOBFRegex.h +// MOBFoundation +// +// Created by vimfung on 15-1-20. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * 替换处理 + * + * @param captureCount 捕获数量 + * @param capturedStrings 捕获字符串集合 + * @param capturedRanges 捕获字符串范围集合 + * @param stop 是否停止捕获标识 + * + * @return 替换后的字符串 + */ +typedef NSString *(^MOBFReplacingOccurrencesHandler) (NSInteger captureCount, NSString *const capturedStrings[captureCount], const NSRange capturedRanges[captureCount], volatile BOOL * const stop); + +/** + * 正则表达式选项 + */ +typedef NS_ENUM(NSUInteger, MOBFRegexOptions){ + /** + * 无设置 + */ + MOBFRegexOptionsNoOptions = 0, + /** + * 不区分大小写 + */ + MOBFRegexOptionsCaseless = 2, + /** + * 注释 + */ + MOBFRegexOptionsComments = 4, + /** + * 匹配点 + */ + MOBFRegexOptionsDotAll = 32, + /** + * 多行模式 + */ + MOBFRegexOptionsMultiline = 8, + /** + * Unicode字符 + */ + MOBFRegexOptionsUnicodeWordBoundaries = 256 +}; + +/** + * 正则表达式工具类 + */ +@interface MOBFRegex : NSObject + +/** + * 替换字符串 + * + * @param regex 正则表达式 + * @param string 原始字符串 + * @param block 块回调处理替换规则 + * + * @return 字符串 + */ ++ (NSString *)stringByReplacingOccurrencesOfRegex:(NSString *)regex + withString:(NSString *)string + usingBlock:(MOBFReplacingOccurrencesHandler)block; + +/** + * 匹配字符串 + * + * @param regex 正则表达式 + * @param options 表达式选项 + * @param range 匹配范围 + * @param string 原始字符串 + * + * @return YES 匹配,NO 不匹配 + */ ++ (BOOL)isMatchedByRegex:(NSString *)regex + options:(MOBFRegexOptions)options + inRange:(NSRange)range + withString:(NSString *)string; + +/** + * 匹配字符串 + * + * @param regex 正则表达式 + * @param string 原始字符串 + * + * @return 匹配的字符串集合 + */ ++ (NSArray *)captureComponentsMatchedByRegex:(NSString *)regex + withString:(NSString *)string; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFString.h b/Support/Required/MOBFoundation.framework/Headers/MOBFString.h new file mode 100755 index 0000000..ca5d951 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFString.h @@ -0,0 +1,107 @@ +// +// MOBFStringUtils.h +// MOBFoundation +// +// Created by vimfung on 15-1-16. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import + +/** + * 字符串工具 + */ +@interface MOBFString : NSObject + +/** + * URL编码 + * + * @param string 原始字符串 + * @param encoding 字符串编码 + * + * @return 编码后字符串 + */ ++ (NSString *)urlEncodeString:(NSString *)string forEncoding:(NSStringEncoding)encoding; + +/** + * URL解码 + * + * @param string 原始字符串 + * @param encoding 字符串编码 + * + * @return 解码后字符串 + */ ++ (NSString *)urlDecodeString:(NSString *)string forEncoding:(NSStringEncoding)encoding; + +/** + * 使用SHA1算法进行字符串签名 + * + * @param string 原始字符串 + * + * @return 签名后字符串 + */ ++ (NSString *)sha1String:(NSString *)string; + +/** + * 使用MD5算法进行字符串签名 + * + * @param string 原始字符串 + * + * @return 签名后字符串 + */ ++ (NSString *)md5String:(NSString *)string; + +/** + * 获取GUID字符串 + * + * @return GUID字符串 + */ ++ (NSString *)guidString; + +/** + * 使用HMAC-SHA1进行签名 + * + * @param string 原始字符串 + * @param key 密钥 + * + * @return 签名后的数据 + */ ++ (NSData *)dataByHMACSha1String:(NSString *)string forKey:(NSString *)key; + +/** + * 使用BASE64进行解码 + * + * @param string 原始字符串 + * + * @return 解码后数据 + */ ++ (NSData *)dataByBase64DecodeString:(NSString *)string; + +/** + * 判断字符串中是否包含链接 + * + * @param string 原始字符串 + * + * @return YES 表示包含URL,NO 表示不包含 + */ ++ (BOOL)containsURLByString:(NSString *)string; + +/** + * @brief 解析HTTP参数字符串,字符串格式为:参数名=参数值&参数名=参数值 + * + * @param string 参数字符串 + * + * @return 解析后字典对象 + */ ++ (NSDictionary *)parseURLParametersString:(NSString *)string; + +/** + * @brief 转换16进制字符串为NSData + * + * @param string 二进制流的16进制字符串 + * + * @return 二进制数据对象 + */ ++ (NSData *)dataByHexString:(NSString *)string; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFViewController.h b/Support/Required/MOBFoundation.framework/Headers/MOBFViewController.h new file mode 100755 index 0000000..c03066a --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFViewController.h @@ -0,0 +1,33 @@ +// +// MOBFViewControllerUtils.h +// MOBFoundation +// +// Created by vimfung on 15-1-19. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#import +#import + +/** + * 视图控制器工具类 + */ +@interface MOBFViewController : NSObject + +/** + * 获取当前视图控制器 + * + * @return 视图控制器 + */ ++ (UIViewController *)currentViewController; + +/** + * 获取当前视图控制器 + * + * @param window 窗口 + * + * @return 视图控制器 + */ ++ (UIViewController *)currentViewControllerFromWindow:(UIWindow *)window; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFXml.h b/Support/Required/MOBFoundation.framework/Headers/MOBFXml.h new file mode 100755 index 0000000..9a25ed9 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFXml.h @@ -0,0 +1,48 @@ +// +// MOBFXml.h +// MOBFoundation +// +// Created by fenghj on 15/9/16. +// Copyright © 2015年 MOB. All rights reserved. +// + +#import + +@class MOBFXmlNode; + +/** + * XML工具类 + */ +@interface MOBFXml : NSObject + +/** + * 根节点 + */ +@property (nonatomic, strong, readonly) MOBFXmlNode *rootNode; + +/** + * 初始化XML实例对象 + * + * @param path XML文件路径 + * + * @return XML实例对象 + */ +- (instancetype)initWithPath:(NSString *)path; + +/** + * 初始化XML实例对象 + * + * @param string XML字符串描述 + * + * @return XML实例对象 + */ +- (instancetype)initWithString:(NSString *)string; + +/** + * 获取XML字典描述对象 + * + * @return 字典对象 + */ +- (NSDictionary *)dictionaryValue; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFXmlNode.h b/Support/Required/MOBFoundation.framework/Headers/MOBFXmlNode.h new file mode 100755 index 0000000..630ffb0 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFXmlNode.h @@ -0,0 +1,48 @@ +// +// MOBFXmlNode.h +// MOBFoundation +// +// Created by fenghj on 15/9/17. +// Copyright © 2015年 MOB. All rights reserved. +// + +#import + +/** + * XML节点 + */ +@interface MOBFXmlNode : NSObject + +/** + * 父级节点 + */ +@property (nonatomic, weak) MOBFXmlNode *parentNode; + +/** + * 节点名称 + */ +@property (nonatomic, copy) NSString *name; + +/** + * 属性集合 + */ +@property (nonatomic, strong, readonly) NSMutableDictionary *attributes; + +/** + * 子节点 + */ +@property (nonatomic, strong, readonly) NSMutableArray *children; + +/** + * 文本信息 + */ +@property (nonatomic, copy) NSString *text; + +/** + * 获取节点的字典结构描述 + * + * @return 字典结构 + */ +- (NSDictionary *)dictionaryValue; + +@end diff --git a/Support/Required/MOBFoundation.framework/Headers/MOBFoundation.h b/Support/Required/MOBFoundation.framework/Headers/MOBFoundation.h new file mode 100755 index 0000000..72f51a7 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/Headers/MOBFoundation.h @@ -0,0 +1,36 @@ +// +// MOBFoundation.h +// MOBFoundation +// +// Created by vimfung on 15-1-16. +// Copyright (c) 2015年 MOB. All rights reserved. +// + +#ifndef MOBFoundation_MOBFoundation_h +#define MOBFoundation_MOBFoundation_h + +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import + +#import +#import +#import +#import + +#import +#import + +#import + +#endif diff --git a/Support/Required/MOBFoundation.framework/Info.plist b/Support/Required/MOBFoundation.framework/Info.plist new file mode 100755 index 0000000..a5d7cac Binary files /dev/null and b/Support/Required/MOBFoundation.framework/Info.plist differ diff --git a/Support/Required/MOBFoundation.framework/MOBFoundation b/Support/Required/MOBFoundation.framework/MOBFoundation new file mode 100755 index 0000000..c1b0f23 Binary files /dev/null and b/Support/Required/MOBFoundation.framework/MOBFoundation differ diff --git a/Support/Required/MOBFoundation.framework/en.lproj/.svn/all-wcprops b/Support/Required/MOBFoundation.framework/en.lproj/.svn/all-wcprops new file mode 100644 index 0000000..6d5ab04 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/en.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 174 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/en.lproj +END +InfoPlist.strings +K 25 +svn:wc:ra_dav:version-url +V 192 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/en.lproj/InfoPlist.strings +END diff --git a/Support/Required/MOBFoundation.framework/en.lproj/.svn/entries b/Support/Required/MOBFoundation.framework/en.lproj/.svn/entries new file mode 100644 index 0000000..8b6d76a --- /dev/null +++ b/Support/Required/MOBFoundation.framework/en.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +588650 +https://pengjun@svn.yy.com/yy-music/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/MOBFoundation.framework/en.lproj +https://pengjun@svn.yy.com/yy-music + + + +2017-03-30T13:15:29.587190Z +557502 +fangjiehua + + + + + + + + + + + + + + +ea1c70d9-e22e-4a8d-9299-3be15357ce30 + +InfoPlist.strings +file + + + + +2017-06-02T11:05:03.000000Z +ce7f5b3d4bfc7b4b0da6a06dccc515f2 +2017-03-30T13:15:29.587190Z +557502 +fangjiehua +has-props + + + + + + + + + + + + + + + + + + + + +42 + diff --git a/Support/Required/MOBFoundation.framework/en.lproj/.svn/prop-base/InfoPlist.strings.svn-base b/Support/Required/MOBFoundation.framework/en.lproj/.svn/prop-base/InfoPlist.strings.svn-base new file mode 100644 index 0000000..dbc918b --- /dev/null +++ b/Support/Required/MOBFoundation.framework/en.lproj/.svn/prop-base/InfoPlist.strings.svn-base @@ -0,0 +1,9 @@ +K 14 +svn:executable +V 1 +* +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Support/Required/MOBFoundation.framework/en.lproj/.svn/text-base/InfoPlist.strings.svn-base b/Support/Required/MOBFoundation.framework/en.lproj/.svn/text-base/InfoPlist.strings.svn-base new file mode 100644 index 0000000..3967e06 Binary files /dev/null and b/Support/Required/MOBFoundation.framework/en.lproj/.svn/text-base/InfoPlist.strings.svn-base differ diff --git a/Support/Required/MOBFoundation.framework/en.lproj/InfoPlist.strings b/Support/Required/MOBFoundation.framework/en.lproj/InfoPlist.strings new file mode 100755 index 0000000..3967e06 Binary files /dev/null and b/Support/Required/MOBFoundation.framework/en.lproj/InfoPlist.strings differ diff --git a/Support/Required/MOBFoundation.framework/readme b/Support/Required/MOBFoundation.framework/readme new file mode 100755 index 0000000..b1bf827 --- /dev/null +++ b/Support/Required/MOBFoundation.framework/readme @@ -0,0 +1,8 @@ +========================================= +MOBFoundation.framework +========================================= + +1、引用此库需要添加下面依赖库: +libz.dylib +libicucore.dylib + diff --git a/Support/Required/ShareSDK.bundle/.svn/all-wcprops b/Support/Required/ShareSDK.bundle/.svn/all-wcprops new file mode 100644 index 0000000..b5181bd --- /dev/null +++ b/Support/Required/ShareSDK.bundle/.svn/all-wcprops @@ -0,0 +1,5 @@ +K 25 +svn:wc:ra_dav:version-url +V 157 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDK.bundle +END diff --git a/Support/Required/ShareSDK.bundle/.svn/entries b/Support/Required/ShareSDK.bundle/.svn/entries new file mode 100644 index 0000000..187a1e3 --- /dev/null +++ b/Support/Required/ShareSDK.bundle/.svn/entries @@ -0,0 +1,40 @@ +10 + +dir +588650 +https://pengjun@svn.yy.com/yy-music/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDK.bundle +https://pengjun@svn.yy.com/yy-music + + + +2016-12-22T03:39:25.744704Z +524017 +wubangmin + + + + + + + + + + + + + + +ea1c70d9-e22e-4a8d-9299-3be15357ce30 + +Base.lproj +dir + +en.lproj +dir + +ScriptCore +dir + +zh-Hans.lproj +dir + diff --git a/Support/Required/ShareSDK.bundle/Base.lproj/.svn/all-wcprops b/Support/Required/ShareSDK.bundle/Base.lproj/.svn/all-wcprops new file mode 100644 index 0000000..befb8c0 --- /dev/null +++ b/Support/Required/ShareSDK.bundle/Base.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 168 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDK.bundle/Base.lproj +END +ShareSDK.strings +K 25 +svn:wc:ra_dav:version-url +V 185 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDK.bundle/Base.lproj/ShareSDK.strings +END diff --git a/Support/Required/ShareSDK.bundle/Base.lproj/.svn/entries b/Support/Required/ShareSDK.bundle/Base.lproj/.svn/entries new file mode 100644 index 0000000..093b136 --- /dev/null +++ b/Support/Required/ShareSDK.bundle/Base.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +588650 +https://pengjun@svn.yy.com/yy-music/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDK.bundle/Base.lproj +https://pengjun@svn.yy.com/yy-music + + + +2016-12-16T08:04:00.403474Z +520872 +lanfanglong + + + + + + + + + + + + + + +ea1c70d9-e22e-4a8d-9299-3be15357ce30 + +ShareSDK.strings +file + + + + +2017-06-02T11:04:50.000000Z +79fb0054116c7ca6dfde2214822c4aeb +2016-12-16T08:04:00.403474Z +520872 +lanfanglong +has-props + + + + + + + + + + + + + + + + + + + + +1002 + diff --git a/Support/Required/ShareSDK.bundle/Base.lproj/.svn/prop-base/ShareSDK.strings.svn-base b/Support/Required/ShareSDK.bundle/Base.lproj/.svn/prop-base/ShareSDK.strings.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/ShareSDK.bundle/Base.lproj/.svn/prop-base/ShareSDK.strings.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/ShareSDK.bundle/Base.lproj/.svn/text-base/ShareSDK.strings.svn-base b/Support/Required/ShareSDK.bundle/Base.lproj/.svn/text-base/ShareSDK.strings.svn-base new file mode 100644 index 0000000..86bf7a6 --- /dev/null +++ b/Support/Required/ShareSDK.bundle/Base.lproj/.svn/text-base/ShareSDK.strings.svn-base @@ -0,0 +1,26 @@ +/* + ShareSDKLocalizable.strings + AppgoFramework + + + Created by ShareSDK.cn on 13-1-14. + 官网地址:http://www.mob.com + 技术支持邮箱:support@sharesdk.cn + 官方微信:ShareSDK (如果发布新版本的话,我们将会第一时间通过微信将版本更新内容推送给您。如果使用过程中有任何问题,也可以通过微信与我们取得联系,我们将会在24小时内给予回复) + 商务QQ:4006852216 + Copyright (c) 2013年 ShareSDK.cn. All rights reserved. + +*/ + +"AUTH_VIEW_TITLE" = "用户授权"; +"AUTH_VIEW_CANCEL_BUTTON" = "取消"; +"AUTH_VIEW_SIGN_IN" = "登录"; +"AUTH_VIEW_ACCOUNT" = "帐号,如name@example.com"; +"AUTH_VIEW_PASS" = "密码"; +"AUTH_VIEW_ALERT_TITLE" = "提示"; +"AUTH_VIEW_ALERT_CANCEL_BUTTON" = "知道了"; +"AUTH_VIEW_INPUT_ACCOUNT" = "请输入登录帐号!"; +"AUTH_VIEW_INPUT_PASSWORD" = "请输入登录密码!"; +"AUTH_VIEW_UNAUTHORIZED" = "用户名或密码错误"; +"SHARE_VIEW_DONE" = "完成"; +"SHARE_VIEW_TITLE" = "分享"; diff --git a/Support/Required/ShareSDK.bundle/Base.lproj/ShareSDK.strings b/Support/Required/ShareSDK.bundle/Base.lproj/ShareSDK.strings new file mode 100755 index 0000000..86bf7a6 --- /dev/null +++ b/Support/Required/ShareSDK.bundle/Base.lproj/ShareSDK.strings @@ -0,0 +1,26 @@ +/* + ShareSDKLocalizable.strings + AppgoFramework + + + Created by ShareSDK.cn on 13-1-14. + 官网地址:http://www.mob.com + 技术支持邮箱:support@sharesdk.cn + 官方微信:ShareSDK (如果发布新版本的话,我们将会第一时间通过微信将版本更新内容推送给您。如果使用过程中有任何问题,也可以通过微信与我们取得联系,我们将会在24小时内给予回复) + 商务QQ:4006852216 + Copyright (c) 2013年 ShareSDK.cn. All rights reserved. + +*/ + +"AUTH_VIEW_TITLE" = "用户授权"; +"AUTH_VIEW_CANCEL_BUTTON" = "取消"; +"AUTH_VIEW_SIGN_IN" = "登录"; +"AUTH_VIEW_ACCOUNT" = "帐号,如name@example.com"; +"AUTH_VIEW_PASS" = "密码"; +"AUTH_VIEW_ALERT_TITLE" = "提示"; +"AUTH_VIEW_ALERT_CANCEL_BUTTON" = "知道了"; +"AUTH_VIEW_INPUT_ACCOUNT" = "请输入登录帐号!"; +"AUTH_VIEW_INPUT_PASSWORD" = "请输入登录密码!"; +"AUTH_VIEW_UNAUTHORIZED" = "用户名或密码错误"; +"SHARE_VIEW_DONE" = "完成"; +"SHARE_VIEW_TITLE" = "分享"; diff --git a/Support/Required/ShareSDK.bundle/ScriptCore/.svn/all-wcprops b/Support/Required/ShareSDK.bundle/ScriptCore/.svn/all-wcprops new file mode 100644 index 0000000..1ae5ac4 --- /dev/null +++ b/Support/Required/ShareSDK.bundle/ScriptCore/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 168 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDK.bundle/ScriptCore +END +ShareSDK.js +K 25 +svn:wc:ra_dav:version-url +V 180 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDK.bundle/ScriptCore/ShareSDK.js +END +NativeExt.js +K 25 +svn:wc:ra_dav:version-url +V 181 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDK.bundle/ScriptCore/NativeExt.js +END diff --git a/Support/Required/ShareSDK.bundle/ScriptCore/.svn/entries b/Support/Required/ShareSDK.bundle/ScriptCore/.svn/entries new file mode 100644 index 0000000..12ddf9d --- /dev/null +++ b/Support/Required/ShareSDK.bundle/ScriptCore/.svn/entries @@ -0,0 +1,99 @@ +10 + +dir +588650 +https://pengjun@svn.yy.com/yy-music/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDK.bundle/ScriptCore +https://pengjun@svn.yy.com/yy-music + + + +2016-12-16T08:04:00.403474Z +520872 +lanfanglong + + + + + + + + + + + + + + +ea1c70d9-e22e-4a8d-9299-3be15357ce30 + +ShareSDK.js +file + + + + +2017-06-02T11:04:50.000000Z +7843080001a11a6917218b51f4a76e16 +2016-12-16T08:04:00.403474Z +520872 +lanfanglong + + + + + + + + + + + + + + + + + + + + + +6968 + +NativeExt.js +file + + + + +2017-06-02T11:04:50.000000Z +00bcb8dac9f1c2dbcd6b0b5027a3cbba +2016-12-16T08:04:00.403474Z +520872 +lanfanglong + + + + + + + + + + + + + + + + + + + + + +10178 + +platforms +dir + diff --git a/Support/Required/ShareSDK.bundle/ScriptCore/.svn/text-base/NativeExt.js.svn-base b/Support/Required/ShareSDK.bundle/ScriptCore/.svn/text-base/NativeExt.js.svn-base new file mode 100644 index 0000000..3ba5709 --- /dev/null +++ b/Support/Required/ShareSDK.bundle/ScriptCore/.svn/text-base/NativeExt.js.svn-base @@ -0,0 +1 @@ +var $pluginID = "com.mob.ext";eval(function(p,a,c,k,e,d){e=function(c){return(c35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('6 1a=0;$1.2=5(){};$1.2.H={};$1.2.7=5(3){6 k=(3T 3S).3R()+1a;1a++;$1.2.H[k]=5(J){3Q(3!=r){3(J)}3P $1.2.H[k];$1.2.H[k]=r};3O"$1.2.H["+k+"]"};$1.2.1V=5(k,1U,1T,3){6 4=$1.2.7(3);$1.8.1V(k,1U,1T,4)};$1.2.19=5(a,v,u,t,3){6 4=$1.2.7(3);$1.8.19(a,v,u,t,r,r,r,4)};$1.2.3N=5(a,v,u,t,11,10,Z,3){6 4=$1.2.7(3);$1.8.19(a,v,u,t,11,10,Z,4)};$1.2.1S=5(p,1R,13,12,3){6 4=$1.2.7(3);$1.8.1S(p,1R,13,12,4)};$1.2.1Q=5(p,13,12,3){6 4=$1.2.7(3);$1.8.1Q(p,13,12,4)};$1.2.1P=5(3){6 4=$1.2.7(3);$1.8.1P(4)};$1.2.1O=5(a,3){6 4=$1.2.7(3);$1.8.1O(a,4)};$1.2.1N=5(3){6 4=$1.2.7(3);$1.8.1N(4)};$1.2.1M=5(3){6 4=$1.2.7(3);$1.8.1M(4)};$1.2.1L=5(1K,3){6 4=$1.2.7(3);$1.8.1L(1K,4)};$1.2.1J=5(a,3){6 4=$1.2.7(3);$1.8.1J(a,4)};$1.2.1I=5(1H,3){6 4=$1.2.7(3);$1.8.1I(1H,4)};$1.2.18=5(m,p,a,v,u,t,3){6 4=$1.2.7(3);$1.8.18(m,p,a,v,u,t,r,r,r,4)};$1.2.3M=5(m,p,a,v,u,t,11,10,Z,3){6 4=$1.2.7(3);$1.8.18(m,p,a,v,u,t,11,10,Z,4)};$1.2.3L=5(9,k,D,3){6 4=$1.2.7(3);$1.8.3K(9,k,D,4)};$1.2.3J=5(9,k,a,3){6 4=$1.2.7(3);$1.8.3I(9,k,a,4)};$1.2.3H=5(9,a,3){6 4=$1.2.7(3);$1.8.3G(9,a,4)};$1.2.3F=5(9,c,g,3){6 4=$1.2.7(3);$1.8.w(9,c,$1.e.d.n,4,g)};$1.2.3E=5(9,c,b,f,h,j,1G,3){6 4=$1.2.7(3);$1.8.w(9,c,$1.e.d.l,4,b,f,h,j,1G)};$1.2.3D=5(9,c,b,f,h,a,3){6 4=$1.2.7(3);$1.8.w(9,c,$1.e.d.q,4,b,f,h,a)};$1.2.3C=5(9,c,b,f,h,a,M,L,3){6 4=$1.2.7(3);$1.8.w(9,c,$1.e.d.15,4,b,f,h,a,M,L)};$1.2.3B=5(9,c,b,f,h,a,K,3){6 4=$1.2.7(3);$1.8.w(9,c,$1.e.d.E,4,b,f,h,a,K)};$1.2.3A=5(9,c,b,f,h,a,3){6 4=$1.2.7(3);$1.8.w(9,c,$1.e.d.F,4,b,f,h,a)};$1.2.3z=5(9,c,b,f,h,1F,1E,3){6 4=$1.2.7(3);$1.8.w(9,c,$1.e.d.3y,4,b,f,h,1F,1E)};$1.2.3x=5(i,a,3){6 4=$1.2.7(3);$1.8.3w(i,a,4)};$1.2.3v=5(i,g,3){6 4=$1.2.7(3);$1.8.17(i,$1.e.d.n,4,g)};$1.2.3u=5(i,g,j,3){6 4=$1.2.7(3);$1.8.17(i,$1.e.d.l,4,g,j)};$1.2.3t=5(i,b,f,h,a,1D,3){6 4=$1.2.7(3);$1.8.17(i,$1.e.d.q,4,b,f,h,a,1D)};$1.2.3s=5(9,D,3){6 4=$1.2.7(3);$1.8.3r(9,D,4)};$1.2.3q=5(9,a,3){6 4=$1.2.7(3);$1.8.3p(9,a,4)};$1.2.3o=5(9,c,g,3){6 4=$1.2.7(3);$1.8.G(9,c,$1.e.d.n,4,g)};$1.2.3n=5(9,c,b,f,h,j,3){6 4=$1.2.7(3);$1.8.G(9,c,$1.e.d.l,4,b,f,h,j)};$1.2.3m=5(9,c,b,f,h,a,3){6 4=$1.2.7(3);$1.8.G(9,c,$1.e.d.q,4,b,f,h,a)};$1.2.3l=5(9,c,b,f,h,a,1C,3){6 4=$1.2.7(3);$1.8.G(9,c,$1.e.d.E,4,b,f,h,a,1C)};$1.2.3k=5(9,c,b,f,h,a,1B,3){6 4=$1.2.7(3);$1.8.G(9,c,$1.e.d.F,4,b,f,h,a,1B)};$1.2.3j=5(9,a,3){6 4=$1.2.7(3);$1.8.3i(9,a,4)};$1.2.3h=5(i,Y,s,3){6 4=$1.2.7(3);$1.8.3g(i,Y,s,4)};$1.2.3f=5(i,Y,s,a,3){6 4=$1.2.7(3);$1.8.3e(i,Y,s,a,4)};$1.2.3d=5(i,s,O,3){6 4=$1.2.7(3);$1.8.3c(i,s,O,4)};$1.2.3b=5(i,a,3){6 4=$1.2.7(3);$1.8.3a(i,a,4)};$1.2.1A=5(1z,W,1y,3){6 4=$1.2.7(3);$1.8.1A(1z,W,1y,4)};$1.2.39=5(o,g,b,1x,X,3){6 4=$1.2.7(3);$1.8.38(o,4,g,b,1x,X)};$1.2.37=5(o,g,b,1w,X,1v,1u,3){6 4=$1.2.7(3);$1.8.36(o,4,g,b,1w,X,1v,1u)};$1.2.35=5(o,g,P,W,3){6 4=$1.2.7(3);$1.8.34(o,4,g,P,W)};$1.2.33=5(9,i,V,D,3){6 4=$1.2.7(3);$1.8.32(9,i,V,D,4)};$1.2.31=5(9,i,V,a,3){6 4=$1.2.7(3);$1.8.30(9,i,V,a,4)};$1.2.2Z=5(g,3){6 4=$1.2.7(3);$1.8.1t($1.e.d.n,4,g)};$1.2.2Y=5(g,a,3){6 4=$1.2.7(3);$1.8.1t($1.e.d.q,4,g,a)};$1.2.2X=5(9,1s,1r,f,a,j,p,1q,3){6 4=$1.2.7(3);$1.8.2W(9,1s,4,$1.e.d.q,1r,f,a,j,p,1q)};$1.2.2V=5(o,j,x,y,3){6 4=$1.2.7(3);$1.8.2U(o,4,j,x,y)};$1.2.2T=5(g,3){6 4=$1.2.7(3);$1.8.U($1.e.d.n,4,g)};$1.2.2S=5(j,x,y,3){6 4=$1.2.7(3);$1.8.U($1.e.d.l,4,j,x,y)};$1.2.2R=5(T,x,y,3){6 4=$1.2.7(3);$1.8.U($1.e.d.E,4,T,x,y)};$1.2.2Q=5(R,x,y,3){6 4=$1.2.7(3);$1.8.U($1.e.d.F,4,R,x,y)};$1.2.2P=5(j,3){6 4=$1.2.7(3);$1.8.S($1.e.d.l,4,j)};$1.2.2O=5(1p,3){6 4=$1.2.7(3);$1.8.S($1.e.d.l,4,r,1p)};$1.2.2N=5(T,3){6 4=$1.2.7(3);$1.8.S($1.e.d.E,4,T)};$1.2.2M=5(R,3){6 4=$1.2.7(3);$1.8.S($1.e.d.F,4,R)};$1.2.2L=5(g,3){6 4=$1.2.7(3);$1.8.1o($1.e.d.n,4,g)};$1.2.2K=5(j,3){6 4=$1.2.7(3);$1.8.1o($1.e.d.l,4,j)};$1.2.2J=5(9,k,a,3){6 4=$1.2.7(3);$1.8.2I(9,k,a,4)};$1.2.2H=5(1n,Q,3){6 4=$1.2.7(3);$1.8.2G(1n,Q,4)};$1.2.2F=5(1m,Q,g,P,b,1l,1k,3){6 4=$1.2.7(3);$1.8.2E(1m,Q,g,P,b,1l,1k,4)};$1.2.2D=5(9,c,g,3){6 4=$1.2.7(3);$1.8.16(9,c,$1.e.d.n,4,g)};$1.2.2C=5(9,c,b,f,j,3){6 4=$1.2.7(3);$1.8.16(9,c,$1.e.d.l,4,b,f,j)};$1.2.2B=5(9,c,b,f,j,a,3){6 4=$1.2.7(3);$1.8.16(9,c,$1.e.d.q,4,b,f,j,a)};$1.2.2A=5(9,a,3){6 4=$1.2.7(3);$1.8.2z(9,a,4)};$1.2.2y=5(i,s,O,1j,3){6 4=$1.2.7(3);$1.8.2x(i,s,O,1j,4)};$1.2.2w=5(3){6 4=$1.2.7(3);$1.8.2v(4)};$1.2.2u=5(i,a,3){6 4=$1.2.7(3);$1.8.2t(i,a,4)};$1.2.2s=5(i,c,g,3){6 4=$1.2.7(3);$1.8.N(i,c,$1.e.d.n,4,g)};$1.2.2r=5(i,c,g,C,B,A,3){6 4=$1.2.7(3);$1.8.N(i,c,$1.e.d.l,4,g,C,B,A)};$1.2.2q=5(i,c,g,C,B,A,b,a,3){6 4=$1.2.7(3);$1.8.N(i,c,$1.e.d.q,4,g,C,B,A,b,a)};$1.2.2p=5(i,c,g,C,B,A,b,a,1i,1h,1g,1f,3){6 4=$1.2.7(3);$1.8.N(i,c,$1.e.d.15,4,g,C,B,A,b,a,1i,1h,1g,1f)};$1.2.2o=5(9,3){6 4=$1.2.7(3);$1.8.2n(9,4)};$1.2.2m=5(9,k,a,3){6 4=$1.2.7(3);$1.8.2l(9,k,a,4)};$1.2.2k=5(9,a,3){6 4=$1.2.7(3);$1.8.2j(9,a,4)};$1.2.2i=5(9,c,g,3){6 4=$1.2.7(3);$1.8.z(9,c,$1.e.d.n,4,g)};$1.2.2h=5(9,c,b,f,h,j,3){6 4=$1.2.7(3);$1.8.z(9,c,$1.e.d.l,4,b,f,h,j)};$1.2.2g=5(9,c,b,f,h,a,3){6 4=$1.2.7(3);$1.8.z(9,c,$1.e.d.q,4,b,f,h,a)};$1.2.2f=5(9,c,b,f,h,a,M,L,3){6 4=$1.2.7(3);$1.8.z(9,c,$1.e.d.15,4,b,f,h,a,M,L)};$1.2.2e=5(9,c,b,f,h,a,3){6 4=$1.2.7(3);$1.8.z(9,c,$1.e.d.F,4,b,f,h,a)};$1.2.2d=5(9,c,b,f,h,a,K,3){6 4=$1.2.7(3);$1.8.z(9,c,$1.e.d.E,4,b,f,h,a,K)};$1.2.2c=5(o,g,j,1e,1d,3){6 4=$1.2.7(3);$1.8.2b(o,4,g,j,1e,1d)};$1.2.2a=5(9,g,3){6 4=$1.2.7(3);$1.8.14(9,$1.e.d.n,4,g)};$1.2.29=5(9,b,f,j,3){6 4=$1.2.7(3);$1.8.14(9,$1.e.d.l,4,b,f,j)};$1.2.28=5(9,b,f,j,a,3){6 4=$1.2.7(3);$1.8.14(9,$1.e.d.q,4,b,f,j,a)};$1.2.27=5(9,a,3){6 4=$1.2.7(3);$1.8.26(9,a,4)};$1.2.25=5(9,k,a,m,3){6 4=$1.2.7(3);$1.8.24(9,k,a,m,4)};$1.2.23=5(m,9,J,k,3){6 4=$1.2.7(3);$1.8.22(m,9,J,k,4)};$1.2.21=5(I,1c,m,3){6 4=$1.2.7(3);$1.8.20(I,1c,m,4)};$1.2.1Z=5(I,3){6 4=$1.2.7(3);$1.8.1Y(I,4)};$1.2.1X=5(1b,3){6 4=$1.2.7(3);$1.8.1W(1b,4)};',62,242,'|mob|ext|callback|func|function|var|_bindCallbackFunc|native|appId|url|title|scene|contentType|shareSDK|desc|text|thumbImage|appKey|image|sessionId|Image|platformType|Text|type|name|WebPage|null|redirectUri|header|params|method|ssdk_plugin_wechat_share|||ssdk_plugin_yixin_share|imageHeight|imageWidth|imageUrl|scopes|Audio|Video|ssdk_plugin_qq_share|_callbackFuncs|imagePath|data|musicUrl|fileData|extInfo|ssdk_plugin_kakao_share|scope|images|oauthToken|video|ssdk_plugin_facebookmessenger_share|audio|ssdk_plugin_whatsapp_share|secretKey|urls|recipients|appSecret|oauthTokenSecret|consumerSecret|oauthParams|domain|secure|ssdk_plugin_dingtalk_share|App|ssdk_plugin_alipay_share|ssdk_plugin_weibo_share|ssdk_callHTTPApi|http|_seqId|className|thumbImagePath|menuDisplayY|menuDisplayX|ipadExecParams|iphoneExecParams|andoridExecParams|appButtonTitle|clientType|tags|notebook|requestUrl|baseUrl|ssdk_plugin_line_share|gif|source|caption|redirectUrl|ssdk_plugin_googleplus_share|bcc|cc|attachments|attachements|user|platform|ssdk_getShortUrls|videoFlashUrl|audioFlashUrl|objectId|sourceFileData|fileExtension|emoticonData|xmlString|parseXML|downloadFile|pluginKey|isPluginRegisted|isPad|isMultitaskingSupported|canOpenURL|getAppConfig|getCacheData|value|setCacheData|userData|pluginId|ssdk_auth|ssdk_plugin_isConnectedPlatformSDK|ssdk_isConnectedPlatformSDK|ssdk_plugin_checkThumbImageSize|checkThumbImageSize|ssdk_plugin_getImageData|ssdk_getImageData|ssdk_plugin_setDataToPasteboard|ssdk_setDataToPasteboard|ssdk_plugin_getDataFromPasteboard|ssdk_getDataFromPasteboard|ssdk_plugin_dingtalk_handleShareCallback|ssdk_dingtalkHandleShareCallback|ssdk_dingtalkShareWebpage|ssdk_dingtalkShareImage|ssdk_dingtalkShareText|ssdk_plugin_print_share|ssdk_printShare|ssdk_yixinShareAudio|ssdk_yixinShareVideo|ssdk_yixinShareApp|ssdk_yixinShareWebpage|ssdk_yixinShareImage|ssdk_yixinShareText|ssdk_plugin_yixin_handleShareCallback|ssdk_yixinHandleShareCalback|ssdk_plugin_yixin_handleSSOCallback|ssdk_yixinHandleSSOCallback|ssdk_plugin_yixin_auth|ssdk_yixinAuth|ssdk_kakaoShareApp|ssdk_kakaoShareWebpage|ssdk_kakaoShareImage|ssdk_kakaoShareText|ssdk_plugin_kakao_handleSSOCallback|ssdk_kakaoHandleSSOCallback|ssdk_plugin_line_auth|ssdk_lineAuth|ssdk_plugin_kakao_auth|ssdk_kakaoAuth|ssdk_plugin_alipay_handleShareCallback|ssdk_alipayHandleShareCallback|ssdk_alipayShareWebpage|ssdk_alipayShareImage|ssdk_alipayShareText|ssdk_plugin_evernote_share|ssdk_evernoteShare|ssdk_plugin_evernote_getuserinfo|ssdk_evernoteGetUserInfo|ssdk_plugin_line_handleSSOCallback|ssdk_lineHandleSSOCalback|ssdk_lineShareImage|ssdk_lineShareText|ssdk_facebookmessengerShareVideo|ssdk_facebookmessengerShareAudio|ssdk_facebookmessengerShareGif|ssdk_facebookmessengerShareImage|ssdk_whatsappShareVideo|ssdk_whatsappShareAudio|ssdk_whatsappShareImage|ssdk_whatsappShareText|ssdk_plugin_instagram_share|ssdk_instagramShare|ssdk_plugin_facebook_share|ssdk_facebookShareWebPage|ssdk_googleplusShareWebPage|ssdk_googleplusShareText|ssdk_plugin_renren_handleSSOCallback|ssdk_renrenHandleSSOCallback|ssdk_plugin_renren_auth|ssdk_renrenAuth|ssdk_plugin_copy|ssdk_copy|ssdk_plugin_mail_share|ssdk_mailShare|ssdk_plugin_sms_share|ssdk_smsShare|ssdk_plugin_weibo_handleSSOCallback|ssdk_weiboHandleSSOCallback|ssdk_plugin_weibo_auth|ssdk_weiboAuth|ssdk_plugin_tcweibo_handleSSOCallback|ssdk_tcweiboHandleSSOCallback|ssdk_plugin_tcweibo_auth|ssdk_tcweiboAuth|ssdk_plugin_qq_handleShareCallback|ssdk_qqHandlerShareCallback|ssdk_qqShareVideo|ssdk_qqShareAudio|ssdk_qqShareWebpage|ssdk_qqShareImage|ssdk_qqShareText|ssdk_plugin_qq_handleSSOCallback|ssdk_qqHandlerSSOCallback|ssdk_plugin_qq_auth|ssdk_qqAuth|ssdk_weiboShareWebpage|ssdk_weiboShareImage|ssdk_weiboShareText|ssdk_plugin_weibo_handleShareCallback|ssdk_weiboHandleShareCallback|File|ssdk_wechatShareFile|ssdk_wechatShareVideo|ssdk_wechatShareAudio|ssdk_wechatShareApp|ssdk_wechatShareWebpage|ssdk_wechatShareImage|ssdk_wechatShareText|ssdk_plugin_wechat_handleShareCallback|ssdk_wechatHandleShareCalback|ssdk_plugin_wechat_handleSSOCallback|ssdk_wechatHandleSSOCalback|ssdk_plugin_wechat_auth|ssdk_wechatAuth|ssdk_callOAuthApi|oauth|return|delete|if|getTime|Date|new'.split('|'),0,{})) diff --git a/Support/Required/ShareSDK.bundle/ScriptCore/.svn/text-base/ShareSDK.js.svn-base b/Support/Required/ShareSDK.bundle/ScriptCore/.svn/text-base/ShareSDK.js.svn-base new file mode 100644 index 0000000..5c348c6 --- /dev/null +++ b/Support/Required/ShareSDK.bundle/ScriptCore/.svn/text-base/ShareSDK.js.svn-base @@ -0,0 +1 @@ +var $pluginID = "com.mob.sharesdk.base";eval(function(p,a,c,k,e,d){e=function(c){return(c35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('c 1e=e;c Z={};c M={};c k={D:{},C:{},B:{}};c 1q="4y-4x";f 1d(1c){W.2l=1c;W.1y={2k:"4w",4v:2m,2j:2m};W.4u={}}1d.1z.1c=f(){l W.2l};1d.1z.1w=f(){l W.1y["2k"]};1d.1z.1v=f(){l W.1y["2j"]};f 4t(){}f b(){}b.v={1x:0,4s:1,4r:2,4q:5,4p:6,4o:7,4n:8,4m:10,4l:11,4k:12,4j:14,4i:15,4h:16,4g:17,4f:18,4e:19,4d:20,4c:21,4b:22,4a:23,49:24,48:25,47:26,3Z:27,3Y:30,3X:34,3W:35,3V:36,3U:37,3T:38,3S:39,3R:40,3Q:41,3P:42,3O:43,3N:44,3M:45,3L:46,3K:3J,3I:3H,3G:3F,3E:3D,3C:3B,3A:3z,3y:3x,3w:3v};b.I={3u:0,3t:1,H:2,3s:3};b.K={1x:0,J:3r,3q:3p,3o:3n,3m:3l,3k:3j,3i:3h,3g:3f,3e:3d,3c:3b};b.3a={1x:0,33:1,32:2};b.31={2Z:0,2Y:1,2X:2,2W:3,2V:4,2U:5,2T:6,2S:7};b.2R=f(a,2i){Z[a]=2i};b.q=f(a){c 9=M[a];d(9==e){c x=Z[a];d(x!=e){9=1b x(a);M[a]=9;E={};d(k["D"][a]){E=k["D"][a]}d(k["C"][a]){E=k["C"][a]}d(k["B"][a]){E=k["B"][a]}9.U(E);9.T()}}u{E={};d(k["D"][a]){E=k["D"][a]}d(k["C"][a]){E=k["C"][a]}d(k["B"][a]){E=k["B"][a]}9.U(E);9.T()}l 9};b.1w=f(){l 1e.1w()};b.1v=f(){l 1e.1v()};b.2Q=f(a,Y,y,X){d(y!=e&&y.S>0){c 1t=/(2P?:\\/\\/){1}[A-2O-2N-2M\\.\\-\\/:\\?&%=,;\\[\\]\\{\\}`~!@#\\$\\^\\*\\(\\)\\+\\\\|]+/g;c 2h=/<2L[^>]*>/g;c 2g=/(\\w+)\\s*=\\s*["|\']([^"\']*)["|\']/g;c 1f={};c 1u={};1a(c i=0;i0){$o.2E.2D(a,1k,Y,f(r){d(r.L==e){1a(c i=0;i35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('6 1a=0;$1.2=5(){};$1.2.H={};$1.2.7=5(3){6 k=(3T 3S).3R()+1a;1a++;$1.2.H[k]=5(J){3Q(3!=r){3(J)}3P $1.2.H[k];$1.2.H[k]=r};3O"$1.2.H["+k+"]"};$1.2.1V=5(k,1U,1T,3){6 4=$1.2.7(3);$1.8.1V(k,1U,1T,4)};$1.2.19=5(a,v,u,t,3){6 4=$1.2.7(3);$1.8.19(a,v,u,t,r,r,r,4)};$1.2.3N=5(a,v,u,t,11,10,Z,3){6 4=$1.2.7(3);$1.8.19(a,v,u,t,11,10,Z,4)};$1.2.1S=5(p,1R,13,12,3){6 4=$1.2.7(3);$1.8.1S(p,1R,13,12,4)};$1.2.1Q=5(p,13,12,3){6 4=$1.2.7(3);$1.8.1Q(p,13,12,4)};$1.2.1P=5(3){6 4=$1.2.7(3);$1.8.1P(4)};$1.2.1O=5(a,3){6 4=$1.2.7(3);$1.8.1O(a,4)};$1.2.1N=5(3){6 4=$1.2.7(3);$1.8.1N(4)};$1.2.1M=5(3){6 4=$1.2.7(3);$1.8.1M(4)};$1.2.1L=5(1K,3){6 4=$1.2.7(3);$1.8.1L(1K,4)};$1.2.1J=5(a,3){6 4=$1.2.7(3);$1.8.1J(a,4)};$1.2.1I=5(1H,3){6 4=$1.2.7(3);$1.8.1I(1H,4)};$1.2.18=5(m,p,a,v,u,t,3){6 4=$1.2.7(3);$1.8.18(m,p,a,v,u,t,r,r,r,4)};$1.2.3M=5(m,p,a,v,u,t,11,10,Z,3){6 4=$1.2.7(3);$1.8.18(m,p,a,v,u,t,11,10,Z,4)};$1.2.3L=5(9,k,D,3){6 4=$1.2.7(3);$1.8.3K(9,k,D,4)};$1.2.3J=5(9,k,a,3){6 4=$1.2.7(3);$1.8.3I(9,k,a,4)};$1.2.3H=5(9,a,3){6 4=$1.2.7(3);$1.8.3G(9,a,4)};$1.2.3F=5(9,c,g,3){6 4=$1.2.7(3);$1.8.w(9,c,$1.e.d.n,4,g)};$1.2.3E=5(9,c,b,f,h,j,1G,3){6 4=$1.2.7(3);$1.8.w(9,c,$1.e.d.l,4,b,f,h,j,1G)};$1.2.3D=5(9,c,b,f,h,a,3){6 4=$1.2.7(3);$1.8.w(9,c,$1.e.d.q,4,b,f,h,a)};$1.2.3C=5(9,c,b,f,h,a,M,L,3){6 4=$1.2.7(3);$1.8.w(9,c,$1.e.d.15,4,b,f,h,a,M,L)};$1.2.3B=5(9,c,b,f,h,a,K,3){6 4=$1.2.7(3);$1.8.w(9,c,$1.e.d.E,4,b,f,h,a,K)};$1.2.3A=5(9,c,b,f,h,a,3){6 4=$1.2.7(3);$1.8.w(9,c,$1.e.d.F,4,b,f,h,a)};$1.2.3z=5(9,c,b,f,h,1F,1E,3){6 4=$1.2.7(3);$1.8.w(9,c,$1.e.d.3y,4,b,f,h,1F,1E)};$1.2.3x=5(i,a,3){6 4=$1.2.7(3);$1.8.3w(i,a,4)};$1.2.3v=5(i,g,3){6 4=$1.2.7(3);$1.8.17(i,$1.e.d.n,4,g)};$1.2.3u=5(i,g,j,3){6 4=$1.2.7(3);$1.8.17(i,$1.e.d.l,4,g,j)};$1.2.3t=5(i,b,f,h,a,1D,3){6 4=$1.2.7(3);$1.8.17(i,$1.e.d.q,4,b,f,h,a,1D)};$1.2.3s=5(9,D,3){6 4=$1.2.7(3);$1.8.3r(9,D,4)};$1.2.3q=5(9,a,3){6 4=$1.2.7(3);$1.8.3p(9,a,4)};$1.2.3o=5(9,c,g,3){6 4=$1.2.7(3);$1.8.G(9,c,$1.e.d.n,4,g)};$1.2.3n=5(9,c,b,f,h,j,3){6 4=$1.2.7(3);$1.8.G(9,c,$1.e.d.l,4,b,f,h,j)};$1.2.3m=5(9,c,b,f,h,a,3){6 4=$1.2.7(3);$1.8.G(9,c,$1.e.d.q,4,b,f,h,a)};$1.2.3l=5(9,c,b,f,h,a,1C,3){6 4=$1.2.7(3);$1.8.G(9,c,$1.e.d.E,4,b,f,h,a,1C)};$1.2.3k=5(9,c,b,f,h,a,1B,3){6 4=$1.2.7(3);$1.8.G(9,c,$1.e.d.F,4,b,f,h,a,1B)};$1.2.3j=5(9,a,3){6 4=$1.2.7(3);$1.8.3i(9,a,4)};$1.2.3h=5(i,Y,s,3){6 4=$1.2.7(3);$1.8.3g(i,Y,s,4)};$1.2.3f=5(i,Y,s,a,3){6 4=$1.2.7(3);$1.8.3e(i,Y,s,a,4)};$1.2.3d=5(i,s,O,3){6 4=$1.2.7(3);$1.8.3c(i,s,O,4)};$1.2.3b=5(i,a,3){6 4=$1.2.7(3);$1.8.3a(i,a,4)};$1.2.1A=5(1z,W,1y,3){6 4=$1.2.7(3);$1.8.1A(1z,W,1y,4)};$1.2.39=5(o,g,b,1x,X,3){6 4=$1.2.7(3);$1.8.38(o,4,g,b,1x,X)};$1.2.37=5(o,g,b,1w,X,1v,1u,3){6 4=$1.2.7(3);$1.8.36(o,4,g,b,1w,X,1v,1u)};$1.2.35=5(o,g,P,W,3){6 4=$1.2.7(3);$1.8.34(o,4,g,P,W)};$1.2.33=5(9,i,V,D,3){6 4=$1.2.7(3);$1.8.32(9,i,V,D,4)};$1.2.31=5(9,i,V,a,3){6 4=$1.2.7(3);$1.8.30(9,i,V,a,4)};$1.2.2Z=5(g,3){6 4=$1.2.7(3);$1.8.1t($1.e.d.n,4,g)};$1.2.2Y=5(g,a,3){6 4=$1.2.7(3);$1.8.1t($1.e.d.q,4,g,a)};$1.2.2X=5(9,1s,1r,f,a,j,p,1q,3){6 4=$1.2.7(3);$1.8.2W(9,1s,4,$1.e.d.q,1r,f,a,j,p,1q)};$1.2.2V=5(o,j,x,y,3){6 4=$1.2.7(3);$1.8.2U(o,4,j,x,y)};$1.2.2T=5(g,3){6 4=$1.2.7(3);$1.8.U($1.e.d.n,4,g)};$1.2.2S=5(j,x,y,3){6 4=$1.2.7(3);$1.8.U($1.e.d.l,4,j,x,y)};$1.2.2R=5(T,x,y,3){6 4=$1.2.7(3);$1.8.U($1.e.d.E,4,T,x,y)};$1.2.2Q=5(R,x,y,3){6 4=$1.2.7(3);$1.8.U($1.e.d.F,4,R,x,y)};$1.2.2P=5(j,3){6 4=$1.2.7(3);$1.8.S($1.e.d.l,4,j)};$1.2.2O=5(1p,3){6 4=$1.2.7(3);$1.8.S($1.e.d.l,4,r,1p)};$1.2.2N=5(T,3){6 4=$1.2.7(3);$1.8.S($1.e.d.E,4,T)};$1.2.2M=5(R,3){6 4=$1.2.7(3);$1.8.S($1.e.d.F,4,R)};$1.2.2L=5(g,3){6 4=$1.2.7(3);$1.8.1o($1.e.d.n,4,g)};$1.2.2K=5(j,3){6 4=$1.2.7(3);$1.8.1o($1.e.d.l,4,j)};$1.2.2J=5(9,k,a,3){6 4=$1.2.7(3);$1.8.2I(9,k,a,4)};$1.2.2H=5(1n,Q,3){6 4=$1.2.7(3);$1.8.2G(1n,Q,4)};$1.2.2F=5(1m,Q,g,P,b,1l,1k,3){6 4=$1.2.7(3);$1.8.2E(1m,Q,g,P,b,1l,1k,4)};$1.2.2D=5(9,c,g,3){6 4=$1.2.7(3);$1.8.16(9,c,$1.e.d.n,4,g)};$1.2.2C=5(9,c,b,f,j,3){6 4=$1.2.7(3);$1.8.16(9,c,$1.e.d.l,4,b,f,j)};$1.2.2B=5(9,c,b,f,j,a,3){6 4=$1.2.7(3);$1.8.16(9,c,$1.e.d.q,4,b,f,j,a)};$1.2.2A=5(9,a,3){6 4=$1.2.7(3);$1.8.2z(9,a,4)};$1.2.2y=5(i,s,O,1j,3){6 4=$1.2.7(3);$1.8.2x(i,s,O,1j,4)};$1.2.2w=5(3){6 4=$1.2.7(3);$1.8.2v(4)};$1.2.2u=5(i,a,3){6 4=$1.2.7(3);$1.8.2t(i,a,4)};$1.2.2s=5(i,c,g,3){6 4=$1.2.7(3);$1.8.N(i,c,$1.e.d.n,4,g)};$1.2.2r=5(i,c,g,C,B,A,3){6 4=$1.2.7(3);$1.8.N(i,c,$1.e.d.l,4,g,C,B,A)};$1.2.2q=5(i,c,g,C,B,A,b,a,3){6 4=$1.2.7(3);$1.8.N(i,c,$1.e.d.q,4,g,C,B,A,b,a)};$1.2.2p=5(i,c,g,C,B,A,b,a,1i,1h,1g,1f,3){6 4=$1.2.7(3);$1.8.N(i,c,$1.e.d.15,4,g,C,B,A,b,a,1i,1h,1g,1f)};$1.2.2o=5(9,3){6 4=$1.2.7(3);$1.8.2n(9,4)};$1.2.2m=5(9,k,a,3){6 4=$1.2.7(3);$1.8.2l(9,k,a,4)};$1.2.2k=5(9,a,3){6 4=$1.2.7(3);$1.8.2j(9,a,4)};$1.2.2i=5(9,c,g,3){6 4=$1.2.7(3);$1.8.z(9,c,$1.e.d.n,4,g)};$1.2.2h=5(9,c,b,f,h,j,3){6 4=$1.2.7(3);$1.8.z(9,c,$1.e.d.l,4,b,f,h,j)};$1.2.2g=5(9,c,b,f,h,a,3){6 4=$1.2.7(3);$1.8.z(9,c,$1.e.d.q,4,b,f,h,a)};$1.2.2f=5(9,c,b,f,h,a,M,L,3){6 4=$1.2.7(3);$1.8.z(9,c,$1.e.d.15,4,b,f,h,a,M,L)};$1.2.2e=5(9,c,b,f,h,a,3){6 4=$1.2.7(3);$1.8.z(9,c,$1.e.d.F,4,b,f,h,a)};$1.2.2d=5(9,c,b,f,h,a,K,3){6 4=$1.2.7(3);$1.8.z(9,c,$1.e.d.E,4,b,f,h,a,K)};$1.2.2c=5(o,g,j,1e,1d,3){6 4=$1.2.7(3);$1.8.2b(o,4,g,j,1e,1d)};$1.2.2a=5(9,g,3){6 4=$1.2.7(3);$1.8.14(9,$1.e.d.n,4,g)};$1.2.29=5(9,b,f,j,3){6 4=$1.2.7(3);$1.8.14(9,$1.e.d.l,4,b,f,j)};$1.2.28=5(9,b,f,j,a,3){6 4=$1.2.7(3);$1.8.14(9,$1.e.d.q,4,b,f,j,a)};$1.2.27=5(9,a,3){6 4=$1.2.7(3);$1.8.26(9,a,4)};$1.2.25=5(9,k,a,m,3){6 4=$1.2.7(3);$1.8.24(9,k,a,m,4)};$1.2.23=5(m,9,J,k,3){6 4=$1.2.7(3);$1.8.22(m,9,J,k,4)};$1.2.21=5(I,1c,m,3){6 4=$1.2.7(3);$1.8.20(I,1c,m,4)};$1.2.1Z=5(I,3){6 4=$1.2.7(3);$1.8.1Y(I,4)};$1.2.1X=5(1b,3){6 4=$1.2.7(3);$1.8.1W(1b,4)};',62,242,'|mob|ext|callback|func|function|var|_bindCallbackFunc|native|appId|url|title|scene|contentType|shareSDK|desc|text|thumbImage|appKey|image|sessionId|Image|platformType|Text|type|name|WebPage|null|redirectUri|header|params|method|ssdk_plugin_wechat_share|||ssdk_plugin_yixin_share|imageHeight|imageWidth|imageUrl|scopes|Audio|Video|ssdk_plugin_qq_share|_callbackFuncs|imagePath|data|musicUrl|fileData|extInfo|ssdk_plugin_kakao_share|scope|images|oauthToken|video|ssdk_plugin_facebookmessenger_share|audio|ssdk_plugin_whatsapp_share|secretKey|urls|recipients|appSecret|oauthTokenSecret|consumerSecret|oauthParams|domain|secure|ssdk_plugin_dingtalk_share|App|ssdk_plugin_alipay_share|ssdk_plugin_weibo_share|ssdk_callHTTPApi|http|_seqId|className|thumbImagePath|menuDisplayY|menuDisplayX|ipadExecParams|iphoneExecParams|andoridExecParams|appButtonTitle|clientType|tags|notebook|requestUrl|baseUrl|ssdk_plugin_line_share|gif|source|caption|redirectUrl|ssdk_plugin_googleplus_share|bcc|cc|attachments|attachements|user|platform|ssdk_getShortUrls|videoFlashUrl|audioFlashUrl|objectId|sourceFileData|fileExtension|emoticonData|xmlString|parseXML|downloadFile|pluginKey|isPluginRegisted|isPad|isMultitaskingSupported|canOpenURL|getAppConfig|getCacheData|value|setCacheData|userData|pluginId|ssdk_auth|ssdk_plugin_isConnectedPlatformSDK|ssdk_isConnectedPlatformSDK|ssdk_plugin_checkThumbImageSize|checkThumbImageSize|ssdk_plugin_getImageData|ssdk_getImageData|ssdk_plugin_setDataToPasteboard|ssdk_setDataToPasteboard|ssdk_plugin_getDataFromPasteboard|ssdk_getDataFromPasteboard|ssdk_plugin_dingtalk_handleShareCallback|ssdk_dingtalkHandleShareCallback|ssdk_dingtalkShareWebpage|ssdk_dingtalkShareImage|ssdk_dingtalkShareText|ssdk_plugin_print_share|ssdk_printShare|ssdk_yixinShareAudio|ssdk_yixinShareVideo|ssdk_yixinShareApp|ssdk_yixinShareWebpage|ssdk_yixinShareImage|ssdk_yixinShareText|ssdk_plugin_yixin_handleShareCallback|ssdk_yixinHandleShareCalback|ssdk_plugin_yixin_handleSSOCallback|ssdk_yixinHandleSSOCallback|ssdk_plugin_yixin_auth|ssdk_yixinAuth|ssdk_kakaoShareApp|ssdk_kakaoShareWebpage|ssdk_kakaoShareImage|ssdk_kakaoShareText|ssdk_plugin_kakao_handleSSOCallback|ssdk_kakaoHandleSSOCallback|ssdk_plugin_line_auth|ssdk_lineAuth|ssdk_plugin_kakao_auth|ssdk_kakaoAuth|ssdk_plugin_alipay_handleShareCallback|ssdk_alipayHandleShareCallback|ssdk_alipayShareWebpage|ssdk_alipayShareImage|ssdk_alipayShareText|ssdk_plugin_evernote_share|ssdk_evernoteShare|ssdk_plugin_evernote_getuserinfo|ssdk_evernoteGetUserInfo|ssdk_plugin_line_handleSSOCallback|ssdk_lineHandleSSOCalback|ssdk_lineShareImage|ssdk_lineShareText|ssdk_facebookmessengerShareVideo|ssdk_facebookmessengerShareAudio|ssdk_facebookmessengerShareGif|ssdk_facebookmessengerShareImage|ssdk_whatsappShareVideo|ssdk_whatsappShareAudio|ssdk_whatsappShareImage|ssdk_whatsappShareText|ssdk_plugin_instagram_share|ssdk_instagramShare|ssdk_plugin_facebook_share|ssdk_facebookShareWebPage|ssdk_googleplusShareWebPage|ssdk_googleplusShareText|ssdk_plugin_renren_handleSSOCallback|ssdk_renrenHandleSSOCallback|ssdk_plugin_renren_auth|ssdk_renrenAuth|ssdk_plugin_copy|ssdk_copy|ssdk_plugin_mail_share|ssdk_mailShare|ssdk_plugin_sms_share|ssdk_smsShare|ssdk_plugin_weibo_handleSSOCallback|ssdk_weiboHandleSSOCallback|ssdk_plugin_weibo_auth|ssdk_weiboAuth|ssdk_plugin_tcweibo_handleSSOCallback|ssdk_tcweiboHandleSSOCallback|ssdk_plugin_tcweibo_auth|ssdk_tcweiboAuth|ssdk_plugin_qq_handleShareCallback|ssdk_qqHandlerShareCallback|ssdk_qqShareVideo|ssdk_qqShareAudio|ssdk_qqShareWebpage|ssdk_qqShareImage|ssdk_qqShareText|ssdk_plugin_qq_handleSSOCallback|ssdk_qqHandlerSSOCallback|ssdk_plugin_qq_auth|ssdk_qqAuth|ssdk_weiboShareWebpage|ssdk_weiboShareImage|ssdk_weiboShareText|ssdk_plugin_weibo_handleShareCallback|ssdk_weiboHandleShareCallback|File|ssdk_wechatShareFile|ssdk_wechatShareVideo|ssdk_wechatShareAudio|ssdk_wechatShareApp|ssdk_wechatShareWebpage|ssdk_wechatShareImage|ssdk_wechatShareText|ssdk_plugin_wechat_handleShareCallback|ssdk_wechatHandleShareCalback|ssdk_plugin_wechat_handleSSOCallback|ssdk_wechatHandleSSOCalback|ssdk_plugin_wechat_auth|ssdk_wechatAuth|ssdk_callOAuthApi|oauth|return|delete|if|getTime|Date|new'.split('|'),0,{})) diff --git a/Support/Required/ShareSDK.bundle/ScriptCore/ShareSDK.js b/Support/Required/ShareSDK.bundle/ScriptCore/ShareSDK.js new file mode 100644 index 0000000..5c348c6 --- /dev/null +++ b/Support/Required/ShareSDK.bundle/ScriptCore/ShareSDK.js @@ -0,0 +1 @@ +var $pluginID = "com.mob.sharesdk.base";eval(function(p,a,c,k,e,d){e=function(c){return(c35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('c 1e=e;c Z={};c M={};c k={D:{},C:{},B:{}};c 1q="4y-4x";f 1d(1c){W.2l=1c;W.1y={2k:"4w",4v:2m,2j:2m};W.4u={}}1d.1z.1c=f(){l W.2l};1d.1z.1w=f(){l W.1y["2k"]};1d.1z.1v=f(){l W.1y["2j"]};f 4t(){}f b(){}b.v={1x:0,4s:1,4r:2,4q:5,4p:6,4o:7,4n:8,4m:10,4l:11,4k:12,4j:14,4i:15,4h:16,4g:17,4f:18,4e:19,4d:20,4c:21,4b:22,4a:23,49:24,48:25,47:26,3Z:27,3Y:30,3X:34,3W:35,3V:36,3U:37,3T:38,3S:39,3R:40,3Q:41,3P:42,3O:43,3N:44,3M:45,3L:46,3K:3J,3I:3H,3G:3F,3E:3D,3C:3B,3A:3z,3y:3x,3w:3v};b.I={3u:0,3t:1,H:2,3s:3};b.K={1x:0,J:3r,3q:3p,3o:3n,3m:3l,3k:3j,3i:3h,3g:3f,3e:3d,3c:3b};b.3a={1x:0,33:1,32:2};b.31={2Z:0,2Y:1,2X:2,2W:3,2V:4,2U:5,2T:6,2S:7};b.2R=f(a,2i){Z[a]=2i};b.q=f(a){c 9=M[a];d(9==e){c x=Z[a];d(x!=e){9=1b x(a);M[a]=9;E={};d(k["D"][a]){E=k["D"][a]}d(k["C"][a]){E=k["C"][a]}d(k["B"][a]){E=k["B"][a]}9.U(E);9.T()}}u{E={};d(k["D"][a]){E=k["D"][a]}d(k["C"][a]){E=k["C"][a]}d(k["B"][a]){E=k["B"][a]}9.U(E);9.T()}l 9};b.1w=f(){l 1e.1w()};b.1v=f(){l 1e.1v()};b.2Q=f(a,Y,y,X){d(y!=e&&y.S>0){c 1t=/(2P?:\\/\\/){1}[A-2O-2N-2M\\.\\-\\/:\\?&%=,;\\[\\]\\{\\}`~!@#\\$\\^\\*\\(\\)\\+\\\\|]+/g;c 2h=/<2L[^>]*>/g;c 2g=/(\\w+)\\s*=\\s*["|\']([^"\']*)["|\']/g;c 1f={};c 1u={};1a(c i=0;i0){$o.2E.2D(a,1k,Y,f(r){d(r.L==e){1a(c i=0;i35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('7 2x="5l://5k.1r.1s/";7 T={1Q:"5j",1P:"5i",2N:"5h",2M:"5g",3i:"5f"};7 1Y={1R:0,1u:1};7 19={};c p(I){9.3K=I;9.13={};9.1z=4;9.1w=4;9.1p=4;9.1N=4;9.M=$3.6.5e()}p.m.I=c(){C 9.3K};p.m.5d=c(q,a){$3.G.U(q,$3.6.k.2c,4)};p.m.F=c(){C"p"};p.m.A=c(){5(9.13[T.1Q]){C 9.13[T.1Q]}C 4};p.m.1O=c(){5(9.13[T.1P]){C 9.13[T.1P]}C 4};p.m.2d=c(){5(9.13[T.2N]){C 9.13[T.2N]}C $3.6.2d()};p.m.2r=c(){C"3J-1h-"+$3.6.h.p+"-"+9.A()};p.m.2E=c(){5(9.13[T.2M]){C 9.13[T.2M]}C $3.6.2E()};p.m.5c=c(1x){5(5b.1L==0){C 9.13}f{9.13=9.3h(1x);9.1z=9.3j(1x);9.3m();9.2S(9.A())}};p.m.5a=c(){7 e=9;7 1y="3J-1h";$3.J.2Z("3I",1f,1y,c(a){5(a!=4){7 24=a.1x;5(24==4){24={}}24["59"+e.I()]=e.A();$3.J.30("3I",24,1f,1y,4)}})};p.m.58=c(){C 1J};p.m.2z=c(q,R){7 g=4;5(9.3l()){5(R==4){R={}}5(R["1o"]==4&&9.1z==4){R["1o"]=["3H","57","56","55","54"]}7 e=9;9.3f(c(S,1a){5(S){e.3a(q,1a,R)}f{7 b=4;5(9.M=="P-O"){b="分享平台["+e.F()+"]尚未配置1B 1A:"+e.1p+",无法进行授权!"}f{b="1h["+e.F()+"]3o 18 2F 1B 1A:"+e.1p+",53 52 2z!"}7 g={w:$3.6.E.3n,b:b};$3.G.U(q,$3.6.k.v,g)}})}f{7 b=4;5(9.M=="P-O"){b="分享平台["+9.F()+"]应用信息无效!"}f{b="1h["+9.F()+"]3D 51!"}g={w:$3.6.E.2t,b:b};$3.G.U(q,$3.6.k.v,g)}};p.m.31=c(2K,d){7 e=9;9.1Z(c(r){5(2K!=4){7 b=4;5(9.M=="P-O"){b="分享平台["+e.F()+"]不支持获取其他用户资料!"}f{b="1h ["+e.F()+"]2H 18 2G 3p 50\'s 4Z!"}7 g={w:$3.6.E.2g,b:b};5(d!=4){d($3.6.k.v,g)}C}e.3G("2A://4Y.1r.1s/r/3H","3A",4,4,c(1g,a){7 X=a;5(1g==$3.6.k.1n){X={2s:$3.6.h.1u,1D:r.V.1D};e.2q(X,a);5(X["1D"]==r["1D"]){X["V"]=r["V"]}}5(d!=4){d(1g,X)}})})};p.m.3G=c(o,3F,Z,3E,d){7 g=4;7 e=9;9.1Z(c(r){5(r!=4){5(Z==4){Z={}}Z["4X"]=e.A();5(r.V!=4){Z["21"]=r.V.28;Z["22"]=r.V.1D}$3.J.3B($3.6.h.1u,4,o,3F,Z,3E,c(a){5(a!=4){5(a["w"]!=4){5(d){d($3.6.k.v,a)}}f{7 1q=$3.12.4W($3.12.3w(a["3v"]));5(a["2J"]==3y){5(d){d($3.6.k.1n,1q)}}f{7 2L=$3.6.E.10;1C(1q["w"]){K 4V:K 4U:K 4T:K 4S:K 4R:K 4Q:K 4P:2L=$3.6.E.3C;H}g={w:2L,14:1q};5(d){d($3.6.k.v,g)}}}}f{g={w:$3.6.E.10};5(d){d($3.6.k.v,g)}}})}f{7 b=4;5(9.M=="P-O"){b="尚未授权["+e.F()+"]用户"}f{b="3D 4O ["+e.F()+"]"}g={w:$3.6.E.3C,b:b};5(d){d($3.6.k.v,g)}}})};p.m.4N=c(q,Y){7 g=4;7 e=9;7 2j=$3.12.4M(Y);5(2j!=4&&2j.2K!=4){7 Z=$3.12.4L(2j.4K);5(Z!=4&&Z.21!=4){7 3z={21:Z.21};$3.J.3B($3.6.h.1u,4,"2A://3c.1r.1s/3b.0/4J","3A",3z,4,c(a){5(a!=4){5(a["w"]!=4){$3.G.U(q,$3.6.k.v,a)}f 5(a["2J"]!=4&&a["2J"]==3y){7 d=c(3x){C 3x};7 3u=$3.12.3w(a["3v"]);7 1q=4I(3u);5(1q.22!=4){Z["22"]=1q.22;e.29(q,Z)}f{g={w:$3.6.E.10,14:1q};$3.G.U(q,$3.6.k.v,g)}}f{g={w:$3.6.E.10,14:a};$3.G.U(q,$3.6.k.v,g)}}f{g={w:$3.6.E.10};$3.G.U(q,$3.6.k.v,g)}})}f{7 b=4;5(9.M=="P-O"){b="无效的授权回调:["+Y+"]"}f{b="3t d o:["+Y+"]"}g={w:$3.6.E.3s,b:b};$3.G.U(q,$3.6.k.v,g)}}f{7 b=4;5(9.M=="P-O"){b="无效的授权回调:["+Y+"]"}f{b="3t d o:["+Y+"]"}g={w:$3.6.E.3s,b:b};$3.G.U(q,$3.6.k.v,g)}};p.m.4H=c(q,Y,3r,3q){7 e=9;5(Y.26(9.1p+"://")==0){$3.J.4G(9.A(),Y,c(a){1C(a.1g){K $3.6.k.1n:{e.29(q,a.L);H}K $3.6.k.v:{7 g={w:$3.6.E.10};$3.G.U(q,$3.6.k.v,g);H}1S:$3.G.U(q,$3.6.k.2c,4);H}});C 1J}C 1f};p.m.4F=c(q,Y,3r,3q){7 e=9;5(Y.26(9.1p+"://")==0||Y.26(9.1N+"://")==0){$3.J.4E(9.A(),Y,c(a){e.1Z(c(r){7 N=19[q];7 Q=4;7 z=4;5(N!=4){Q=N["Q"];z=N["14"]}1C(a.1g){K $3.6.k.1n:{7 X={};X["2p"]=Q;X["l"]=Q["l"];7 2i=[];5(Q["o"]){2i.4D(Q["o"])}X["2i"]=2i;5(Q["W"]!=4){X["D"]=[Q["W"]]}f 5(Q["1e"]!=4){X["D"]=[Q["1e"]]}$3.G.2I(q,$3.6.k.1n,X,r,z);H}K $3.6.k.v:7 g={w:$3.6.E.10,14:{w:a.w,b:a.b}};$3.G.2I(q,$3.6.k.v,g,r,z);H;1S:$3.G.2I(q,$3.6.k.2c,4,r,z);H}4C 19[q];19[q]=4})});C 1J}C 1f};p.m.4B=c(){9.27(4,4)};p.m.4A=c(q,r,d){7 b=4;5(9.M=="P-O"){b="平台["+9.F()+"]不支持添加好友方法!"}f{b="1h["+9.F()+"]2H 18 2G 4z 4y"}7 g={w:$3.6.E.2g,b:b};5(d!=4){d($3.6.k.v,g)}};p.m.4x=c(4w,4v,d){7 b=4;5(9.M=="P-O"){b="平台["+9.F()+"不支持获取好友列表方法!"}f{b="1h["+9.F()+"]2H 18 2G 3p 4u 4t"}7 g={w:$3.6.E.2g,b:b};5(d!=4){d($3.6.k.v,g)}};p.m.2n=c(q,x,d){7 e=9;7 2h=x!=4?x["@2h"]:4;7 z={"@2h":2h};$3.J.2m("1s.3.2l.2k.1r",c(a){5(a.L){$3.J.4s(c(a){5(a.L){e.3e(c(S,1a){5(S){e.2V(q,x,z,d)}f{7 b=4;5(9.M=="P-O"){b="尚未配置["+e.F()+"]1B 1A:"+e.1N+", 无法进行分享。"}f{b="4r\'t 2n 4q 1m["+e.F()+"]3o 18 2F 1B 1A:"+e.1N+"!2w 2v 2u 4p 2F 1B 1A!"}7 g={w:$3.6.E.3n,b:b};5(d!=4){d($3.6.k.v,g,4,z)}}})}f{7 g={w:$3.6.E.2g,b:"应用已禁用后台模式,分享平台["+e.F()+"]无法进行分享! 请在项目设置中开启后台模式后再试!"};5(d!=4){d($3.6.k.v,g,4,z)}}})}f{7 b=4;5(9.M=="P-O"){b="分享平台["+e.F()+"]尚未导入2b.1E!无法进行分享!"}f{b="1h["+e.F()+"]38 2a 2b.1E!2w 2a 37 1E 36 2v 2u!"}7 g={w:$3.6.E.2t,b:b};5(d!=4){d($3.6.k.v,g,4,z)}}})};p.m.4o=c(15){7 r={2s:9.I()};9.2q(r,15);C $3.12.3k(r)};p.m.1t=c(2D,d){5(9.2E()){7 e=9;9.1Z(c(r){$3.6.4n(e.I(),r,2D,d)})}f{5(d){d({L:2D})}}};p.m.4m=c(r){C r.V!=4&&r.V.28!=4&&r.V.35>(34 33).32()};p.m.3m=c(){9.1p=4;7 A=9.A();5(A!=4){9.1p="4l"+A;7 1x=4k(9.A());7 23=1x.1d(16).4j();4i(23.1L<8){23="0"+23}9.1N="p"+23}};p.m.3l=c(){5(9.A()!=4&&9.1O()!=4){C 1J}$3.G.2C("#2B:["+9.F()+"]应用信息有误,不能进行相关操作。请检查本地代码中和服务端的["+9.F()+"]平台应用配置是否有误! "+"\\n配置:"+$3.12.3k(9.13));C 1f};p.m.3j=c(1c){C 1c[T.3i]};p.m.3h=c(1c){7 A=$3.12.3g(1c[T.1Q]);7 1O=$3.12.3g(1c[T.1P]);5(A!=4){1c[T.1Q]=A}f{1c[T.1Q]=9.A()}5(1O!=4){1c[T.1P]=1O}f{1c[T.1P]=9.1O()}C 1c};p.m.3f=c(d){7 e=9;$3.J.3d(c(a){7 1a=4;7 1G="";7 S=1f;7 1H=e.1p;5(a!=4&&a.1M!=4){2f(7 i=0;i35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('6 L={1N:"5P",1M:"5O",1L:"22",3a:"5N",5M:"5L",3x:"5K"};6 1G={};b q(c){7.3Z=c;7.Z={};7.1w=4;7.1B=4;7.11=[];7.T=$3.9.5J()}q.o.c=b(){A 7.3Z};q.o.5I=b(l,a){$3.B.S(l,$3.9.u.2x,4)};q.o.N=b(){5(7.T=="X-W"){A"新浪微博"}d{A"q"}};q.o.z=b(){5(7.Z[L.1N]){A 7.Z[L.1N]}A 4};q.o.1E=b(){5(7.Z[L.1M]){A 7.Z[L.1M]}A 4};q.o.16=b(){5(7.Z[L.1L]){A 7.Z[L.1L]}A 4};q.o.K=b(){5(7.Z[L.3a]){A 7.Z[L.3a]}A $3.9.K()};q.o.2H=b(){A"3Y-1v-"+$3.9.1T.q+"-"+7.z()};q.o.2X=b(){5(7.Z[L.2W]){A 7.Z[L.2W]}A $3.9.2X()};q.o.5H=b(1Y){5(5G.1z==0){A 7.Z}d{7.Z=7.3w(1Y);7.1w=7.3y(1Y);7.3v();7.3e(7.z())}};q.o.5F=b(){6 8=7;6 1t="3Y-1v";$3.I.3j("3X",1e,1t,b(a){5(a!=4){6 2c=a.1Y;5(2c==4){2c={}}2c["5E"+8.c()]=8.z();$3.I.3i("3X",2c,1e,1t,4)}})};q.o.5D=b(){A 1K};q.o.2m=b(l,E){6 r=4;5(7.3u()){6 8=7;6 K=7.K();5(K=="1Z"||K=="5C"){$3.I.5B(b(a){5(a.Q){8.2S(b(1g,1a){5(1g){8.3n(l,1a,E)}d 5(K=="1Z"){8.1H(l,E)}d{6 2b="";1D(6 i=0;i<8.11.1z;i++){5(i==0){2b=8.11[i]}d{2b+="或"+8.11[i]}}6 e=4;5(8.T=="X-W"){e="分享平台["+8.N()+"]尚未配置2O 2N:"+2b+",无法进行授权!"}d{e="1v["+8.N()+"]5A 1u 5z 2O 2N:"+2b+",5y 5x 2m!"}6 r={v:$3.9.J.5w,e:e};$3.B.S(l,$3.9.u.H,r)}})}d 5(K=="1Z"){8.1H(l,E)}d{6 e=4;5(8.T=="X-W"){e="分享平台["+8.N()+"]不支持["+K+"]授权方式!"}d{e="1v ["+8.N()+"]2k 1u 2j 2i c :["+K+"]!"}6 r={v:$3.9.J.2h,e:e};$3.B.S(l,$3.9.u.H,r)}})}d 5(K=="5v"){8.1H(l,E)}d{6 e=4;5(7.T=="X-W"){e="分享平台["+8.N()+"]不支持["+K+"]授权方式!"}d{e="1v ["+8.N()+"]2k 1u 2j 2i c :["+K+"]!"}r={v:$3.9.J.2h,e:e};$3.B.S(l,$3.9.u.H,r)}}d{6 e=4;5(7.T=="X-W"){e="分享平台["+7.N()+"]应用信息无效!"}d{e="1v["+7.N()+"]39 5u!"}r={v:$3.9.J.5t,e:e};$3.B.S(l,$3.9.u.H,r)}};q.o.5s=b(l,13){6 r=4;6 8=7;6 2z=$3.C.3V(13);5(2z!=4&&2z.1r!=4){6 p=$3.C.3U(2z.1r);5(p!=4&&p.1J!=4){p["2l"]=7.z();p["5r"]=7.1E();p["5q"]="5p";p["22"]=7.16();$3.I.3Q(7.c(),4,"1f://1p.Y.10/2n/2T","2s",p,4,b(a){5(a!=4){6 1s=$3.C.3N($3.C.3M(a["3L"]));5(1s.r==4){8.2q(l,1s)}d{r={v:$3.9.J.1i,1q:1s};$3.B.S(l,$3.9.u.H,r)}}d{r={v:$3.9.J.1i};$3.B.S(l,$3.9.u.H,r)}})}d{6 e=4;5(7.T=="X-W"){e="无效的授权回调:["+13+"]"}d{e="39 h x:["+13+"]"}r={v:$3.9.J.3W,e:e};$3.B.S(l,$3.9.u.H,r)}}d{6 e=4;5(7.T=="X-W"){e="无效的授权回调:["+13+"]"}d{e="39 h x:["+13+"]"}r={v:$3.9.J.3W,e:e};$3.B.S(l,$3.9.u.H,r)}};q.o.5o=b(l,13,3T,3S){6 8=7;1D(6 i=0;i<7.11.1z;i++){6 1y=7.11[i];5(13.3R(1y+"://")==0){6 38=$3.C.3V(13);5(38.1t=="1s"){$3.I.5n(7.z(),13,b(a){2a(a.O){P $3.9.u.1b:{8.2q(l,a.Q);U}P $3.9.u.H:{6 r={v:$3.9.J.1i,1q:{v:a.v}};$3.B.S(l,$3.9.u.H,r);U}2o:$3.B.S(l,$3.9.u.2x,4);U}})}d{6 p=$3.C.3U(38.1r);5(p["5m"]!=4||p["5l"]!=4||p["5k"]=="5j"){$3.B.S(l,$3.9.u.2x,4)}d 5(p["5i"]!=4||p["v"]!=4){6 r={v:$3.9.J.1i,1q:p};$3.B.S(l,$3.9.u.H,r)}d{7.2q(l,p)}}A 1K}}A 1e};q.o.5h=b(l,13,3T,3S){6 8=7;1D(6 i=0;i<7.11.1z;i++){6 1y=7.11[i];5(13.3R(1y+"://")==0){$3.I.5g(7.z(),13,b(a){8.1C(b(k){6 1j=1G[l];6 18=4;6 F=4;5(1j!=4){18=1j["18"];F=1j["1q"]}2a(a.O){P $3.9.u.1b:{6 w={};w["2f"]=18;w["s"]=18["s"];6 2y=[];5(18["x"]){2y.2r(18["x"])}w["2y"]=2y;5(18["y"]!=4){w["G"]=[18["y"]]}$3.B.37(l,$3.9.u.1b,w,k,F);U}P $3.9.u.H:6 r={v:$3.9.J.1i,1q:{v:a.v}};$3.B.37(l,$3.9.u.H,r,k,F);U;2o:$3.B.37(l,$3.9.u.2x,4,k,F);U}5f 1G[l];1G[l]=4})});A 1K}}A 1e};q.o.1P=b(x,3P,p,3O,h){6 r=4;6 8=7;7.1C(b(k){5(k!=4){5(p==4){p={}}5(k.17!=4){p["2T"]=k.17.3t}$3.I.3Q(8.c(),4,x,3P,p,3O,b(a){5(a!=4){6 1s=$3.C.3N($3.C.3M(a["3L"]));5(a["5e"]==5d){5(h){h($3.9.u.1b,1s)}}d{6 1J=$3.9.J.1i;2a(1s["v"]){P 5c:P 5b:P 5a:P 59:P 58:P 57:P 56:P 55:P 54:P 53:1J=$3.9.J.3K;U}r={v:1J,1q:1s};5(h){h($3.9.u.H,r)}}}d{r={v:$3.9.J.1i};5(h){h($3.9.u.H,r)}}})}d{6 e=4;5(8.T=="X-W"){e="尚未授权["+8.N()+"]用户"}d{e="52 51 ["+8.N()+"]"}r={v:$3.9.J.3K,e:e};5(h){h($3.9.u.H,r)}}})};q.o.3s=b(1r,h){6 8=7;7.1C(b(k){6 p={};5(1r!=4){5(1r.R!=4){p["R"]=1r.R}d 5(1r.N!=4){p["2F"]=1r.N}}d 5(k!=4&&k.17!=4&&k.17.R!=4){p["R"]=k.17.R}8.1P("1f://1p.Y.10/2/1S/50.1R","3H",p,4,b(O,a){6 w=a;5(O==$3.9.u.1b){w={24:$3.9.1T.q};8.1X(w,a);5(w["R"]==k["R"]){w["17"]=k["17"]}}5(h!=4){h(O,w)}})})};q.o.4Z=b(){6 8=7;7.1P("1f://1p.Y.10/2n/4Y","2s",4,4,b(O,a){5(O==$3.9.u.1b){5(a.Q){8.2g(4,4)}}})};q.o.4X=b(l,k,h){6 p={};5(k["R"]!=4){p["R"]=k["R"]}d 5(k["2G"]!=4){p["2F"]=k["2G"]}6 8=7;7.1P("1f://1p.Y.10/2/3I/4W.1R","2s",p,4,b(O,a){6 w=a;5(O==$3.9.u.1b){w={24:$3.9.1T.q};8.1X(w,a)}5(h!=4){h(O,w)}})};q.o.4V=b(36,3J,h){6 8=7;7.1C(b(k){6 p={36:36,4U:3J};5(k!=4){p["R"]=k["R"]}8.1P("1f://1p.Y.10/2/3I/4T.1R","3H",p,4,b(O,a){6 w=a;5(O==$3.9.u.1b){w={};w["4S"]=a["4R"];w["35"]=a["35"];w["4Q"]=a["4P"];6 1S=[];6 2w=a["1S"];5(2w!=4){1D(6 i=0;i<2w.1z;i++){6 k={24:$3.9.1T.q};8.1X(k,2w[i]);1S.2r(k)}}w["1S"]=1S;w["4O"]=a["35"]>0}5(h!=4){h(O,w)}})})};q.o.1O=b(l,t,h){6 8=7;6 3G=t!=4?t["@4N"]:1e;6 2v=t!=4?t["@2v"]:4;6 F={"@2v":2v};6 c=$3.9.D(7.c(),t,"c");5(c==4){c=$3.9.14.2Z}5(3G){8.2S(b(1g,1a){5(1g){8.3F(l,c,t,F,h)}d{8.1F(c,t,F,h)}})}d{7.1F(c,t,F,h)}};q.o.4M=b(M){6 k={24:7.c()};7.1X(k,M);A $3.C.2U(k)};q.o.3F=b(l,c,t,F,h){6 s=4;6 y=4;6 G=4;6 r=4;6 8=7;$3.I.2E("10.3.2D.2C.Y",b(a){5(a.Q){5(c==$3.9.14.2Z){c=8.2B(t,1K)}2a(c){P $3.9.14.2A:{s=$3.9.D(8.c(),t,"s");5(s!=4){8.27([s],b(a){s=a.Q[0];$3.I.4L(8.z(),s,b(a){5(a.v!=4){8.1F(c,t,F,h)}d{6 1j={34:8.c(),s:s};1G[l]={18:1j,1q:F}}})})}d{6 e=4;5(8.T=="X-W"){e="分享参数s不能为空!"}d{e="1O 33 s 32 1u 31 30!"}r={v:$3.9.J.1i,e:e};5(h!=4){h($3.9.u.H,r,4,F)}}U}P $3.9.14.2d:{s=$3.9.D(8.c(),t,"s");G=$3.9.D(8.c(),t,"G");5(1n.o.1c.1m(G)==="[1l 1k]"){y=G[0]}5(y!=4){8.27([s],b(a){s=a.Q[0];$3.I.4K(8.z(),s,y,b(a){5(a.v!=4){8.1F(c,t,F,h)}d{6 1j={34:8.c(),s:s,y:y};1G[l]={18:1j,1q:F}}})})}d{6 e=4;5(8.T=="X-W"){e="分享参数y不能为空!"}d{e="1O 33 y 32 1u 31 30!"}r={v:$3.9.J.1i,e:e};5(h!=4){h($3.9.u.H,r,4,F)}}U}P $3.9.14.3b:{s=$3.9.D(8.c(),t,"s");6 15=$3.9.D(8.c(),t,"15");6 x=$3.9.D(8.c(),t,"x");6 1d=$3.9.D(8.c(),t,"3c");5(1d==4){1d=(1W 1V).1U().1c()}G=$3.9.D(8.c(),t,"G");5(1n.o.1c.1m(G)==="[1l 1k]"){y=G[0]}5(15!=4&&x!=4&&1d!=4&&y!=4){8.27([s,x],b(a){s=a.Q[0];x=a.Q[1];$3.I.4J(8.z(),15,s,y,x,1d,b(a){5(a.v!=4){8.1F(c,t,F,h)}d{6 1j={34:8.c(),s:s,15:15,4I:y,x:x};1G[l]={18:1j,1q:F}}})})}d{6 e=4;5(8.T=="X-W"){e="分享参数15、x、1d、y不能为空!"}d{e="1O 33 15、x、1d、y 32 1u 31 30!"}r={v:$3.9.J.1i,e:e};5(h!=4){h($3.9.u.H,r,4,F)}}U}2o:{6 e=4;5(8.T=="X-W"){e="不支持的分享类型["+c+"]"}d{e="3A 1O c ["+c+"]"}r={v:$3.9.J.3z,e:e};5(h!=4){h($3.9.u.H,r,4,F)}U}}}d{8.1F(c,t,F,h)}})};q.o.1F=b(c,t,F,h){6 s=4;6 V=4;6 1h=4;6 8=7;6 x=4;6 p=4;5(c==$3.9.14.2Z){c=8.2B(t,1e)}2a(c){P $3.9.14.2A:{s=$3.9.D(7.c(),t,"s");5(s!=4){x="1f://1p.Y.10/2/2Y/4H.1R";p={28:s};V=$3.9.D(7.c(),t,"V");1h=$3.9.D(7.c(),t,"1Q");5(V!=4&&1h!=4){p["V"]=V;p["1Q"]=1h}}U}P $3.9.14.2d:{6 y=4;6 G=$3.9.D(7.c(),t,"G");5(1n.o.1c.1m(G)==="[1l 1k]"){y=G[0]}5(y!=4){5(/^(2t\\:\\/)?\\//.2u(y)){x="1f://3E.1p.Y.10/2/2Y/3E.1R";6 29="4G/4F-4E";5(/\\.4D?g$/.2u(y)){29="y/4C"}d 5(/\\.3D$/.2u(y)){29="y/3D"}d 5(/\\.3C$/.2u(y)){29="y/3C"}6 2t={4B:y,4A:29};p={4z:"@2t("+$3.C.2U(2t)+")"};s=$3.9.D(7.c(),t,"s");5(s!=4){p["28"]=s}V=$3.9.D(7.c(),t,"V");1h=$3.9.D(7.c(),t,"1Q");5(V!=4&&1h!=4){p["V"]=V;p["1Q"]=1h}}d{x="1f://1p.Y.10/2/2Y/4y.1R";p={x:y};s=$3.9.D(7.c(),t,"s");5(s!=4){p["28"]=s}V=$3.9.D(7.c(),t,"V");1h=$3.9.D(7.c(),t,"1Q");5(V!=4&&1h!=4){p["V"]=V;p["1Q"]=1h}}}U}}5(x!=4&&p!=4){7.1C(b(k){6 26=[p["28"]];8.27(26,b(a){p["28"]=a.Q[0];8.1P(x,"2s",p,4,b(O,a){6 w=a;5(O==$3.9.u.1b){w={};w["2f"]=a;w["4x"]=a["2e"];w["s"]=a["s"];5(a["3B"]!=4){w["G"]=[a["3B"]]}}5(h!=4){h(O,w,k,F)}})})})}d{6 e=4;5(7.T=="X-W"){e="不支持的分享类型["+c+"]"}d{e="3A 1O c ["+c+"]"}6 r={v:$3.9.J.3z,e:e};5(h!=4){h($3.9.u.H,r,4,F)}}};q.o.27=b(26,h){5(7.2X()){6 8=7;7.1C(b(k){$3.9.2W(8.c(),k,26,h)})}d{5(h){h({Q:26})}}};q.o.3y=b(12){A 12[L.3x]};q.o.3w=b(12){6 z=$3.C.2V(12[L.1N]);6 1E=$3.C.2V(12[L.1M]);6 16=$3.C.2V(12[L.1L]);5(z!=4){12[L.1N]=z}d{12[L.1N]=7.z()}5(1E!=4){12[L.1M]=1E}d{12[L.1M]=7.1E()}5(16!=4){12[L.1L]=16}d{12[L.1L]=7.16()}A 12};q.o.3v=b(){7.11.4w(0);6 z=7.z();5(z!=4){7.11.2r("3l."+z);7.11.2r("4v"+z)}};q.o.3u=b(){5(7.z()!=4&&7.1E()!=4&&7.16()!=4){A 1K}$3.B.3r("#3q:["+7.N()+"]应用信息有误,不能进行相关操作。请检查本地代码中和服务端的["+7.N()+"]平台应用配置是否有误! "+"\\n配置:"+$3.C.2U(7.Z));A 1e};q.o.2q=b(l,25){6 8=7;6 17={R:25["R"],3t:25["2T"],4u:(1W 1V).1U()+25["4t"]*4s,2f:25,c:$3.9.4r.4q};6 k={24:7.c(),17:17};7.2g(k,b(){8.3s(4,b(O,a){5(O==$3.9.u.1b){a["17"]=k["17"];k=a;8.2g(k,4)}$3.B.S(l,$3.9.u.1b,k)})})};q.o.2S=b(h){6 8=7;$3.I.4p(b(a){6 1a=4;6 2p="";6 1g=1e;1D(6 n=0;n<8.11.1z;n++){6 1y=8.11[n];5(a!=4&&a.2R!=4){1D(6 i=0;i35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('7 W={1C:"4X",1B:"4W",2B:"4V",3d:"4U"};7 1P={2l:0,36:1,35:2};7 11={};d r(G){8.3O=G;8.12={};8.1M=4;8.1q=4;8.J=$3.5.4T()}r.q.G=d(){C 8.3O};r.q.E=d(){6(8.J=="N-M"){C"微信"}f{C"r"}};r.q.D=d(){6(8.12[W.1C]){C 8.12[W.1C]}C 4};r.q.1w=d(){6(8.12[W.1B]){C 8.12[W.1B]}C 4};r.q.2d=d(){C"3N-1o-"+$3.5.e.r+"-"+8.D()};r.q.2y=d(){6(8.12[W.2B]){C 8.12[W.2B]}C $3.5.2y()};r.q.4S=d(1J){6(4R.2q==0){C 8.12}f{8.12=8.3c(1J);8.1M=8.3e(1J);8.2J(8.D())}};r.q.4Q=d(){7 g=8;7 1r="3N-1o";$3.H.2N("3M",1c,1r,d(9){6(9!=4){7 1S=9.1J;6(1S==4){1S={}}1S["4P"+g.G()]=g.D();$3.H.2S("3M",1S,1c,1r,4)}})};r.q.4O=d(){C 1A};r.q.3L=d(u,10){6(8.3a()){7 g=8;$3.H.2a("1H.3.29.28.27",d(9){6(9.O){$3.H.3I(d(9){6(9.O){g.2s(d(1g,1t){6(1g){6(10==4){10={}}6(10["1N"]==4&&g.1M==4){10["1N"]=["4N"]}g.2W(u,1t,10)}f{7 b=4;6(g.J=="N-M"){b="尚未设置分享平台["+g.E()+"]的1i 1h:"+g.D()+",无法进行授权!请在项目设置中设置1i 1h后再试!"}f{b="4M 4L 3L 3H 1f["+g.E()+"]3G X 22 1i 1h:"+g.D()+"!3F 3E 3D 3C 22 1i 1h!"}7 h={v:$3.5.B.3B,b:b};$3.L.Z(u,$3.5.o.x,h)}})}f{7 h={v:$3.5.B.21,b:"应用已禁用后台模式,分享平台["+g.E()+"]无法进行授权! 请在项目设置中开启后台模式后再试!"};$3.L.Z(u,$3.5.o.x,h)}})}f{7 b=4;6(g.J=="N-M"){b="分享平台["+g.E()+"]尚未导入20.a库!无法进行授权!"}f{b="1o["+g.E()+"]1e X 3A 20.a!"}7 h={v:$3.5.B.1Z,b:b};$3.L.Z(u,$3.5.o.x,h)}})}f{7 b=4;6(8.J=="N-M"){b="分享平台["+8.E()+"]应用信息无效!"}f{b="1o["+8.E()+"]2z 3z!"}7 h={v:$3.5.B.1Z,b:b};$3.L.Z(u,$3.5.o.x,h)}};r.q.2T=d(24,c){7 g=8;8.1K(d(w){7 13={};6(24!=4){6(24.1l!=4){13["1T"]=24.1l}}f 6(w!=4&&w.R!=4&&w.R.1l!=4){13["1T"]=w.R.1l}g.3u("3p://3o.3n.3m.1H/3l/4K","3k",13,4,d(1m,9){7 Y=9;6(1m==$3.5.o.1s){Y={2f:$3.5.e.r};g.2c(Y,9);6(Y["1l"]==w["1l"]){Y["R"]=w["R"]}}6(c!=4){c(1m,Y)}})})};r.q.4J=d(){8.1U(4,4)};r.q.4I=d(u,w,c){7 b=4;6(8.J=="N-M"){b="平台["+8.E()+"]不支持添加好友方法!"}f{b="1o["+8.E()+"]3K X 3J 4H 4G"}7 h={v:$3.5.B.21,b:b};6(c!=4){c($3.5.o.x,h)}};r.q.4F=d(4E,4D,c){7 b=4;6(8.J=="N-M"){b="平台["+8.E()+"不支持获取好友列表方法!"}f{b="1o["+8.E()+"]3K X 3J 4C 4B 4A"}7 h={v:$3.5.B.21,b:b};6(c!=4){c($3.5.o.x,h)}};r.q.1d=d(u,l,c){7 23=l!=4?l["@23"]:4;7 y={"@23":23};6(8.39()){7 g=8;$3.H.2a("1H.3.29.28.27",d(9){6(9.O){$3.H.3I(d(9){6(9.O){g.2s(d(1g,1t){6(1g){g.37(u,l,y,c)}f{7 b=4;6(8.J=="N-M"){b="尚未设置分享平台["+g.E()+"]的1i 1h:"+g.D()+",无法进行分享!请在项目设置中设置1i 1h后再试!"}f{b="4z\'t 1d 3H 1f["+g.E()+"]3G X 22 1i 1h:"+g.D()+"!3F 3E 3D 3C 22 1i 1h!"}7 h={v:$3.5.B.3B,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}})}f{7 h={v:$3.5.B.21,b:"应用已禁用后台模式,分享平台["+g.E()+"]无法进行分享! 请在项目设置中开启后台模式后再试!"};6(c!=4){c($3.5.o.x,h,4,y)}}})}f{7 b=4;6(8.J=="N-M"){b="分享平台["+g.E()+"]尚未导入20.a库!无法进行分享!"}f{b="1o["+g.E()+"]1e X 3A 20.a!"}7 h={v:$3.5.B.1Z,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}})}f{7 b=4;6(8.J=="N-M"){b="分享平台["+8.E()+"]应用信息无效!"}f{b="1o["+8.E()+"]2z 3z!"}7 h={v:$3.5.B.1Z,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}};r.q.4y=d(u,1D,3y,3x){7 g=8;6(1D.3w(8.D()+"://")==0){$3.H.4x(8.D(),u,1D,d(9){g.1V(u,9)});C 1A}C 1c};r.q.4w=d(u,1D,3y,3x){7 g=8;6(1D.3w(8.D()+"://")==0){$3.H.4v(8.D(),1D,d(9){g.1K(d(w){7 P=11[u];7 K=4;7 y=4;6(P!=4){K=P["K"];y=P["V"]}1O(9.1m){S $3.5.o.1s:{7 Y={};Y["2b"]=K;Y["k"]=K["k"];7 1R=[];6(K["m"]){1R.3v(K["m"])}6(K["1G"]){1R.3v(K["1G"])}Y["1R"]=1R;6(K["Q"]!=4){Y["A"]=[K["Q"]]}f 6(K["15"]!=4){Y["A"]=[K["15"]]}$3.L.2A(u,$3.5.o.1s,Y,w,y);I}S $3.5.o.x:7 h={v:$3.5.B.U,V:{v:9.v}};$3.L.2A(u,$3.5.o.x,h,w,y);I;2h:$3.L.2A(u,$3.5.o.3f,4,w,y);I}4u 11[u];11[u]=4})});C 1A}C 1c};r.q.3u=d(m,3t,13,3s,c){7 h=4;7 g=8;8.1K(d(w){6(w!=4){6(13==4){13={}}6(w.R!=4){13["2g"]=w.R.2e}$3.H.3q($3.5.e.2k,4,m,3t,13,3s,d(9){6(9!=4){6(9["v"]!=4){6(c){c($3.5.o.x,9)}}f{7 1k=$3.1j.3i($3.1j.3h(9["3g"]));6(9["2w"]==3j&&1k["2v"]==4){6(c){c($3.5.o.1s,1k)}}f{7 1x=$3.5.B.U;1O(1k["2v"]){S 4t:1x=$3.5.B.3r;I}h={v:1x,V:1k};6(c){c($3.5.o.x,h)}}}}f{h={v:$3.5.B.U};6(c){c($3.5.o.x,h)}}})}f{7 b=4;6(8.J=="N-M"){b="尚未授权["+g.E()+"]用户"}f{b="2z 4s ["+g.E()+"]"}h={v:$3.5.B.3r,b:b};6(c){c($3.5.o.x,h)}}})};r.q.4r=d(14){7 w={2f:8.G()};8.2c(w,14);C $3.1j.2t(w)};r.q.4q=d(u,9){8.1V(u,9)};r.q.1n=d(2x,c){6(8.2y()){7 g=8;8.1K(d(w){$3.5.4p(g.G(),w,2x,c)})}f{6(c){c({O:2x})}}};r.q.1V=d(u,9){6(9.1m==4){C}7 g=8;1O(9.1m){S $3.5.o.1s:{7 1x=9.1x;7 13={4o:g.D(),4n:g.1w(),1x:1x,4m:"4l"};$3.H.3q($3.5.e.2k,4,"3p://3o.3n.3m.1H/3l/4k/2g","3k",13,4,d(9){6(9!=4){6(9["v"]!=4){$3.L.Z(u,$3.5.o.x,9)}f 6(9["2w"]!=4&&9["2w"]==3j){7 1k=$3.1j.3i($3.1j.3h(9["3g"]));6(1k.2v==4){g.2U(u,1k)}f{h={v:$3.5.B.U,V:1k};$3.L.Z(u,$3.5.o.x,h)}}f{h={v:$3.5.B.U,V:9};$3.L.Z(u,$3.5.o.x,h)}}f{h={v:$3.5.B.U};$3.L.Z(u,$3.5.o.x,h)}});I}S $3.5.o.x:{6(9.v!=4){h={v:9.v,V:9}}f{h={v:$3.5.B.U,V:{v:9.v}}}$3.L.Z(u,$3.5.o.x,h);I}2h:$3.L.4j(u);$3.L.Z(u,$3.5.o.3f,4);I}};r.q.3e=d(16){C 16[W.3d]};r.q.3c=d(16){7 2u=$3.1j.3b(16[W.1C]);7 1w=$3.1j.3b(16[W.1B]);6(2u!=4){16[W.1C]=2u}f{16[W.1C]=8.D()}6(1w!=4){16[W.1B]=1w}f{16[W.1B]=8.1w()}C 16};r.q.3a=d(){6(8.D()!=4&&8.1w()!=4){C 1A}$3.L.2n("#2m:["+8.E()+"]应用信息有误,不能进行相关操作。请检查本地代码中和服务端的["+8.E()+"]平台应用配置是否有误! "+"\\n配置:"+$3.1j.2t(8.12));C 1c};r.q.39=d(){6(8.D()!=4){C 1A}$3.L.2n("#2m:["+8.E()+"]应用信息有误,不能进行相关操作。请检查本地代码中和服务端的["+8.E()+"]平台应用配置是否有误! "+"\\n配置:"+$3.1j.2t(8.12));C 1c};r.q.2s=d(c){7 g=8;$3.H.4i(d(9){7 1t=4;7 4h="";7 1g=1c;6(9!=4&&9.2r!=4){38(7 i=0;i<9.2r.2q;i++){7 1Q=9.2r[i];6(1Q!=4&&1Q.2p!=4){38(7 j=0;j<1Q.2p.2q;j++){7 2o=1Q.2p[j];6(2o==g.D()){1g=1A;1t=2o;I}}}6(1g){I}}}6(!1g){$3.L.2n("#2m:尚未配置["+g.E()+"]1i 1h:"+g.D()+", 无法使用进行授权。")}6(c!=4){c(1g,1t)}})};r.q.37=d(u,l,y,c){7 k=4;7 z=4;7 p=4;7 A=4;7 m=4;7 h=4;7 F=l["4g"];6(F==4){F=1P.2l}7 e=$3.5.e.4f;1O(F){S 1P.2l:e=$3.5.e.2k;I;S 1P.36:e=$3.5.e.2j;I;S 1P.35:e=$3.5.e.2i;I}7 g=8;7 G=$3.5.s(e,l,"G");6(G==4){G=$3.5.T.34}6(G==$3.5.T.34){G=8.2I(l,e)}1O(G){S $3.5.T.2H:{k=$3.5.s(e,l,"k");6(k!=4){8.1n([k],d(9){k=9.O[0];$3.H.4e(g.D(),F,k,d(9){6(9.v!=4){6(c!=4){c($3.5.o.x,9,4,y)}}f{7 P={1f:e,F:F,k:k};11[u]={K:P,V:y}}})})}f{7 b=4;6(8.J=="N-M"){b="分享参数k不能为空!"}f{b="1d 1v k 1e X 1u 1z!"}h={v:$3.5.B.U,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}I}S $3.5.T.2C:{k=$3.5.s(e,l,"k");z=$3.5.s(e,l,"z");p=$3.5.s(e,l,"Q");7 15=4;7 1E=$3.5.s(e,l,"2G");A=$3.5.s(e,l,"A");6(1b.q.1a.19(A)==="[18 17]"){15=A[0]}6(15!=4||1E!=4){8.1n([k],d(9){k=9.O[0];$3.H.4d(g.D(),F,z,k,p,15,1E,d(9){6(9.v!=4){6(c!=4){c($3.5.o.x,9,4,y)}}f{7 P={1f:e,F:F,k:k,z:z,Q:p,15:15};11[u]={K:P,V:y}}})})}f{7 b=4;6(8.J=="N-M"){b="分享参数15或33不能为空!"}f{b="1d 1v 15 1y 33 1e X 1u 1z!"}h={v:$3.5.B.U,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}I}S $3.5.T.2D:{k=$3.5.s(e,l,"k");z=$3.5.s(e,l,"z");p=$3.5.s(e,l,"Q");6(p==4){A=$3.5.s(e,l,"A");6(1b.q.1a.19(A)==="[18 17]"){p=A[0]}}m=$3.5.s(e,l,"m");6(p!=4&&m!=4){8.1n([k,m],d(9){k=9.O[0];m=9.O[1];$3.H.4c(g.D(),F,z,k,p,m,d(9){6(9.v!=4){6(c!=4){c($3.5.o.x,9,4,y)}}f{7 P={1f:e,F:F,k:k,z:z,Q:p,m:m};11[u]={K:P,V:y}}})})}f{7 b=4;6(8.J=="N-M"){b="分享参数p或m不能为空!"}f{b="1d 1v p 1y m 1e X 1u 1z!"}h={v:$3.5.B.U,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}I}S $3.5.T.2F:{k=$3.5.s(e,l,"k");z=$3.5.s(e,l,"z");p=$3.5.s(e,l,"Q");6(p==4){A=$3.5.s(e,l,"A");6(1b.q.1a.19(A)==="[18 17]"){p=A[0]}}m=$3.5.s(e,l,"m");7 1F=$3.5.s(e,l,"25");7 32=$3.5.s(e,l,"4b");6(p!=4&&m!=4){8.1n([k,m],d(9){k=9.O[0];m=9.O[1];$3.H.4a(g.D(),F,z,k,p,m,1F,32,d(9){6(9.v!=4){6(c!=4){c($3.5.o.x,9,4,y)}}f{7 P={1f:e,F:F,k:k,z:z,Q:p,m:m,25:1F};11[u]={K:P,V:y}}})})}f{7 b=4;6(8.J=="N-M"){b="分享参数p或m不能为空!"}f{b="1d 1v p 1y m 1e X 1u 1z!"}h={v:$3.5.B.U,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}I}S $3.5.T.2E:{k=$3.5.s(e,l,"k");z=$3.5.s(e,l,"z");p=$3.5.s(e,l,"Q");6(p==4){A=$3.5.s(e,l,"A");6(1b.q.1a.19(A)==="[18 17]"){p=A[0]}}m=$3.5.s(e,l,"m");7 1p=$3.5.s(e,l,"1G");6(p!=4&&m!=4){8.1n([k,m,1p],d(9){k=9.O[0];m=9.O[1];1p=9.O[2];$3.H.49(g.D(),F,z,k,p,m,1p,d(9){6(9.v!=4){6(c!=4){c($3.5.o.x,9,4,y)}}f{7 P={1f:e,F:F,k:k,z:z,Q:p,m:m,1G:1p};11[u]={K:P,V:y}}})})}f{7 b=4;6(8.J=="N-M"){b="分享参数p或m不能为空!"}f{b="1d 1v p 1y m 1e X 1u 1z!"}h={v:$3.5.B.U,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}I}S $3.5.T.48:{k=$3.5.s(e,l,"k");z=$3.5.s(e,l,"z");p=$3.5.s(e,l,"Q");6(p==4){A=$3.5.s(e,l,"A");6(1b.q.1a.19(A)==="[18 17]"){p=A[0]}}m=$3.5.s(e,l,"m");6(p!=4&&m!=4){8.1n([k,m],d(9){k=9.O[0];m=9.O[1];$3.H.47(g.D(),F,z,k,p,m,d(9){6(9.v!=4){6(c!=4){c($3.5.o.x,9,4,y)}}f{7 P={1f:e,F:F,k:k,z:z,Q:p,m:m};11[u]={K:P,V:y}}})})}f{7 b=4;6(8.J=="N-M"){b="分享参数p或m不能为空!"}f{b="1d 1v p 1y m 1e X 1u 1z!"}h={v:$3.5.B.U,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}I}S $3.5.T.46:{6(e==$3.5.e.2j||e==$3.5.e.2i){7 b=4;6(8.J=="N-M"){b="微信文件分享不支持分享到朋友圈或收藏!"}f{b="2j 1y 2i 45 44 43!"}h={v:$3.5.B.2X,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}f{k=$3.5.s(e,l,"k");z=$3.5.s(e,l,"z");p=$3.5.s(e,l,"Q");6(p==4){A=$3.5.s(e,l,"A");6(1b.q.1a.19(A)==="[18 17]"){p=A[0]}}7 1Y=$3.5.s(e,l,"31");7 1X=$3.5.s(e,l,"30");6(p!=4&&1Y!=4&&1X!=4){8.1n([k],d(9){k=9.O[0];$3.H.42(g.D(),F,z,k,p,1Y,1X,d(9){6(9.v!=4){6(c!=4){c($3.5.o.x,9,4,y)}}f{7 P={1f:e,F:F,k:k,z:z,Q:p,31:1Y,30:1X};11[u]={K:P,V:y}}})})}f{7 b=4;6(8.J=="N-M"){b="分享参数p、2Z、2Y不能为空"}f{b="41 1v p、2Z、2Y 1e X 1u!"}h={v:$3.5.B.U,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}}I}2h:{7 b=4;6(8.J=="N-M"){b="不支持的分享类型["+G+"]"}f{b="40 1d G ["+G+"]"}h={v:$3.5.B.2X,b:b};6(c!=4){c($3.5.o.x,h,4,y)}I}}};r.q.2W=d(u,1t,10){7 1W=4;6(10!=4&&10["1N"]!=4&&1b.q.1a.19(10["1N"])==="[18 17]"){1W=10["1N"]}f 6(8.1M!=4){7 2V=8.1M;1W=2V.3Z(",")}7 g=8;$3.H.3Y(8.D(),u,1W,d(9){g.1V(u,9)})};r.q.2U=d(u,1L){7 g=8;7 R={1l:1L["1T"],2e:1L["2g"],2R:(2Q 2P).2O()+1L["3X"]*3W,2b:1L,G:$3.5.3V.3U};7 w={2f:$3.5.e.r,R:R};8.1U(w,d(){g.2T(4,d(1m,9){6(1m==$3.5.o.1s){9["R"]=w["R"];w=9;g.1U(w,4)}$3.L.Z(u,$3.5.o.1s,w)})})};r.q.1U=d(w,c){8.1q=w;7 1r=8.2d();$3.H.2S("2M",8.1q,1c,1r,d(9){6(c!=4){c()}})};r.q.3T=d(w){C w.R!=4&&w.R.2e!=4&&w.R.2R>(2Q 2P).2O()};r.q.1K=d(c){6(8.1q!=4){6(c){c(8.1q)}}f{7 g=8;7 1r=8.2d();$3.H.2N("2M",1c,1r,d(9){g.1q=9!=4?9.1J:4;6(c){c(g.1q)}})}};r.q.2c=d(w,14){6(w!=4&&14!=4){w["2b"]=14;w["1l"]=14["1T"];w["2L"]=14["2L"];w["3S"]=14["3R"];7 1I=2;6(14["2K"]==1){1I=0}f 6(14["2K"]==2){1I=1}w["1I"]=1I}};r.q.2J=d(26){6(26!=4){$3.H.2a("1H.3.29.28.27",d(9){6(9.O){$3.L.3Q(26)}})}};r.q.2I=d(l,e){7 G=$3.5.T.2H;7 z=$3.5.s(e,l,"z");7 p=$3.5.s(e,l,"Q");7 m=$3.5.s(e,l,"m");7 A=$3.5.s(e,l,"A");7 1E=$3.5.s(e,l,"2G");7 1F=$3.5.s(e,l,"25");7 1p=$3.5.s(e,l,"1G");6((p!=4||1b.q.1a.19(A)==="[18 17]")&&m!=4){6(1F!=4){G=$3.5.T.2F}f 6(1p!=4){G=$3.5.T.2E}f{G=$3.5.T.2D}}f 6(1b.q.1a.19(A)==="[18 17]"||1E!=4){G=$3.5.T.2C}C G};$3.5.3P($3.5.e.r,r);',62,308,'|||mob|null|shareSDK|if|var|this|data||error_message|callback|function|platformType|else|self|error|||text|parameters|url||responseState|thumbImage|prototype|WeChat|getShareParam||sessionId|error_code|user|Fail|userData|title|images|errorCode|return|appID|name|scene|type|ext|break|_currentLanguage|content|native|Hans|zh|result|shareParams|thumb_image|credential|case|contentType|APIRequestFail|user_data|WeChatAppInfoKeys|not|resultData|ssdk_authStateChanged|settings|WeChatShareContentSet|_appInfo|params|rawData|image|appInfo|Array|object|apply|toString|Object|false|share|can|platform|hasReady|Scheme|URL|utils|response|uid|state|_convertUrl|Platform|musicUrl|_currentUser|domain|Success|urlScheme|be|param|appSecret|code|or|nil|true|AppSecret|AppId|callbackUrl|emoticonData|extInfo|audio_url|com|gender|value|_getCurrentUser|credentialRawData|_authScopes|scopes|switch|WeChatScene|typeObj|urls|curApps|openid|_setCurrentUser|_authHandler|scope|sourceFile|fileExtension|InvaildPlatform|WXApi|UnsupportFeature|set|flags|query|ext_info|appId|wechat|connector|sharesdk|isPluginRegisted|raw_data|_updateUserInfo|cacheDomain|token|platform_type|access_token|default|WeChatFav|WeChatTimeline|WeChatSession|Session|warning|log|schema|CFBundleURLSchemes|length|CFBundleURLTypes|_checkUrlScheme|objectToJsonString|appKey|errcode|status_code|contents|convertUrlEnabled|Invalid|ssdk_shareStateChanged|ConvertUrl|Image|WebPage|Audio|App|emoticon_data|Text|_getShareType|_setupApp|sex|nickname|currentUser|getCacheData|getTime|Date|new|expired|setCacheData|getUserInfo|_succeedAuthorize|scopesStr|_ssoAuthorize|UnsupportContentType|sourceFileData|sourceFileExtension|source_file|source_extension|fileData|emoticon|Auto|Fav|Timeline|_share|for|_canShare|_canAuthorize|trim|_checkAppInfoAvailable|Scopes|_checkAuthScopes|Cancel|response_data|base64Decode|jsonStringToObject|200|GET|sns|qq|weixin|api|https|ssdk_callHTTPApi|UserUnauth|headers|method|callApi|push|indexOf|annotation|sourceApplication|configuration|find|UnsetURLScheme|after|again|try|Please|did|because|isMultitaskingSupported|support|do|authorize|currentApp|SSDK|_type|registerPlatformClass|ssdk_plugin_wechat_setup|headimgurl|icon|_isUserAvaliable|OAuth2|credentialType|1e3|expires_in|ssdk_wechatAuth|split|unsupported|Share|ssdk_wechatShareFile|file|sharing|unsupport|File|ssdk_wechatShareVideo|Video|ssdk_wechatShareAudio|ssdk_wechatShareApp|file_data|ssdk_wechatShareWebpage|ssdk_wechatShareImage|ssdk_wechatShareText|Unknown|wechat_scene|warningLog|getAppConfig|ssdk_plugin_wechat_cancel_auth|oauth2|authorization_code|grant_type|secret|appid|convertUrl|authStateChanged|createUserByRawData|Authorization|42001|delete|ssdk_wechatHandleShareCalback|handleShareCallback|ssdk_wechatHandleSSOCalback|handleSSOCallback|Can|list|friend|getting|size|cursor|getFriends|friends|adding|addFriend|cancelAuthorize|userinfo|to|Unable|snsapi_userinfo|isSupportAuth|plat_|saveConfig|arguments|setAppInfo|preferredLanguageLocalize|auth_scopes|covert_url|app_secret|app_id'.split('|'),0,{})) diff --git a/Support/Required/ShareSDK.bundle/ScriptCore/platforms/QQ.js b/Support/Required/ShareSDK.bundle/ScriptCore/platforms/QQ.js new file mode 100644 index 0000000..deb3e3a --- /dev/null +++ b/Support/Required/ShareSDK.bundle/ScriptCore/platforms/QQ.js @@ -0,0 +1 @@ +var $pluginID = "com.mob.sharesdk.QQ";eval(function(p,a,c,k,e,d){e=function(c){return(c35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('7 2x="5l://5k.1r.1s/";7 T={1Q:"5j",1P:"5i",2N:"5h",2M:"5g",3i:"5f"};7 1Y={1R:0,1u:1};7 19={};c p(I){9.3K=I;9.13={};9.1z=4;9.1w=4;9.1p=4;9.1N=4;9.M=$3.6.5e()}p.m.I=c(){C 9.3K};p.m.5d=c(q,a){$3.G.U(q,$3.6.k.2c,4)};p.m.F=c(){C"p"};p.m.A=c(){5(9.13[T.1Q]){C 9.13[T.1Q]}C 4};p.m.1O=c(){5(9.13[T.1P]){C 9.13[T.1P]}C 4};p.m.2d=c(){5(9.13[T.2N]){C 9.13[T.2N]}C $3.6.2d()};p.m.2r=c(){C"3J-1h-"+$3.6.h.p+"-"+9.A()};p.m.2E=c(){5(9.13[T.2M]){C 9.13[T.2M]}C $3.6.2E()};p.m.5c=c(1x){5(5b.1L==0){C 9.13}f{9.13=9.3h(1x);9.1z=9.3j(1x);9.3m();9.2S(9.A())}};p.m.5a=c(){7 e=9;7 1y="3J-1h";$3.J.2Z("3I",1f,1y,c(a){5(a!=4){7 24=a.1x;5(24==4){24={}}24["59"+e.I()]=e.A();$3.J.30("3I",24,1f,1y,4)}})};p.m.58=c(){C 1J};p.m.2z=c(q,R){7 g=4;5(9.3l()){5(R==4){R={}}5(R["1o"]==4&&9.1z==4){R["1o"]=["3H","57","56","55","54"]}7 e=9;9.3f(c(S,1a){5(S){e.3a(q,1a,R)}f{7 b=4;5(9.M=="P-O"){b="分享平台["+e.F()+"]尚未配置1B 1A:"+e.1p+",无法进行授权!"}f{b="1h["+e.F()+"]3o 18 2F 1B 1A:"+e.1p+",53 52 2z!"}7 g={w:$3.6.E.3n,b:b};$3.G.U(q,$3.6.k.v,g)}})}f{7 b=4;5(9.M=="P-O"){b="分享平台["+9.F()+"]应用信息无效!"}f{b="1h["+9.F()+"]3D 51!"}g={w:$3.6.E.2t,b:b};$3.G.U(q,$3.6.k.v,g)}};p.m.31=c(2K,d){7 e=9;9.1Z(c(r){5(2K!=4){7 b=4;5(9.M=="P-O"){b="分享平台["+e.F()+"]不支持获取其他用户资料!"}f{b="1h ["+e.F()+"]2H 18 2G 3p 50\'s 4Z!"}7 g={w:$3.6.E.2g,b:b};5(d!=4){d($3.6.k.v,g)}C}e.3G("2A://4Y.1r.1s/r/3H","3A",4,4,c(1g,a){7 X=a;5(1g==$3.6.k.1n){X={2s:$3.6.h.1u,1D:r.V.1D};e.2q(X,a);5(X["1D"]==r["1D"]){X["V"]=r["V"]}}5(d!=4){d(1g,X)}})})};p.m.3G=c(o,3F,Z,3E,d){7 g=4;7 e=9;9.1Z(c(r){5(r!=4){5(Z==4){Z={}}Z["4X"]=e.A();5(r.V!=4){Z["21"]=r.V.28;Z["22"]=r.V.1D}$3.J.3B($3.6.h.1u,4,o,3F,Z,3E,c(a){5(a!=4){5(a["w"]!=4){5(d){d($3.6.k.v,a)}}f{7 1q=$3.12.4W($3.12.3w(a["3v"]));5(a["2J"]==3y){5(d){d($3.6.k.1n,1q)}}f{7 2L=$3.6.E.10;1C(1q["w"]){K 4V:K 4U:K 4T:K 4S:K 4R:K 4Q:K 4P:2L=$3.6.E.3C;H}g={w:2L,14:1q};5(d){d($3.6.k.v,g)}}}}f{g={w:$3.6.E.10};5(d){d($3.6.k.v,g)}}})}f{7 b=4;5(9.M=="P-O"){b="尚未授权["+e.F()+"]用户"}f{b="3D 4O ["+e.F()+"]"}g={w:$3.6.E.3C,b:b};5(d){d($3.6.k.v,g)}}})};p.m.4N=c(q,Y){7 g=4;7 e=9;7 2j=$3.12.4M(Y);5(2j!=4&&2j.2K!=4){7 Z=$3.12.4L(2j.4K);5(Z!=4&&Z.21!=4){7 3z={21:Z.21};$3.J.3B($3.6.h.1u,4,"2A://3c.1r.1s/3b.0/4J","3A",3z,4,c(a){5(a!=4){5(a["w"]!=4){$3.G.U(q,$3.6.k.v,a)}f 5(a["2J"]!=4&&a["2J"]==3y){7 d=c(3x){C 3x};7 3u=$3.12.3w(a["3v"]);7 1q=4I(3u);5(1q.22!=4){Z["22"]=1q.22;e.29(q,Z)}f{g={w:$3.6.E.10,14:1q};$3.G.U(q,$3.6.k.v,g)}}f{g={w:$3.6.E.10,14:a};$3.G.U(q,$3.6.k.v,g)}}f{g={w:$3.6.E.10};$3.G.U(q,$3.6.k.v,g)}})}f{7 b=4;5(9.M=="P-O"){b="无效的授权回调:["+Y+"]"}f{b="3t d o:["+Y+"]"}g={w:$3.6.E.3s,b:b};$3.G.U(q,$3.6.k.v,g)}}f{7 b=4;5(9.M=="P-O"){b="无效的授权回调:["+Y+"]"}f{b="3t d o:["+Y+"]"}g={w:$3.6.E.3s,b:b};$3.G.U(q,$3.6.k.v,g)}};p.m.4H=c(q,Y,3r,3q){7 e=9;5(Y.26(9.1p+"://")==0){$3.J.4G(9.A(),Y,c(a){1C(a.1g){K $3.6.k.1n:{e.29(q,a.L);H}K $3.6.k.v:{7 g={w:$3.6.E.10};$3.G.U(q,$3.6.k.v,g);H}1S:$3.G.U(q,$3.6.k.2c,4);H}});C 1J}C 1f};p.m.4F=c(q,Y,3r,3q){7 e=9;5(Y.26(9.1p+"://")==0||Y.26(9.1N+"://")==0){$3.J.4E(9.A(),Y,c(a){e.1Z(c(r){7 N=19[q];7 Q=4;7 z=4;5(N!=4){Q=N["Q"];z=N["14"]}1C(a.1g){K $3.6.k.1n:{7 X={};X["2p"]=Q;X["l"]=Q["l"];7 2i=[];5(Q["o"]){2i.4D(Q["o"])}X["2i"]=2i;5(Q["W"]!=4){X["D"]=[Q["W"]]}f 5(Q["1e"]!=4){X["D"]=[Q["1e"]]}$3.G.2I(q,$3.6.k.1n,X,r,z);H}K $3.6.k.v:7 g={w:$3.6.E.10,14:{w:a.w,b:a.b}};$3.G.2I(q,$3.6.k.v,g,r,z);H;1S:$3.G.2I(q,$3.6.k.2c,4,r,z);H}4C 19[q];19[q]=4})});C 1J}C 1f};p.m.4B=c(){9.27(4,4)};p.m.4A=c(q,r,d){7 b=4;5(9.M=="P-O"){b="平台["+9.F()+"]不支持添加好友方法!"}f{b="1h["+9.F()+"]2H 18 2G 4z 4y"}7 g={w:$3.6.E.2g,b:b};5(d!=4){d($3.6.k.v,g)}};p.m.4x=c(4w,4v,d){7 b=4;5(9.M=="P-O"){b="平台["+9.F()+"不支持获取好友列表方法!"}f{b="1h["+9.F()+"]2H 18 2G 3p 4u 4t"}7 g={w:$3.6.E.2g,b:b};5(d!=4){d($3.6.k.v,g)}};p.m.2n=c(q,x,d){7 e=9;7 2h=x!=4?x["@2h"]:4;7 z={"@2h":2h};$3.J.2m("1s.3.2l.2k.1r",c(a){5(a.L){$3.J.4s(c(a){5(a.L){e.3e(c(S,1a){5(S){e.2V(q,x,z,d)}f{7 b=4;5(9.M=="P-O"){b="尚未配置["+e.F()+"]1B 1A:"+e.1N+", 无法进行分享。"}f{b="4r\'t 2n 4q 1m["+e.F()+"]3o 18 2F 1B 1A:"+e.1N+"!2w 2v 2u 4p 2F 1B 1A!"}7 g={w:$3.6.E.3n,b:b};5(d!=4){d($3.6.k.v,g,4,z)}}})}f{7 g={w:$3.6.E.2g,b:"应用已禁用后台模式,分享平台["+e.F()+"]无法进行分享! 请在项目设置中开启后台模式后再试!"};5(d!=4){d($3.6.k.v,g,4,z)}}})}f{7 b=4;5(9.M=="P-O"){b="分享平台["+e.F()+"]尚未导入2b.1E!无法进行分享!"}f{b="1h["+e.F()+"]38 2a 2b.1E!2w 2a 37 1E 36 2v 2u!"}7 g={w:$3.6.E.2t,b:b};5(d!=4){d($3.6.k.v,g,4,z)}}})};p.m.4o=c(15){7 r={2s:9.I()};9.2q(r,15);C $3.12.3k(r)};p.m.1t=c(2D,d){5(9.2E()){7 e=9;9.1Z(c(r){$3.6.4n(e.I(),r,2D,d)})}f{5(d){d({L:2D})}}};p.m.4m=c(r){C r.V!=4&&r.V.28!=4&&r.V.35>(34 33).32()};p.m.3m=c(){9.1p=4;7 A=9.A();5(A!=4){9.1p="4l"+A;7 1x=4k(9.A());7 23=1x.1d(16).4j();4i(23.1L<8){23="0"+23}9.1N="p"+23}};p.m.3l=c(){5(9.A()!=4&&9.1O()!=4){C 1J}$3.G.2C("#2B:["+9.F()+"]应用信息有误,不能进行相关操作。请检查本地代码中和服务端的["+9.F()+"]平台应用配置是否有误! "+"\\n配置:"+$3.12.3k(9.13));C 1f};p.m.3j=c(1c){C 1c[T.3i]};p.m.3h=c(1c){7 A=$3.12.3g(1c[T.1Q]);7 1O=$3.12.3g(1c[T.1P]);5(A!=4){1c[T.1Q]=A}f{1c[T.1Q]=9.A()}5(1O!=4){1c[T.1P]=1O}f{1c[T.1P]=9.1O()}C 1c};p.m.3f=c(d){7 e=9;$3.J.3d(c(a){7 1a=4;7 1G="";7 S=1f;7 1H=e.1p;5(a!=4&&a.1M!=4){2f(7 i=0;i35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('6 L={1N:"5P",1M:"5O",1L:"22",3a:"5N",5M:"5L",3x:"5K"};6 1G={};b q(c){7.3Z=c;7.Z={};7.1w=4;7.1B=4;7.11=[];7.T=$3.9.5J()}q.o.c=b(){A 7.3Z};q.o.5I=b(l,a){$3.B.S(l,$3.9.u.2x,4)};q.o.N=b(){5(7.T=="X-W"){A"新浪微博"}d{A"q"}};q.o.z=b(){5(7.Z[L.1N]){A 7.Z[L.1N]}A 4};q.o.1E=b(){5(7.Z[L.1M]){A 7.Z[L.1M]}A 4};q.o.16=b(){5(7.Z[L.1L]){A 7.Z[L.1L]}A 4};q.o.K=b(){5(7.Z[L.3a]){A 7.Z[L.3a]}A $3.9.K()};q.o.2H=b(){A"3Y-1v-"+$3.9.1T.q+"-"+7.z()};q.o.2X=b(){5(7.Z[L.2W]){A 7.Z[L.2W]}A $3.9.2X()};q.o.5H=b(1Y){5(5G.1z==0){A 7.Z}d{7.Z=7.3w(1Y);7.1w=7.3y(1Y);7.3v();7.3e(7.z())}};q.o.5F=b(){6 8=7;6 1t="3Y-1v";$3.I.3j("3X",1e,1t,b(a){5(a!=4){6 2c=a.1Y;5(2c==4){2c={}}2c["5E"+8.c()]=8.z();$3.I.3i("3X",2c,1e,1t,4)}})};q.o.5D=b(){A 1K};q.o.2m=b(l,E){6 r=4;5(7.3u()){6 8=7;6 K=7.K();5(K=="1Z"||K=="5C"){$3.I.5B(b(a){5(a.Q){8.2S(b(1g,1a){5(1g){8.3n(l,1a,E)}d 5(K=="1Z"){8.1H(l,E)}d{6 2b="";1D(6 i=0;i<8.11.1z;i++){5(i==0){2b=8.11[i]}d{2b+="或"+8.11[i]}}6 e=4;5(8.T=="X-W"){e="分享平台["+8.N()+"]尚未配置2O 2N:"+2b+",无法进行授权!"}d{e="1v["+8.N()+"]5A 1u 5z 2O 2N:"+2b+",5y 5x 2m!"}6 r={v:$3.9.J.5w,e:e};$3.B.S(l,$3.9.u.H,r)}})}d 5(K=="1Z"){8.1H(l,E)}d{6 e=4;5(8.T=="X-W"){e="分享平台["+8.N()+"]不支持["+K+"]授权方式!"}d{e="1v ["+8.N()+"]2k 1u 2j 2i c :["+K+"]!"}6 r={v:$3.9.J.2h,e:e};$3.B.S(l,$3.9.u.H,r)}})}d 5(K=="5v"){8.1H(l,E)}d{6 e=4;5(7.T=="X-W"){e="分享平台["+8.N()+"]不支持["+K+"]授权方式!"}d{e="1v ["+8.N()+"]2k 1u 2j 2i c :["+K+"]!"}r={v:$3.9.J.2h,e:e};$3.B.S(l,$3.9.u.H,r)}}d{6 e=4;5(7.T=="X-W"){e="分享平台["+7.N()+"]应用信息无效!"}d{e="1v["+7.N()+"]39 5u!"}r={v:$3.9.J.5t,e:e};$3.B.S(l,$3.9.u.H,r)}};q.o.5s=b(l,13){6 r=4;6 8=7;6 2z=$3.C.3V(13);5(2z!=4&&2z.1r!=4){6 p=$3.C.3U(2z.1r);5(p!=4&&p.1J!=4){p["2l"]=7.z();p["5r"]=7.1E();p["5q"]="5p";p["22"]=7.16();$3.I.3Q(7.c(),4,"1f://1p.Y.10/2n/2T","2s",p,4,b(a){5(a!=4){6 1s=$3.C.3N($3.C.3M(a["3L"]));5(1s.r==4){8.2q(l,1s)}d{r={v:$3.9.J.1i,1q:1s};$3.B.S(l,$3.9.u.H,r)}}d{r={v:$3.9.J.1i};$3.B.S(l,$3.9.u.H,r)}})}d{6 e=4;5(7.T=="X-W"){e="无效的授权回调:["+13+"]"}d{e="39 h x:["+13+"]"}r={v:$3.9.J.3W,e:e};$3.B.S(l,$3.9.u.H,r)}}d{6 e=4;5(7.T=="X-W"){e="无效的授权回调:["+13+"]"}d{e="39 h x:["+13+"]"}r={v:$3.9.J.3W,e:e};$3.B.S(l,$3.9.u.H,r)}};q.o.5o=b(l,13,3T,3S){6 8=7;1D(6 i=0;i<7.11.1z;i++){6 1y=7.11[i];5(13.3R(1y+"://")==0){6 38=$3.C.3V(13);5(38.1t=="1s"){$3.I.5n(7.z(),13,b(a){2a(a.O){P $3.9.u.1b:{8.2q(l,a.Q);U}P $3.9.u.H:{6 r={v:$3.9.J.1i,1q:{v:a.v}};$3.B.S(l,$3.9.u.H,r);U}2o:$3.B.S(l,$3.9.u.2x,4);U}})}d{6 p=$3.C.3U(38.1r);5(p["5m"]!=4||p["5l"]!=4||p["5k"]=="5j"){$3.B.S(l,$3.9.u.2x,4)}d 5(p["5i"]!=4||p["v"]!=4){6 r={v:$3.9.J.1i,1q:p};$3.B.S(l,$3.9.u.H,r)}d{7.2q(l,p)}}A 1K}}A 1e};q.o.5h=b(l,13,3T,3S){6 8=7;1D(6 i=0;i<7.11.1z;i++){6 1y=7.11[i];5(13.3R(1y+"://")==0){$3.I.5g(7.z(),13,b(a){8.1C(b(k){6 1j=1G[l];6 18=4;6 F=4;5(1j!=4){18=1j["18"];F=1j["1q"]}2a(a.O){P $3.9.u.1b:{6 w={};w["2f"]=18;w["s"]=18["s"];6 2y=[];5(18["x"]){2y.2r(18["x"])}w["2y"]=2y;5(18["y"]!=4){w["G"]=[18["y"]]}$3.B.37(l,$3.9.u.1b,w,k,F);U}P $3.9.u.H:6 r={v:$3.9.J.1i,1q:{v:a.v}};$3.B.37(l,$3.9.u.H,r,k,F);U;2o:$3.B.37(l,$3.9.u.2x,4,k,F);U}5f 1G[l];1G[l]=4})});A 1K}}A 1e};q.o.1P=b(x,3P,p,3O,h){6 r=4;6 8=7;7.1C(b(k){5(k!=4){5(p==4){p={}}5(k.17!=4){p["2T"]=k.17.3t}$3.I.3Q(8.c(),4,x,3P,p,3O,b(a){5(a!=4){6 1s=$3.C.3N($3.C.3M(a["3L"]));5(a["5e"]==5d){5(h){h($3.9.u.1b,1s)}}d{6 1J=$3.9.J.1i;2a(1s["v"]){P 5c:P 5b:P 5a:P 59:P 58:P 57:P 56:P 55:P 54:P 53:1J=$3.9.J.3K;U}r={v:1J,1q:1s};5(h){h($3.9.u.H,r)}}}d{r={v:$3.9.J.1i};5(h){h($3.9.u.H,r)}}})}d{6 e=4;5(8.T=="X-W"){e="尚未授权["+8.N()+"]用户"}d{e="52 51 ["+8.N()+"]"}r={v:$3.9.J.3K,e:e};5(h){h($3.9.u.H,r)}}})};q.o.3s=b(1r,h){6 8=7;7.1C(b(k){6 p={};5(1r!=4){5(1r.R!=4){p["R"]=1r.R}d 5(1r.N!=4){p["2F"]=1r.N}}d 5(k!=4&&k.17!=4&&k.17.R!=4){p["R"]=k.17.R}8.1P("1f://1p.Y.10/2/1S/50.1R","3H",p,4,b(O,a){6 w=a;5(O==$3.9.u.1b){w={24:$3.9.1T.q};8.1X(w,a);5(w["R"]==k["R"]){w["17"]=k["17"]}}5(h!=4){h(O,w)}})})};q.o.4Z=b(){6 8=7;7.1P("1f://1p.Y.10/2n/4Y","2s",4,4,b(O,a){5(O==$3.9.u.1b){5(a.Q){8.2g(4,4)}}})};q.o.4X=b(l,k,h){6 p={};5(k["R"]!=4){p["R"]=k["R"]}d 5(k["2G"]!=4){p["2F"]=k["2G"]}6 8=7;7.1P("1f://1p.Y.10/2/3I/4W.1R","2s",p,4,b(O,a){6 w=a;5(O==$3.9.u.1b){w={24:$3.9.1T.q};8.1X(w,a)}5(h!=4){h(O,w)}})};q.o.4V=b(36,3J,h){6 8=7;7.1C(b(k){6 p={36:36,4U:3J};5(k!=4){p["R"]=k["R"]}8.1P("1f://1p.Y.10/2/3I/4T.1R","3H",p,4,b(O,a){6 w=a;5(O==$3.9.u.1b){w={};w["4S"]=a["4R"];w["35"]=a["35"];w["4Q"]=a["4P"];6 1S=[];6 2w=a["1S"];5(2w!=4){1D(6 i=0;i<2w.1z;i++){6 k={24:$3.9.1T.q};8.1X(k,2w[i]);1S.2r(k)}}w["1S"]=1S;w["4O"]=a["35"]>0}5(h!=4){h(O,w)}})})};q.o.1O=b(l,t,h){6 8=7;6 3G=t!=4?t["@4N"]:1e;6 2v=t!=4?t["@2v"]:4;6 F={"@2v":2v};6 c=$3.9.D(7.c(),t,"c");5(c==4){c=$3.9.14.2Z}5(3G){8.2S(b(1g,1a){5(1g){8.3F(l,c,t,F,h)}d{8.1F(c,t,F,h)}})}d{7.1F(c,t,F,h)}};q.o.4M=b(M){6 k={24:7.c()};7.1X(k,M);A $3.C.2U(k)};q.o.3F=b(l,c,t,F,h){6 s=4;6 y=4;6 G=4;6 r=4;6 8=7;$3.I.2E("10.3.2D.2C.Y",b(a){5(a.Q){5(c==$3.9.14.2Z){c=8.2B(t,1K)}2a(c){P $3.9.14.2A:{s=$3.9.D(8.c(),t,"s");5(s!=4){8.27([s],b(a){s=a.Q[0];$3.I.4L(8.z(),s,b(a){5(a.v!=4){8.1F(c,t,F,h)}d{6 1j={34:8.c(),s:s};1G[l]={18:1j,1q:F}}})})}d{6 e=4;5(8.T=="X-W"){e="分享参数s不能为空!"}d{e="1O 33 s 32 1u 31 30!"}r={v:$3.9.J.1i,e:e};5(h!=4){h($3.9.u.H,r,4,F)}}U}P $3.9.14.2d:{s=$3.9.D(8.c(),t,"s");G=$3.9.D(8.c(),t,"G");5(1n.o.1c.1m(G)==="[1l 1k]"){y=G[0]}5(y!=4){8.27([s],b(a){s=a.Q[0];$3.I.4K(8.z(),s,y,b(a){5(a.v!=4){8.1F(c,t,F,h)}d{6 1j={34:8.c(),s:s,y:y};1G[l]={18:1j,1q:F}}})})}d{6 e=4;5(8.T=="X-W"){e="分享参数y不能为空!"}d{e="1O 33 y 32 1u 31 30!"}r={v:$3.9.J.1i,e:e};5(h!=4){h($3.9.u.H,r,4,F)}}U}P $3.9.14.3b:{s=$3.9.D(8.c(),t,"s");6 15=$3.9.D(8.c(),t,"15");6 x=$3.9.D(8.c(),t,"x");6 1d=$3.9.D(8.c(),t,"3c");5(1d==4){1d=(1W 1V).1U().1c()}G=$3.9.D(8.c(),t,"G");5(1n.o.1c.1m(G)==="[1l 1k]"){y=G[0]}5(15!=4&&x!=4&&1d!=4&&y!=4){8.27([s,x],b(a){s=a.Q[0];x=a.Q[1];$3.I.4J(8.z(),15,s,y,x,1d,b(a){5(a.v!=4){8.1F(c,t,F,h)}d{6 1j={34:8.c(),s:s,15:15,4I:y,x:x};1G[l]={18:1j,1q:F}}})})}d{6 e=4;5(8.T=="X-W"){e="分享参数15、x、1d、y不能为空!"}d{e="1O 33 15、x、1d、y 32 1u 31 30!"}r={v:$3.9.J.1i,e:e};5(h!=4){h($3.9.u.H,r,4,F)}}U}2o:{6 e=4;5(8.T=="X-W"){e="不支持的分享类型["+c+"]"}d{e="3A 1O c ["+c+"]"}r={v:$3.9.J.3z,e:e};5(h!=4){h($3.9.u.H,r,4,F)}U}}}d{8.1F(c,t,F,h)}})};q.o.1F=b(c,t,F,h){6 s=4;6 V=4;6 1h=4;6 8=7;6 x=4;6 p=4;5(c==$3.9.14.2Z){c=8.2B(t,1e)}2a(c){P $3.9.14.2A:{s=$3.9.D(7.c(),t,"s");5(s!=4){x="1f://1p.Y.10/2/2Y/4H.1R";p={28:s};V=$3.9.D(7.c(),t,"V");1h=$3.9.D(7.c(),t,"1Q");5(V!=4&&1h!=4){p["V"]=V;p["1Q"]=1h}}U}P $3.9.14.2d:{6 y=4;6 G=$3.9.D(7.c(),t,"G");5(1n.o.1c.1m(G)==="[1l 1k]"){y=G[0]}5(y!=4){5(/^(2t\\:\\/)?\\//.2u(y)){x="1f://3E.1p.Y.10/2/2Y/3E.1R";6 29="4G/4F-4E";5(/\\.4D?g$/.2u(y)){29="y/4C"}d 5(/\\.3D$/.2u(y)){29="y/3D"}d 5(/\\.3C$/.2u(y)){29="y/3C"}6 2t={4B:y,4A:29};p={4z:"@2t("+$3.C.2U(2t)+")"};s=$3.9.D(7.c(),t,"s");5(s!=4){p["28"]=s}V=$3.9.D(7.c(),t,"V");1h=$3.9.D(7.c(),t,"1Q");5(V!=4&&1h!=4){p["V"]=V;p["1Q"]=1h}}d{x="1f://1p.Y.10/2/2Y/4y.1R";p={x:y};s=$3.9.D(7.c(),t,"s");5(s!=4){p["28"]=s}V=$3.9.D(7.c(),t,"V");1h=$3.9.D(7.c(),t,"1Q");5(V!=4&&1h!=4){p["V"]=V;p["1Q"]=1h}}}U}}5(x!=4&&p!=4){7.1C(b(k){6 26=[p["28"]];8.27(26,b(a){p["28"]=a.Q[0];8.1P(x,"2s",p,4,b(O,a){6 w=a;5(O==$3.9.u.1b){w={};w["2f"]=a;w["4x"]=a["2e"];w["s"]=a["s"];5(a["3B"]!=4){w["G"]=[a["3B"]]}}5(h!=4){h(O,w,k,F)}})})})}d{6 e=4;5(7.T=="X-W"){e="不支持的分享类型["+c+"]"}d{e="3A 1O c ["+c+"]"}6 r={v:$3.9.J.3z,e:e};5(h!=4){h($3.9.u.H,r,4,F)}}};q.o.27=b(26,h){5(7.2X()){6 8=7;7.1C(b(k){$3.9.2W(8.c(),k,26,h)})}d{5(h){h({Q:26})}}};q.o.3y=b(12){A 12[L.3x]};q.o.3w=b(12){6 z=$3.C.2V(12[L.1N]);6 1E=$3.C.2V(12[L.1M]);6 16=$3.C.2V(12[L.1L]);5(z!=4){12[L.1N]=z}d{12[L.1N]=7.z()}5(1E!=4){12[L.1M]=1E}d{12[L.1M]=7.1E()}5(16!=4){12[L.1L]=16}d{12[L.1L]=7.16()}A 12};q.o.3v=b(){7.11.4w(0);6 z=7.z();5(z!=4){7.11.2r("3l."+z);7.11.2r("4v"+z)}};q.o.3u=b(){5(7.z()!=4&&7.1E()!=4&&7.16()!=4){A 1K}$3.B.3r("#3q:["+7.N()+"]应用信息有误,不能进行相关操作。请检查本地代码中和服务端的["+7.N()+"]平台应用配置是否有误! "+"\\n配置:"+$3.C.2U(7.Z));A 1e};q.o.2q=b(l,25){6 8=7;6 17={R:25["R"],3t:25["2T"],4u:(1W 1V).1U()+25["4t"]*4s,2f:25,c:$3.9.4r.4q};6 k={24:7.c(),17:17};7.2g(k,b(){8.3s(4,b(O,a){5(O==$3.9.u.1b){a["17"]=k["17"];k=a;8.2g(k,4)}$3.B.S(l,$3.9.u.1b,k)})})};q.o.2S=b(h){6 8=7;$3.I.4p(b(a){6 1a=4;6 2p="";6 1g=1e;1D(6 n=0;n<8.11.1z;n++){6 1y=8.11[n];5(a!=4&&a.2R!=4){1D(6 i=0;i35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('7 W={1C:"4X",1B:"4W",2B:"4V",3d:"4U"};7 1P={2l:0,36:1,35:2};7 11={};d r(G){8.3O=G;8.12={};8.1M=4;8.1q=4;8.J=$3.5.4T()}r.q.G=d(){C 8.3O};r.q.E=d(){6(8.J=="N-M"){C"微信"}f{C"r"}};r.q.D=d(){6(8.12[W.1C]){C 8.12[W.1C]}C 4};r.q.1w=d(){6(8.12[W.1B]){C 8.12[W.1B]}C 4};r.q.2d=d(){C"3N-1o-"+$3.5.e.r+"-"+8.D()};r.q.2y=d(){6(8.12[W.2B]){C 8.12[W.2B]}C $3.5.2y()};r.q.4S=d(1J){6(4R.2q==0){C 8.12}f{8.12=8.3c(1J);8.1M=8.3e(1J);8.2J(8.D())}};r.q.4Q=d(){7 g=8;7 1r="3N-1o";$3.H.2N("3M",1c,1r,d(9){6(9!=4){7 1S=9.1J;6(1S==4){1S={}}1S["4P"+g.G()]=g.D();$3.H.2S("3M",1S,1c,1r,4)}})};r.q.4O=d(){C 1A};r.q.3L=d(u,10){6(8.3a()){7 g=8;$3.H.2a("1H.3.29.28.27",d(9){6(9.O){$3.H.3I(d(9){6(9.O){g.2s(d(1g,1t){6(1g){6(10==4){10={}}6(10["1N"]==4&&g.1M==4){10["1N"]=["4N"]}g.2W(u,1t,10)}f{7 b=4;6(g.J=="N-M"){b="尚未设置分享平台["+g.E()+"]的1i 1h:"+g.D()+",无法进行授权!请在项目设置中设置1i 1h后再试!"}f{b="4M 4L 3L 3H 1f["+g.E()+"]3G X 22 1i 1h:"+g.D()+"!3F 3E 3D 3C 22 1i 1h!"}7 h={v:$3.5.B.3B,b:b};$3.L.Z(u,$3.5.o.x,h)}})}f{7 h={v:$3.5.B.21,b:"应用已禁用后台模式,分享平台["+g.E()+"]无法进行授权! 请在项目设置中开启后台模式后再试!"};$3.L.Z(u,$3.5.o.x,h)}})}f{7 b=4;6(g.J=="N-M"){b="分享平台["+g.E()+"]尚未导入20.a库!无法进行授权!"}f{b="1o["+g.E()+"]1e X 3A 20.a!"}7 h={v:$3.5.B.1Z,b:b};$3.L.Z(u,$3.5.o.x,h)}})}f{7 b=4;6(8.J=="N-M"){b="分享平台["+8.E()+"]应用信息无效!"}f{b="1o["+8.E()+"]2z 3z!"}7 h={v:$3.5.B.1Z,b:b};$3.L.Z(u,$3.5.o.x,h)}};r.q.2T=d(24,c){7 g=8;8.1K(d(w){7 13={};6(24!=4){6(24.1l!=4){13["1T"]=24.1l}}f 6(w!=4&&w.R!=4&&w.R.1l!=4){13["1T"]=w.R.1l}g.3u("3p://3o.3n.3m.1H/3l/4K","3k",13,4,d(1m,9){7 Y=9;6(1m==$3.5.o.1s){Y={2f:$3.5.e.r};g.2c(Y,9);6(Y["1l"]==w["1l"]){Y["R"]=w["R"]}}6(c!=4){c(1m,Y)}})})};r.q.4J=d(){8.1U(4,4)};r.q.4I=d(u,w,c){7 b=4;6(8.J=="N-M"){b="平台["+8.E()+"]不支持添加好友方法!"}f{b="1o["+8.E()+"]3K X 3J 4H 4G"}7 h={v:$3.5.B.21,b:b};6(c!=4){c($3.5.o.x,h)}};r.q.4F=d(4E,4D,c){7 b=4;6(8.J=="N-M"){b="平台["+8.E()+"不支持获取好友列表方法!"}f{b="1o["+8.E()+"]3K X 3J 4C 4B 4A"}7 h={v:$3.5.B.21,b:b};6(c!=4){c($3.5.o.x,h)}};r.q.1d=d(u,l,c){7 23=l!=4?l["@23"]:4;7 y={"@23":23};6(8.39()){7 g=8;$3.H.2a("1H.3.29.28.27",d(9){6(9.O){$3.H.3I(d(9){6(9.O){g.2s(d(1g,1t){6(1g){g.37(u,l,y,c)}f{7 b=4;6(8.J=="N-M"){b="尚未设置分享平台["+g.E()+"]的1i 1h:"+g.D()+",无法进行分享!请在项目设置中设置1i 1h后再试!"}f{b="4z\'t 1d 3H 1f["+g.E()+"]3G X 22 1i 1h:"+g.D()+"!3F 3E 3D 3C 22 1i 1h!"}7 h={v:$3.5.B.3B,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}})}f{7 h={v:$3.5.B.21,b:"应用已禁用后台模式,分享平台["+g.E()+"]无法进行分享! 请在项目设置中开启后台模式后再试!"};6(c!=4){c($3.5.o.x,h,4,y)}}})}f{7 b=4;6(8.J=="N-M"){b="分享平台["+g.E()+"]尚未导入20.a库!无法进行分享!"}f{b="1o["+g.E()+"]1e X 3A 20.a!"}7 h={v:$3.5.B.1Z,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}})}f{7 b=4;6(8.J=="N-M"){b="分享平台["+8.E()+"]应用信息无效!"}f{b="1o["+8.E()+"]2z 3z!"}7 h={v:$3.5.B.1Z,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}};r.q.4y=d(u,1D,3y,3x){7 g=8;6(1D.3w(8.D()+"://")==0){$3.H.4x(8.D(),u,1D,d(9){g.1V(u,9)});C 1A}C 1c};r.q.4w=d(u,1D,3y,3x){7 g=8;6(1D.3w(8.D()+"://")==0){$3.H.4v(8.D(),1D,d(9){g.1K(d(w){7 P=11[u];7 K=4;7 y=4;6(P!=4){K=P["K"];y=P["V"]}1O(9.1m){S $3.5.o.1s:{7 Y={};Y["2b"]=K;Y["k"]=K["k"];7 1R=[];6(K["m"]){1R.3v(K["m"])}6(K["1G"]){1R.3v(K["1G"])}Y["1R"]=1R;6(K["Q"]!=4){Y["A"]=[K["Q"]]}f 6(K["15"]!=4){Y["A"]=[K["15"]]}$3.L.2A(u,$3.5.o.1s,Y,w,y);I}S $3.5.o.x:7 h={v:$3.5.B.U,V:{v:9.v}};$3.L.2A(u,$3.5.o.x,h,w,y);I;2h:$3.L.2A(u,$3.5.o.3f,4,w,y);I}4u 11[u];11[u]=4})});C 1A}C 1c};r.q.3u=d(m,3t,13,3s,c){7 h=4;7 g=8;8.1K(d(w){6(w!=4){6(13==4){13={}}6(w.R!=4){13["2g"]=w.R.2e}$3.H.3q($3.5.e.2k,4,m,3t,13,3s,d(9){6(9!=4){6(9["v"]!=4){6(c){c($3.5.o.x,9)}}f{7 1k=$3.1j.3i($3.1j.3h(9["3g"]));6(9["2w"]==3j&&1k["2v"]==4){6(c){c($3.5.o.1s,1k)}}f{7 1x=$3.5.B.U;1O(1k["2v"]){S 4t:1x=$3.5.B.3r;I}h={v:1x,V:1k};6(c){c($3.5.o.x,h)}}}}f{h={v:$3.5.B.U};6(c){c($3.5.o.x,h)}}})}f{7 b=4;6(8.J=="N-M"){b="尚未授权["+g.E()+"]用户"}f{b="2z 4s ["+g.E()+"]"}h={v:$3.5.B.3r,b:b};6(c){c($3.5.o.x,h)}}})};r.q.4r=d(14){7 w={2f:8.G()};8.2c(w,14);C $3.1j.2t(w)};r.q.4q=d(u,9){8.1V(u,9)};r.q.1n=d(2x,c){6(8.2y()){7 g=8;8.1K(d(w){$3.5.4p(g.G(),w,2x,c)})}f{6(c){c({O:2x})}}};r.q.1V=d(u,9){6(9.1m==4){C}7 g=8;1O(9.1m){S $3.5.o.1s:{7 1x=9.1x;7 13={4o:g.D(),4n:g.1w(),1x:1x,4m:"4l"};$3.H.3q($3.5.e.2k,4,"3p://3o.3n.3m.1H/3l/4k/2g","3k",13,4,d(9){6(9!=4){6(9["v"]!=4){$3.L.Z(u,$3.5.o.x,9)}f 6(9["2w"]!=4&&9["2w"]==3j){7 1k=$3.1j.3i($3.1j.3h(9["3g"]));6(1k.2v==4){g.2U(u,1k)}f{h={v:$3.5.B.U,V:1k};$3.L.Z(u,$3.5.o.x,h)}}f{h={v:$3.5.B.U,V:9};$3.L.Z(u,$3.5.o.x,h)}}f{h={v:$3.5.B.U};$3.L.Z(u,$3.5.o.x,h)}});I}S $3.5.o.x:{6(9.v!=4){h={v:9.v,V:9}}f{h={v:$3.5.B.U,V:{v:9.v}}}$3.L.Z(u,$3.5.o.x,h);I}2h:$3.L.4j(u);$3.L.Z(u,$3.5.o.3f,4);I}};r.q.3e=d(16){C 16[W.3d]};r.q.3c=d(16){7 2u=$3.1j.3b(16[W.1C]);7 1w=$3.1j.3b(16[W.1B]);6(2u!=4){16[W.1C]=2u}f{16[W.1C]=8.D()}6(1w!=4){16[W.1B]=1w}f{16[W.1B]=8.1w()}C 16};r.q.3a=d(){6(8.D()!=4&&8.1w()!=4){C 1A}$3.L.2n("#2m:["+8.E()+"]应用信息有误,不能进行相关操作。请检查本地代码中和服务端的["+8.E()+"]平台应用配置是否有误! "+"\\n配置:"+$3.1j.2t(8.12));C 1c};r.q.39=d(){6(8.D()!=4){C 1A}$3.L.2n("#2m:["+8.E()+"]应用信息有误,不能进行相关操作。请检查本地代码中和服务端的["+8.E()+"]平台应用配置是否有误! "+"\\n配置:"+$3.1j.2t(8.12));C 1c};r.q.2s=d(c){7 g=8;$3.H.4i(d(9){7 1t=4;7 4h="";7 1g=1c;6(9!=4&&9.2r!=4){38(7 i=0;i<9.2r.2q;i++){7 1Q=9.2r[i];6(1Q!=4&&1Q.2p!=4){38(7 j=0;j<1Q.2p.2q;j++){7 2o=1Q.2p[j];6(2o==g.D()){1g=1A;1t=2o;I}}}6(1g){I}}}6(!1g){$3.L.2n("#2m:尚未配置["+g.E()+"]1i 1h:"+g.D()+", 无法使用进行授权。")}6(c!=4){c(1g,1t)}})};r.q.37=d(u,l,y,c){7 k=4;7 z=4;7 p=4;7 A=4;7 m=4;7 h=4;7 F=l["4g"];6(F==4){F=1P.2l}7 e=$3.5.e.4f;1O(F){S 1P.2l:e=$3.5.e.2k;I;S 1P.36:e=$3.5.e.2j;I;S 1P.35:e=$3.5.e.2i;I}7 g=8;7 G=$3.5.s(e,l,"G");6(G==4){G=$3.5.T.34}6(G==$3.5.T.34){G=8.2I(l,e)}1O(G){S $3.5.T.2H:{k=$3.5.s(e,l,"k");6(k!=4){8.1n([k],d(9){k=9.O[0];$3.H.4e(g.D(),F,k,d(9){6(9.v!=4){6(c!=4){c($3.5.o.x,9,4,y)}}f{7 P={1f:e,F:F,k:k};11[u]={K:P,V:y}}})})}f{7 b=4;6(8.J=="N-M"){b="分享参数k不能为空!"}f{b="1d 1v k 1e X 1u 1z!"}h={v:$3.5.B.U,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}I}S $3.5.T.2C:{k=$3.5.s(e,l,"k");z=$3.5.s(e,l,"z");p=$3.5.s(e,l,"Q");7 15=4;7 1E=$3.5.s(e,l,"2G");A=$3.5.s(e,l,"A");6(1b.q.1a.19(A)==="[18 17]"){15=A[0]}6(15!=4||1E!=4){8.1n([k],d(9){k=9.O[0];$3.H.4d(g.D(),F,z,k,p,15,1E,d(9){6(9.v!=4){6(c!=4){c($3.5.o.x,9,4,y)}}f{7 P={1f:e,F:F,k:k,z:z,Q:p,15:15};11[u]={K:P,V:y}}})})}f{7 b=4;6(8.J=="N-M"){b="分享参数15或33不能为空!"}f{b="1d 1v 15 1y 33 1e X 1u 1z!"}h={v:$3.5.B.U,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}I}S $3.5.T.2D:{k=$3.5.s(e,l,"k");z=$3.5.s(e,l,"z");p=$3.5.s(e,l,"Q");6(p==4){A=$3.5.s(e,l,"A");6(1b.q.1a.19(A)==="[18 17]"){p=A[0]}}m=$3.5.s(e,l,"m");6(p!=4&&m!=4){8.1n([k,m],d(9){k=9.O[0];m=9.O[1];$3.H.4c(g.D(),F,z,k,p,m,d(9){6(9.v!=4){6(c!=4){c($3.5.o.x,9,4,y)}}f{7 P={1f:e,F:F,k:k,z:z,Q:p,m:m};11[u]={K:P,V:y}}})})}f{7 b=4;6(8.J=="N-M"){b="分享参数p或m不能为空!"}f{b="1d 1v p 1y m 1e X 1u 1z!"}h={v:$3.5.B.U,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}I}S $3.5.T.2F:{k=$3.5.s(e,l,"k");z=$3.5.s(e,l,"z");p=$3.5.s(e,l,"Q");6(p==4){A=$3.5.s(e,l,"A");6(1b.q.1a.19(A)==="[18 17]"){p=A[0]}}m=$3.5.s(e,l,"m");7 1F=$3.5.s(e,l,"25");7 32=$3.5.s(e,l,"4b");6(p!=4&&m!=4){8.1n([k,m],d(9){k=9.O[0];m=9.O[1];$3.H.4a(g.D(),F,z,k,p,m,1F,32,d(9){6(9.v!=4){6(c!=4){c($3.5.o.x,9,4,y)}}f{7 P={1f:e,F:F,k:k,z:z,Q:p,m:m,25:1F};11[u]={K:P,V:y}}})})}f{7 b=4;6(8.J=="N-M"){b="分享参数p或m不能为空!"}f{b="1d 1v p 1y m 1e X 1u 1z!"}h={v:$3.5.B.U,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}I}S $3.5.T.2E:{k=$3.5.s(e,l,"k");z=$3.5.s(e,l,"z");p=$3.5.s(e,l,"Q");6(p==4){A=$3.5.s(e,l,"A");6(1b.q.1a.19(A)==="[18 17]"){p=A[0]}}m=$3.5.s(e,l,"m");7 1p=$3.5.s(e,l,"1G");6(p!=4&&m!=4){8.1n([k,m,1p],d(9){k=9.O[0];m=9.O[1];1p=9.O[2];$3.H.49(g.D(),F,z,k,p,m,1p,d(9){6(9.v!=4){6(c!=4){c($3.5.o.x,9,4,y)}}f{7 P={1f:e,F:F,k:k,z:z,Q:p,m:m,1G:1p};11[u]={K:P,V:y}}})})}f{7 b=4;6(8.J=="N-M"){b="分享参数p或m不能为空!"}f{b="1d 1v p 1y m 1e X 1u 1z!"}h={v:$3.5.B.U,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}I}S $3.5.T.48:{k=$3.5.s(e,l,"k");z=$3.5.s(e,l,"z");p=$3.5.s(e,l,"Q");6(p==4){A=$3.5.s(e,l,"A");6(1b.q.1a.19(A)==="[18 17]"){p=A[0]}}m=$3.5.s(e,l,"m");6(p!=4&&m!=4){8.1n([k,m],d(9){k=9.O[0];m=9.O[1];$3.H.47(g.D(),F,z,k,p,m,d(9){6(9.v!=4){6(c!=4){c($3.5.o.x,9,4,y)}}f{7 P={1f:e,F:F,k:k,z:z,Q:p,m:m};11[u]={K:P,V:y}}})})}f{7 b=4;6(8.J=="N-M"){b="分享参数p或m不能为空!"}f{b="1d 1v p 1y m 1e X 1u 1z!"}h={v:$3.5.B.U,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}I}S $3.5.T.46:{6(e==$3.5.e.2j||e==$3.5.e.2i){7 b=4;6(8.J=="N-M"){b="微信文件分享不支持分享到朋友圈或收藏!"}f{b="2j 1y 2i 45 44 43!"}h={v:$3.5.B.2X,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}f{k=$3.5.s(e,l,"k");z=$3.5.s(e,l,"z");p=$3.5.s(e,l,"Q");6(p==4){A=$3.5.s(e,l,"A");6(1b.q.1a.19(A)==="[18 17]"){p=A[0]}}7 1Y=$3.5.s(e,l,"31");7 1X=$3.5.s(e,l,"30");6(p!=4&&1Y!=4&&1X!=4){8.1n([k],d(9){k=9.O[0];$3.H.42(g.D(),F,z,k,p,1Y,1X,d(9){6(9.v!=4){6(c!=4){c($3.5.o.x,9,4,y)}}f{7 P={1f:e,F:F,k:k,z:z,Q:p,31:1Y,30:1X};11[u]={K:P,V:y}}})})}f{7 b=4;6(8.J=="N-M"){b="分享参数p、2Z、2Y不能为空"}f{b="41 1v p、2Z、2Y 1e X 1u!"}h={v:$3.5.B.U,b:b};6(c!=4){c($3.5.o.x,h,4,y)}}}I}2h:{7 b=4;6(8.J=="N-M"){b="不支持的分享类型["+G+"]"}f{b="40 1d G ["+G+"]"}h={v:$3.5.B.2X,b:b};6(c!=4){c($3.5.o.x,h,4,y)}I}}};r.q.2W=d(u,1t,10){7 1W=4;6(10!=4&&10["1N"]!=4&&1b.q.1a.19(10["1N"])==="[18 17]"){1W=10["1N"]}f 6(8.1M!=4){7 2V=8.1M;1W=2V.3Z(",")}7 g=8;$3.H.3Y(8.D(),u,1W,d(9){g.1V(u,9)})};r.q.2U=d(u,1L){7 g=8;7 R={1l:1L["1T"],2e:1L["2g"],2R:(2Q 2P).2O()+1L["3X"]*3W,2b:1L,G:$3.5.3V.3U};7 w={2f:$3.5.e.r,R:R};8.1U(w,d(){g.2T(4,d(1m,9){6(1m==$3.5.o.1s){9["R"]=w["R"];w=9;g.1U(w,4)}$3.L.Z(u,$3.5.o.1s,w)})})};r.q.1U=d(w,c){8.1q=w;7 1r=8.2d();$3.H.2S("2M",8.1q,1c,1r,d(9){6(c!=4){c()}})};r.q.3T=d(w){C w.R!=4&&w.R.2e!=4&&w.R.2R>(2Q 2P).2O()};r.q.1K=d(c){6(8.1q!=4){6(c){c(8.1q)}}f{7 g=8;7 1r=8.2d();$3.H.2N("2M",1c,1r,d(9){g.1q=9!=4?9.1J:4;6(c){c(g.1q)}})}};r.q.2c=d(w,14){6(w!=4&&14!=4){w["2b"]=14;w["1l"]=14["1T"];w["2L"]=14["2L"];w["3S"]=14["3R"];7 1I=2;6(14["2K"]==1){1I=0}f 6(14["2K"]==2){1I=1}w["1I"]=1I}};r.q.2J=d(26){6(26!=4){$3.H.2a("1H.3.29.28.27",d(9){6(9.O){$3.L.3Q(26)}})}};r.q.2I=d(l,e){7 G=$3.5.T.2H;7 z=$3.5.s(e,l,"z");7 p=$3.5.s(e,l,"Q");7 m=$3.5.s(e,l,"m");7 A=$3.5.s(e,l,"A");7 1E=$3.5.s(e,l,"2G");7 1F=$3.5.s(e,l,"25");7 1p=$3.5.s(e,l,"1G");6((p!=4||1b.q.1a.19(A)==="[18 17]")&&m!=4){6(1F!=4){G=$3.5.T.2F}f 6(1p!=4){G=$3.5.T.2E}f{G=$3.5.T.2D}}f 6(1b.q.1a.19(A)==="[18 17]"||1E!=4){G=$3.5.T.2C}C G};$3.5.3P($3.5.e.r,r);',62,308,'|||mob|null|shareSDK|if|var|this|data||error_message|callback|function|platformType|else|self|error|||text|parameters|url||responseState|thumbImage|prototype|WeChat|getShareParam||sessionId|error_code|user|Fail|userData|title|images|errorCode|return|appID|name|scene|type|ext|break|_currentLanguage|content|native|Hans|zh|result|shareParams|thumb_image|credential|case|contentType|APIRequestFail|user_data|WeChatAppInfoKeys|not|resultData|ssdk_authStateChanged|settings|WeChatShareContentSet|_appInfo|params|rawData|image|appInfo|Array|object|apply|toString|Object|false|share|can|platform|hasReady|Scheme|URL|utils|response|uid|state|_convertUrl|Platform|musicUrl|_currentUser|domain|Success|urlScheme|be|param|appSecret|code|or|nil|true|AppSecret|AppId|callbackUrl|emoticonData|extInfo|audio_url|com|gender|value|_getCurrentUser|credentialRawData|_authScopes|scopes|switch|WeChatScene|typeObj|urls|curApps|openid|_setCurrentUser|_authHandler|scope|sourceFile|fileExtension|InvaildPlatform|WXApi|UnsupportFeature|set|flags|query|ext_info|appId|wechat|connector|sharesdk|isPluginRegisted|raw_data|_updateUserInfo|cacheDomain|token|platform_type|access_token|default|WeChatFav|WeChatTimeline|WeChatSession|Session|warning|log|schema|CFBundleURLSchemes|length|CFBundleURLTypes|_checkUrlScheme|objectToJsonString|appKey|errcode|status_code|contents|convertUrlEnabled|Invalid|ssdk_shareStateChanged|ConvertUrl|Image|WebPage|Audio|App|emoticon_data|Text|_getShareType|_setupApp|sex|nickname|currentUser|getCacheData|getTime|Date|new|expired|setCacheData|getUserInfo|_succeedAuthorize|scopesStr|_ssoAuthorize|UnsupportContentType|sourceFileData|sourceFileExtension|source_file|source_extension|fileData|emoticon|Auto|Fav|Timeline|_share|for|_canShare|_canAuthorize|trim|_checkAppInfoAvailable|Scopes|_checkAuthScopes|Cancel|response_data|base64Decode|jsonStringToObject|200|GET|sns|qq|weixin|api|https|ssdk_callHTTPApi|UserUnauth|headers|method|callApi|push|indexOf|annotation|sourceApplication|configuration|find|UnsetURLScheme|after|again|try|Please|did|because|isMultitaskingSupported|support|do|authorize|currentApp|SSDK|_type|registerPlatformClass|ssdk_plugin_wechat_setup|headimgurl|icon|_isUserAvaliable|OAuth2|credentialType|1e3|expires_in|ssdk_wechatAuth|split|unsupported|Share|ssdk_wechatShareFile|file|sharing|unsupport|File|ssdk_wechatShareVideo|Video|ssdk_wechatShareAudio|ssdk_wechatShareApp|file_data|ssdk_wechatShareWebpage|ssdk_wechatShareImage|ssdk_wechatShareText|Unknown|wechat_scene|warningLog|getAppConfig|ssdk_plugin_wechat_cancel_auth|oauth2|authorization_code|grant_type|secret|appid|convertUrl|authStateChanged|createUserByRawData|Authorization|42001|delete|ssdk_wechatHandleShareCalback|handleShareCallback|ssdk_wechatHandleSSOCalback|handleSSOCallback|Can|list|friend|getting|size|cursor|getFriends|friends|adding|addFriend|cancelAuthorize|userinfo|to|Unable|snsapi_userinfo|isSupportAuth|plat_|saveConfig|arguments|setAppInfo|preferredLanguageLocalize|auth_scopes|covert_url|app_secret|app_id'.split('|'),0,{})) diff --git a/Support/Required/ShareSDK.bundle/en.lproj/.svn/all-wcprops b/Support/Required/ShareSDK.bundle/en.lproj/.svn/all-wcprops new file mode 100644 index 0000000..621089a --- /dev/null +++ b/Support/Required/ShareSDK.bundle/en.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 166 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDK.bundle/en.lproj +END +ShareSDK.strings +K 25 +svn:wc:ra_dav:version-url +V 183 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDK.bundle/en.lproj/ShareSDK.strings +END diff --git a/Support/Required/ShareSDK.bundle/en.lproj/.svn/entries b/Support/Required/ShareSDK.bundle/en.lproj/.svn/entries new file mode 100644 index 0000000..b1fbbb8 --- /dev/null +++ b/Support/Required/ShareSDK.bundle/en.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +588650 +https://pengjun@svn.yy.com/yy-music/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDK.bundle/en.lproj +https://pengjun@svn.yy.com/yy-music + + + +2016-12-16T08:04:00.403474Z +520872 +lanfanglong + + + + + + + + + + + + + + +ea1c70d9-e22e-4a8d-9299-3be15357ce30 + +ShareSDK.strings +file + + + + +2017-06-02T11:04:50.000000Z +5dbe33d4fcc4bfbaeffc218b56773e9d +2016-12-16T08:04:00.403474Z +520872 +lanfanglong +has-props + + + + + + + + + + + + + + + + + + + + +1005 + diff --git a/Support/Required/ShareSDK.bundle/en.lproj/.svn/prop-base/ShareSDK.strings.svn-base b/Support/Required/ShareSDK.bundle/en.lproj/.svn/prop-base/ShareSDK.strings.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/ShareSDK.bundle/en.lproj/.svn/prop-base/ShareSDK.strings.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/ShareSDK.bundle/en.lproj/.svn/text-base/ShareSDK.strings.svn-base b/Support/Required/ShareSDK.bundle/en.lproj/.svn/text-base/ShareSDK.strings.svn-base new file mode 100644 index 0000000..7f2f275 --- /dev/null +++ b/Support/Required/ShareSDK.bundle/en.lproj/.svn/text-base/ShareSDK.strings.svn-base @@ -0,0 +1,26 @@ +/* + ShareSDKLocalizable.strings + AppgoFramework + + + Created by ShareSDK.cn on 13-1-14. + 官网地址:http://www.ShareSDK.cn + 技术支持邮箱:support@sharesdk.cn + 官方微信:ShareSDK (如果发布新版本的话,我们将会第一时间通过微信将版本更新内容推送给您。如果使用过程中有任何问题,也可以通过微信与我们取得联系,我们将会在24小时内给予回复) + 商务QQ:4006852216 + Copyright (c) 2013年 ShareSDK.cn. All rights reserved. + +*/ + +"AUTH_VIEW_TITLE" = "Authorize"; +"AUTH_VIEW_CANCEL_BUTTON" = "Cancel"; +"AUTH_VIEW_SIGN_IN" = "Sign In"; +"AUTH_VIEW_ACCOUNT" = "Account(e.g. name@example.com)"; +"AUTH_VIEW_PASS" = "Password"; +"AUTH_VIEW_ALERT_TITLE" = "Tips"; +"AUTH_VIEW_ALERT_CANCEL_BUTTON" = "I known"; +"AUTH_VIEW_INPUT_ACCOUNT" = "Input your account"; +"AUTH_VIEW_INPUT_PASSWORD" = "Input your password"; +"AUTH_VIEW_UNAUTHORIZED" = "Account or password is not correct"; +"SHARE_VIEW_DONE" = "Done"; +"SHARE_VIEW_TITLE" = "Share"; \ No newline at end of file diff --git a/Support/Required/ShareSDK.bundle/en.lproj/ShareSDK.strings b/Support/Required/ShareSDK.bundle/en.lproj/ShareSDK.strings new file mode 100755 index 0000000..7f2f275 --- /dev/null +++ b/Support/Required/ShareSDK.bundle/en.lproj/ShareSDK.strings @@ -0,0 +1,26 @@ +/* + ShareSDKLocalizable.strings + AppgoFramework + + + Created by ShareSDK.cn on 13-1-14. + 官网地址:http://www.ShareSDK.cn + 技术支持邮箱:support@sharesdk.cn + 官方微信:ShareSDK (如果发布新版本的话,我们将会第一时间通过微信将版本更新内容推送给您。如果使用过程中有任何问题,也可以通过微信与我们取得联系,我们将会在24小时内给予回复) + 商务QQ:4006852216 + Copyright (c) 2013年 ShareSDK.cn. All rights reserved. + +*/ + +"AUTH_VIEW_TITLE" = "Authorize"; +"AUTH_VIEW_CANCEL_BUTTON" = "Cancel"; +"AUTH_VIEW_SIGN_IN" = "Sign In"; +"AUTH_VIEW_ACCOUNT" = "Account(e.g. name@example.com)"; +"AUTH_VIEW_PASS" = "Password"; +"AUTH_VIEW_ALERT_TITLE" = "Tips"; +"AUTH_VIEW_ALERT_CANCEL_BUTTON" = "I known"; +"AUTH_VIEW_INPUT_ACCOUNT" = "Input your account"; +"AUTH_VIEW_INPUT_PASSWORD" = "Input your password"; +"AUTH_VIEW_UNAUTHORIZED" = "Account or password is not correct"; +"SHARE_VIEW_DONE" = "Done"; +"SHARE_VIEW_TITLE" = "Share"; \ No newline at end of file diff --git a/Support/Required/ShareSDK.bundle/zh-Hans.lproj/.svn/all-wcprops b/Support/Required/ShareSDK.bundle/zh-Hans.lproj/.svn/all-wcprops new file mode 100644 index 0000000..7cf981e --- /dev/null +++ b/Support/Required/ShareSDK.bundle/zh-Hans.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 171 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDK.bundle/zh-Hans.lproj +END +ShareSDK.strings +K 25 +svn:wc:ra_dav:version-url +V 188 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDK.bundle/zh-Hans.lproj/ShareSDK.strings +END diff --git a/Support/Required/ShareSDK.bundle/zh-Hans.lproj/.svn/entries b/Support/Required/ShareSDK.bundle/zh-Hans.lproj/.svn/entries new file mode 100644 index 0000000..4a65f40 --- /dev/null +++ b/Support/Required/ShareSDK.bundle/zh-Hans.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +588650 +https://pengjun@svn.yy.com/yy-music/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDK.bundle/zh-Hans.lproj +https://pengjun@svn.yy.com/yy-music + + + +2016-12-16T08:04:00.403474Z +520872 +lanfanglong + + + + + + + + + + + + + + +ea1c70d9-e22e-4a8d-9299-3be15357ce30 + +ShareSDK.strings +file + + + + +2017-06-02T11:04:50.000000Z +3835980c4e4579cee95da1953efb216a +2016-12-16T08:04:00.403474Z +520872 +lanfanglong +has-props + + + + + + + + + + + + + + + + + + + + +1001 + diff --git a/Support/Required/ShareSDK.bundle/zh-Hans.lproj/.svn/prop-base/ShareSDK.strings.svn-base b/Support/Required/ShareSDK.bundle/zh-Hans.lproj/.svn/prop-base/ShareSDK.strings.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/Support/Required/ShareSDK.bundle/zh-Hans.lproj/.svn/prop-base/ShareSDK.strings.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/Support/Required/ShareSDK.bundle/zh-Hans.lproj/.svn/text-base/ShareSDK.strings.svn-base b/Support/Required/ShareSDK.bundle/zh-Hans.lproj/.svn/text-base/ShareSDK.strings.svn-base new file mode 100644 index 0000000..1506d59 --- /dev/null +++ b/Support/Required/ShareSDK.bundle/zh-Hans.lproj/.svn/text-base/ShareSDK.strings.svn-base @@ -0,0 +1,26 @@ +/* + ShareSDKLocalizable.strings + AppgoFramework + + + Created by ShareSDK.cn on 13-1-14. + 官网地址:http://www.mob.com + 技术支持邮箱:support@sharesdk.cn + 官方微信:ShareSDK (如果发布新版本的话,我们将会第一时间通过微信将版本更新内容推送给您。如果使用过程中有任何问题,也可以通过微信与我们取得联系,我们将会在24小时内给予回复) + 商务QQ:4006852216 + Copyright (c) 2013年 ShareSDK.cn. All rights reserved. + +*/ + +"AUTH_VIEW_TITLE" = "用户授权"; +"AUTH_VIEW_CANCEL_BUTTON" = "取消"; +"AUTH_VIEW_SIGN_IN" = "登录"; +"AUTH_VIEW_ACCOUNT" = "帐号,如name@example.com"; +"AUTH_VIEW_PASS" = "密码"; +"AUTH_VIEW_ALERT_TITLE" = "提示"; +"AUTH_VIEW_ALERT_CANCEL_BUTTON" = "知道了"; +"AUTH_VIEW_INPUT_ACCOUNT" = "请输入登录帐号!"; +"AUTH_VIEW_INPUT_PASSWORD" = "请输入登录密码!"; +"AUTH_VIEW_UNAUTHORIZED" = "用户名或密码错误"; +"SHARE_VIEW_DONE" = "完成"; +"SHARE_VIEW_TITLE" = "分享"; \ No newline at end of file diff --git a/Support/Required/ShareSDK.bundle/zh-Hans.lproj/ShareSDK.strings b/Support/Required/ShareSDK.bundle/zh-Hans.lproj/ShareSDK.strings new file mode 100755 index 0000000..1506d59 --- /dev/null +++ b/Support/Required/ShareSDK.bundle/zh-Hans.lproj/ShareSDK.strings @@ -0,0 +1,26 @@ +/* + ShareSDKLocalizable.strings + AppgoFramework + + + Created by ShareSDK.cn on 13-1-14. + 官网地址:http://www.mob.com + 技术支持邮箱:support@sharesdk.cn + 官方微信:ShareSDK (如果发布新版本的话,我们将会第一时间通过微信将版本更新内容推送给您。如果使用过程中有任何问题,也可以通过微信与我们取得联系,我们将会在24小时内给予回复) + 商务QQ:4006852216 + Copyright (c) 2013年 ShareSDK.cn. All rights reserved. + +*/ + +"AUTH_VIEW_TITLE" = "用户授权"; +"AUTH_VIEW_CANCEL_BUTTON" = "取消"; +"AUTH_VIEW_SIGN_IN" = "登录"; +"AUTH_VIEW_ACCOUNT" = "帐号,如name@example.com"; +"AUTH_VIEW_PASS" = "密码"; +"AUTH_VIEW_ALERT_TITLE" = "提示"; +"AUTH_VIEW_ALERT_CANCEL_BUTTON" = "知道了"; +"AUTH_VIEW_INPUT_ACCOUNT" = "请输入登录帐号!"; +"AUTH_VIEW_INPUT_PASSWORD" = "请输入登录密码!"; +"AUTH_VIEW_UNAUTHORIZED" = "用户名或密码错误"; +"SHARE_VIEW_DONE" = "完成"; +"SHARE_VIEW_TITLE" = "分享"; \ No newline at end of file diff --git a/Support/Required/ShareSDKConnector.framework/.svn/all-wcprops b/Support/Required/ShareSDKConnector.framework/.svn/all-wcprops new file mode 100644 index 0000000..979dddd --- /dev/null +++ b/Support/Required/ShareSDKConnector.framework/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 169 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDKConnector.framework +END +ShareSDKConnector +K 25 +svn:wc:ra_dav:version-url +V 187 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDKConnector.framework/ShareSDKConnector +END +Info.plist +K 25 +svn:wc:ra_dav:version-url +V 180 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDKConnector.framework/Info.plist +END diff --git a/Support/Required/ShareSDKConnector.framework/.svn/entries b/Support/Required/ShareSDKConnector.framework/.svn/entries new file mode 100644 index 0000000..a6497be --- /dev/null +++ b/Support/Required/ShareSDKConnector.framework/.svn/entries @@ -0,0 +1,99 @@ +10 + +dir +588650 +https://pengjun@svn.yy.com/yy-music/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDKConnector.framework +https://pengjun@svn.yy.com/yy-music + + + +2016-12-22T03:39:25.744704Z +524017 +wubangmin + + + + + + + + + + + + + + +ea1c70d9-e22e-4a8d-9299-3be15357ce30 + +ShareSDKConnector +file + + + + +2017-06-02T11:04:50.000000Z +108e98147046314ebdfdc105c405cbaa +2016-12-16T08:04:00.403474Z +520872 +lanfanglong +has-props + + + + + + + + + + + + + + + + + + + + +218780 + +Info.plist +file + + + + +2017-06-02T11:04:50.000000Z +62190a5226ca41c9784877df619763d5 +2016-12-16T08:04:00.403474Z +520872 +lanfanglong +has-props + + + + + + + + + + + + + + + + + + + + +886 + +Headers +dir + diff --git a/Support/Required/ShareSDKConnector.framework/.svn/prop-base/Info.plist.svn-base b/Support/Required/ShareSDKConnector.framework/.svn/prop-base/Info.plist.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Support/Required/ShareSDKConnector.framework/.svn/prop-base/Info.plist.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Support/Required/ShareSDKConnector.framework/.svn/prop-base/ShareSDKConnector.svn-base b/Support/Required/ShareSDKConnector.framework/.svn/prop-base/ShareSDKConnector.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Support/Required/ShareSDKConnector.framework/.svn/prop-base/ShareSDKConnector.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Support/Required/ShareSDKConnector.framework/.svn/text-base/Info.plist.svn-base b/Support/Required/ShareSDKConnector.framework/.svn/text-base/Info.plist.svn-base new file mode 100644 index 0000000..b6c894a Binary files /dev/null and b/Support/Required/ShareSDKConnector.framework/.svn/text-base/Info.plist.svn-base differ diff --git a/Support/Required/ShareSDKConnector.framework/.svn/text-base/ShareSDKConnector.svn-base b/Support/Required/ShareSDKConnector.framework/.svn/text-base/ShareSDKConnector.svn-base new file mode 100644 index 0000000..3572f15 Binary files /dev/null and b/Support/Required/ShareSDKConnector.framework/.svn/text-base/ShareSDKConnector.svn-base differ diff --git a/Support/Required/ShareSDKConnector.framework/Headers/.svn/all-wcprops b/Support/Required/ShareSDKConnector.framework/Headers/.svn/all-wcprops new file mode 100644 index 0000000..8ead4eb --- /dev/null +++ b/Support/Required/ShareSDKConnector.framework/Headers/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 177 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDKConnector.framework/Headers +END +ShareSDKConnector.h +K 25 +svn:wc:ra_dav:version-url +V 197 +/yy-music/!svn/ver/582981/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDKConnector.framework/Headers/ShareSDKConnector.h +END diff --git a/Support/Required/ShareSDKConnector.framework/Headers/.svn/entries b/Support/Required/ShareSDKConnector.framework/Headers/.svn/entries new file mode 100644 index 0000000..fa13643 --- /dev/null +++ b/Support/Required/ShareSDKConnector.framework/Headers/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +588650 +https://pengjun@svn.yy.com/yy-music/mobile/entmobile/ios/branches/entmobile-ios_module_reconstruction_feature/YYMobile/Model/ShareSDK3/Support/Required/ShareSDKConnector.framework/Headers +https://pengjun@svn.yy.com/yy-music + + + +2016-12-16T08:04:00.403474Z +520872 +lanfanglong + + + + + + + + + + + + + + +ea1c70d9-e22e-4a8d-9299-3be15357ce30 + +ShareSDKConnector.h +file + + + + +2017-06-02T11:04:50.000000Z +5d8b6160b5f6460f208974ead9b09537 +2016-12-16T08:04:00.403474Z +520872 +lanfanglong + + + + + + + + + + + + + + + + + + + + + +3567 + diff --git a/Support/Required/ShareSDKConnector.framework/Headers/.svn/text-base/ShareSDKConnector.h.svn-base b/Support/Required/ShareSDKConnector.framework/Headers/.svn/text-base/ShareSDKConnector.h.svn-base new file mode 100644 index 0000000..3e570c6 --- /dev/null +++ b/Support/Required/ShareSDKConnector.framework/Headers/.svn/text-base/ShareSDKConnector.h.svn-base @@ -0,0 +1,90 @@ +// +// ShareSDKConnector.h +// ShareSDKConnector +// +// Created by fenghj on 15/6/2. +// Copyright (c) 2015年 mob. All rights reserved. +// + +#import +#import + +/** + * ShareSDK连接器 + */ +@interface ShareSDKConnector : NSObject + +/** + * 链接微信API已供ShareSDK可以正常使用微信的相关功能(授权、分享) + * + * @param weChatClass 微信SDK中的类型,应先导入libWXApi.a,再传入[WXApi class]到此参数。注:此参数不能为nil,否则会导致授权、分享无法正常使用 + * @param delegate 对于需要获取微信回复或请求时传入该委托对象。该对象必须实现WXApiDelegate协议中的方法。 + */ ++ (void)connectWeChat:(Class)wxApiClass; ++ (void)connectWeChat:(Class)wxApiClass delegate:(id)delegate; + +/** + * 连接微博API以供ShareSDK可以使用微博客户端来分享内容,不调用此方法也不会影响应用内分享、授权等相关功能。 + * + * @param weiboClass 微博SDK中的类型,应先导入libWeiboSDK.a,再传入[WeiboSDK class]到此参数. + */ ++ (void)connectWeibo:(Class)weiboSDKClass; + +/** + * 连接QQAPI以供ShareSDK可以正常使用QQ或者QQ空间客户端来授权或者分享内容。 + * + * @param qqApiInterfaceClass QQSDK中的类型,应先导入TencentOpenAPI.framework,再传入[QQApiInterface class]到此参数。 + * @param tencentOAuthClass QQSDK中的类型,应先导入TencentOpenAPI.framework,再传入[TencentOAuth class]到此参数。 + */ ++ (void)connectQQ:(Class)qqApiInterfaceClass tencentOAuthClass:(Class)tencentOAuthClass; + +/** + * 连接人人网SDK以供ShareSDK可以正常使用人人网客户端进行SSO授权。 + * + * @param rennClientClass 人人网SDK中的类型,应先导入RennSDK.framework,再传入[RennClient class]到此参数。 + */ ++ (void)connectRenren:(Class)rennClientClass; + +/** + * 链接支付宝好友以供ShareSDK可以正常使用支付宝进行分享 + * + * @param apOpenApiClass 支付宝好友SDK中的类型,应先导入libAPOpenSdk.a,再将[APOpenApi class]传入到此参数。注:此参数不能为nil,否则会导致无法正常分享。 + */ ++ (void)connectAliPaySocial:(Class)apOpenApiClass; + +/** + * 链接KaKao以供ShareSDK可以正常使用KaKao进行分享 + * + * @param koSessionClass KaKao SDK中的类型,应先导入KakaoOpenSDK.framework,再将[KOSession class]传入到此参数。 + */ ++ (void)connectKaKao:(Class)koSessionClass; + +/** + * 链接易信以供ShareSDK可以正常使用易信的相关功能(包括授权、分享) + * + * @param yxApiClass 易信SDK中的类型,应先导入YXApi.h,再将[YXApi class]传入到参数中。 + */ ++ (void)connectYiXin:(Class)yxApiClass; + +/** + * 链接Facebook Messenger以供ShareSDK可以正常使用Facebook Messenger的相关功能 + * + * @param fbmApiClass Facebook Messenger SDK中的类型,应先导入FBSDKMessengerShareKit.framework,再将[FBSDKMessengerSharer class]传入到参数中。 + */ ++ (void)connectFacebookMessenger:(Class)fbmApiClass; + +/** + * 链接钉钉以供ShareSDK可以正常使用钉钉进行分享 + * + * @param dtOpenApiClass 钉钉 SDK中的类型,应先导入DTShareKit.framework,再将[DTOpenAPI class]传入到此参数。 + */ ++ (void)connectDingTalk:(Class)dtOpenApiClass; + +/** + * 链接Line以供ShareSDK可以正常使用Line进行分享 + * + * @param lineSDKClass Line SDK中的类型,应先导入LineAdapter.framework,再将[LineSDK class]传入到此参数。 + */ ++ (void)connectLine:(Class)lineSDKClass; + +@end diff --git a/Support/Required/ShareSDKConnector.framework/Headers/ShareSDKConnector.h b/Support/Required/ShareSDKConnector.framework/Headers/ShareSDKConnector.h new file mode 100644 index 0000000..3e570c6 --- /dev/null +++ b/Support/Required/ShareSDKConnector.framework/Headers/ShareSDKConnector.h @@ -0,0 +1,90 @@ +// +// ShareSDKConnector.h +// ShareSDKConnector +// +// Created by fenghj on 15/6/2. +// Copyright (c) 2015年 mob. All rights reserved. +// + +#import +#import + +/** + * ShareSDK连接器 + */ +@interface ShareSDKConnector : NSObject + +/** + * 链接微信API已供ShareSDK可以正常使用微信的相关功能(授权、分享) + * + * @param weChatClass 微信SDK中的类型,应先导入libWXApi.a,再传入[WXApi class]到此参数。注:此参数不能为nil,否则会导致授权、分享无法正常使用 + * @param delegate 对于需要获取微信回复或请求时传入该委托对象。该对象必须实现WXApiDelegate协议中的方法。 + */ ++ (void)connectWeChat:(Class)wxApiClass; ++ (void)connectWeChat:(Class)wxApiClass delegate:(id)delegate; + +/** + * 连接微博API以供ShareSDK可以使用微博客户端来分享内容,不调用此方法也不会影响应用内分享、授权等相关功能。 + * + * @param weiboClass 微博SDK中的类型,应先导入libWeiboSDK.a,再传入[WeiboSDK class]到此参数. + */ ++ (void)connectWeibo:(Class)weiboSDKClass; + +/** + * 连接QQAPI以供ShareSDK可以正常使用QQ或者QQ空间客户端来授权或者分享内容。 + * + * @param qqApiInterfaceClass QQSDK中的类型,应先导入TencentOpenAPI.framework,再传入[QQApiInterface class]到此参数。 + * @param tencentOAuthClass QQSDK中的类型,应先导入TencentOpenAPI.framework,再传入[TencentOAuth class]到此参数。 + */ ++ (void)connectQQ:(Class)qqApiInterfaceClass tencentOAuthClass:(Class)tencentOAuthClass; + +/** + * 连接人人网SDK以供ShareSDK可以正常使用人人网客户端进行SSO授权。 + * + * @param rennClientClass 人人网SDK中的类型,应先导入RennSDK.framework,再传入[RennClient class]到此参数。 + */ ++ (void)connectRenren:(Class)rennClientClass; + +/** + * 链接支付宝好友以供ShareSDK可以正常使用支付宝进行分享 + * + * @param apOpenApiClass 支付宝好友SDK中的类型,应先导入libAPOpenSdk.a,再将[APOpenApi class]传入到此参数。注:此参数不能为nil,否则会导致无法正常分享。 + */ ++ (void)connectAliPaySocial:(Class)apOpenApiClass; + +/** + * 链接KaKao以供ShareSDK可以正常使用KaKao进行分享 + * + * @param koSessionClass KaKao SDK中的类型,应先导入KakaoOpenSDK.framework,再将[KOSession class]传入到此参数。 + */ ++ (void)connectKaKao:(Class)koSessionClass; + +/** + * 链接易信以供ShareSDK可以正常使用易信的相关功能(包括授权、分享) + * + * @param yxApiClass 易信SDK中的类型,应先导入YXApi.h,再将[YXApi class]传入到参数中。 + */ ++ (void)connectYiXin:(Class)yxApiClass; + +/** + * 链接Facebook Messenger以供ShareSDK可以正常使用Facebook Messenger的相关功能 + * + * @param fbmApiClass Facebook Messenger SDK中的类型,应先导入FBSDKMessengerShareKit.framework,再将[FBSDKMessengerSharer class]传入到参数中。 + */ ++ (void)connectFacebookMessenger:(Class)fbmApiClass; + +/** + * 链接钉钉以供ShareSDK可以正常使用钉钉进行分享 + * + * @param dtOpenApiClass 钉钉 SDK中的类型,应先导入DTShareKit.framework,再将[DTOpenAPI class]传入到此参数。 + */ ++ (void)connectDingTalk:(Class)dtOpenApiClass; + +/** + * 链接Line以供ShareSDK可以正常使用Line进行分享 + * + * @param lineSDKClass Line SDK中的类型,应先导入LineAdapter.framework,再将[LineSDK class]传入到此参数。 + */ ++ (void)connectLine:(Class)lineSDKClass; + +@end diff --git a/Support/Required/ShareSDKConnector.framework/Info.plist b/Support/Required/ShareSDKConnector.framework/Info.plist new file mode 100644 index 0000000..b6c894a Binary files /dev/null and b/Support/Required/ShareSDKConnector.framework/Info.plist differ diff --git a/Support/Required/ShareSDKConnector.framework/ShareSDKConnector b/Support/Required/ShareSDKConnector.framework/ShareSDKConnector new file mode 100644 index 0000000..3572f15 Binary files /dev/null and b/Support/Required/ShareSDKConnector.framework/ShareSDKConnector differ