NSMutableDictionary+SSDKShare.h 38 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737
  1. //
  2. // NSMutableDictionary+SSDKShare.h
  3. // ShareSDK
  4. //
  5. // Created by 冯 鸿杰 on 15/2/9.
  6. // Copyright (c) 2015年 掌淘科技. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. #import "SSDKTypeDefine.h"
  10. #import "SSDKImage.h"
  11. #import "SSDKData.h"
  12. /**
  13. * 分享参数构造相关
  14. */
  15. @interface NSMutableDictionary (SSDKShare)
  16. /**
  17. * 设置分享标识
  18. *
  19. * @param flags 标识数组,元素为NSString。
  20. */
  21. - (void)SSDKSetShareFlags:(NSArray *)flags;
  22. /**
  23. * 使用客户端分享
  24. */
  25. - (void)SSDKEnableUseClientShare;
  26. /**
  27. * 设置分享参数
  28. *
  29. * @param text 文本
  30. * @param images 图片集合,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。如: @"http://www.mob.com/images/logo_black.png" 或 @[@"http://www.mob.com/images/logo_black.png"]
  31. * @param url 网页路径/应用路径
  32. * @param title 标题
  33. * @param type 分享类型
  34. */
  35. - (void)SSDKSetupShareParamsByText:(NSString *)text
  36. images:(id)images
  37. url:(NSURL *)url
  38. title:(NSString *)title
  39. type:(SSDKContentType)type;
  40. /**
  41. * 设置新浪微博分享参数
  42. *
  43. * @param text 文本
  44. * @param title 标题
  45. * @param image 图片对象,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage
  46. * @param url 分享链接
  47. * @param latitude 纬度
  48. * @param longitude 经度
  49. * @param objectID 对象ID,标识系统内内容唯一性,应传入系统中分享内容的唯一标识,没有时可以传入nil
  50. * @param type 分享类型,仅支持Text、Image、WebPage(客户端分享时)类型
  51. */
  52. - (void)SSDKSetupSinaWeiboShareParamsByText:(NSString *)text
  53. title:(NSString *)title
  54. image:(id)image
  55. url:(NSURL *)url
  56. latitude:(double)latitude
  57. longitude:(double)longitude
  58. objectID:(NSString *)objectID
  59. type:(SSDKContentType)type;
  60. /**
  61. * 设置腾讯微博分享参数
  62. *
  63. * @param text 文本
  64. * @param images 分享图片列表,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。如: @"http://www.mob.com/images/logo_black.png" 或 @[@"http://www.mob.com/images/logo_black.png"]
  65. * @param latitude 纬度
  66. * @param longitude 经度
  67. * @param type 分享类型, 仅支持Text、Image类型
  68. */
  69. - (void)SSDKSetupTencentWeiboShareParamsByText:(NSString *)text
  70. images:(id)images
  71. latitude:(double)latitude
  72. longitude:(double)longitude
  73. type:(SSDKContentType)type;
  74. /**
  75. * 设置微信分享参数
  76. *
  77. * @param text 文本
  78. * @param title 标题
  79. * @param url 分享链接
  80. * @param thumbImage 缩略图,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage
  81. * @param image 图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage
  82. * @param musicFileURL 音乐文件链接地址
  83. * @param extInfo 扩展信息
  84. * @param fileData 文件数据,可以为NSData、UIImage、NSString、NSURL(文件路径)、SSDKData、SSDKImage
  85. * @param emoticonData 表情数据,可以为NSData、UIImage、NSURL(文件路径)、SSDKData、SSDKImage
  86. * @param type 分享类型,支持SSDKContentTypeText、SSDKContentTypeImage、SSDKContentTypeWebPage、SSDKContentTypeApp、SSDKContentTypeAudio和SSDKContentTypeVideo
  87. * @param platformType 平台子类型,只能传入SSDKPlatformSubTypeWechatSession、SSDKPlatformSubTypeWechatTimeline和SSDKPlatformSubTypeWechatFav其中一个
  88. *
  89. * 分享文本时:
  90. * 设置type为SSDKContentTypeText, 并填入text参数
  91. *
  92. * 分享图片时:
  93. * 设置type为SSDKContentTypeImage, 非gif图片时:填入title和image参数,如果为gif图片则需要填写title和emoticonData参数
  94. *
  95. * 分享网页时:
  96. * 设置type为SSDKContentTypeWebPage, 并设置text、title、url以及thumbImage参数,如果尚未设置thumbImage则会从image参数中读取图片并对图片进行缩放操作。
  97. *
  98. * 分享应用时:
  99. * 设置type为SSDKContentTypeApp,并设置text、title、extInfo(可选)以及fileData(可选)参数。
  100. *
  101. * 分享音乐时:
  102. * 设置type为SSDKContentTypeAudio,并设置text、title、url以及musicFileURL(可选)参数。
  103. *
  104. * 分享视频时:
  105. * 设置type为SSDKContentTypeVideo,并设置text、title、url参数
  106. */
  107. - (void)SSDKSetupWeChatParamsByText:(NSString *)text
  108. title:(NSString *)title
  109. url:(NSURL *)url
  110. thumbImage:(id)thumbImage
  111. image:(id)image
  112. musicFileURL:(NSURL *)musicFileURL
  113. extInfo:(NSString *)extInfo
  114. fileData:(id)fileData
  115. emoticonData:(id)emoticonData
  116. type:(SSDKContentType)type
  117. forPlatformSubType:(SSDKPlatformType)platformSubType;
  118. /**
  119. * 设置微信分享参数
  120. *
  121. * @param text 文本
  122. * @param title 标题
  123. * @param url 分享链接
  124. * @param thumbImage 缩略图,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage
  125. * @param image 图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage
  126. * @param musicFileURL 音乐文件链接地址
  127. * @param extInfo 扩展信息
  128. * @param fileData 文件数据,可以为NSData、UIImage、NSString、NSURL(文件路径)、SSDKData、SSDKImage
  129. * @param emoticonData 表情数据,可以为NSData、UIImage、NSURL(文件路径)、SSDKData、SSDKImage
  130. * @param sourceFileExtension 源文件后缀名
  131. * @param sourceFileData 源文件数据,可以为NSData、NSString、NSURL(文件路径)、SSDKData
  132. * @param type 分享类型,支持SSDKContentTypeText、SSDKContentTypeImage、SSDKContentTypeWebPage、SSDKContentTypeApp、SSDKContentTypeAudio和SSDKContentTypeVideo
  133. * @param platformType 平台子类型,只能传入其中一个
  134. *
  135. * 分享文本时:
  136. * 设置type为SSDKContentTypeText, 并填入text参数
  137. *
  138. * 分享图片时:
  139. * 设置type为SSDKContentTypeImage, 非gif图片时:填入title和image参数,如果为gif图片则需要填写title和emoticonData参数
  140. *
  141. * 分享网页时:
  142. * 设置type为SSDKContentTypeWebPage, 并设置text、title、url以及thumbImage参数,如果尚未设置thumbImage则会从image参数中读取图片并对图片进行缩放操作。
  143. *
  144. * 分享应用时:
  145. * 设置type为SSDKContentTypeApp,并设置text、title、extInfo(可选)以及fileData(可选)参数。
  146. *
  147. * 分享音乐时:
  148. * 设置type为SSDKContentTypeAudio,并设置text、title、url以及musicFileURL(可选)参数。
  149. *
  150. * 分享视频时:
  151. * 设置type为SSDKContentTypeVideo,并设置text、title、url参数
  152. *
  153. * 分享文件时:
  154. * 设置type为SSDKContentTypeFile(例如.mp3、.mp4、.pdf、.docx的分享),设置title、sourceFileExtension、sourceFileData,以及thumbImage参数,如果尚未设置thumbImage则会从image参数中读取图片并对图片进行缩放操作参数
  155. */
  156. - (void)SSDKSetupWeChatParamsByText:(NSString *)text
  157. title:(NSString *)title
  158. url:(NSURL *)url
  159. thumbImage:(id)thumbImage
  160. image:(id)image
  161. musicFileURL:(NSURL *)musicFileURL
  162. extInfo:(NSString *)extInfo
  163. fileData:(id)fileData
  164. emoticonData:(id)emoticonData
  165. sourceFileExtension:(NSString *)fileExtension
  166. sourceFileData:(id)sourceFileData
  167. type:(SSDKContentType)type
  168. forPlatformSubType:(SSDKPlatformType)platformSubType;
  169. /**
  170. * 设置Twitter分享参数
  171. *
  172. * @param text 分享内容
  173. * @param images 分享图片列表,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。如: @"http://www.mob.com/images/logo_black.png" 或 @[@"http://www.mob.com/images/logo_black.png"]
  174. * @param latitude 地理位置,纬度
  175. * @param longitude 地理位置,经度
  176. * @param type 分享类型,仅支持Text、Image类型
  177. */
  178. - (void)SSDKSetupTwitterParamsByText:(NSString *)text
  179. images:(id)images
  180. latitude:(double)latitude
  181. longitude:(double)longitude
  182. type:(SSDKContentType)type;
  183. /**
  184. * 设置QQ分享参数
  185. *
  186. * @param text 分享内容
  187. * @param title 分享标题
  188. * @param url 分享链接
  189. * @param thumbImage 缩略图,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage
  190. * @param image 图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage
  191. * @param type 分享类型, 仅支持Text(仅QQFriend)、Image(仅QQFriend)、WebPage、Audio、Video类型
  192. * @param platformSubType 平台子类型,只能传入SSDKPlatformSubTypeQZone或者SSDKPlatformSubTypeQQFriend其中一个
  193. */
  194. - (void)SSDKSetupQQParamsByText:(NSString *)text
  195. title:(NSString *)title
  196. url:(NSURL *)url
  197. thumbImage:(id)thumbImage
  198. image:(id)image
  199. type:(SSDKContentType)type
  200. forPlatformSubType:(SSDKPlatformType)platformSubType;
  201. /**
  202. * 设置QQ分享参数
  203. *
  204. * @param text 分享内容
  205. * @param title 分享标题
  206. * @param url 分享链接(如果分享类型为音频/视频时,应该传入音频/视频的网络URL地址)
  207. [特别说明:分享视频到QZone时,视频为网络视频,请传入视频网络URL地址;视频为本地视频的,请传入来源于手机系统相册的相关的Asset URL地址]
  208. * @param audioFlashURL 分享音频时缩略图播放源,仅平台子类型为SSDKPlatformSubTypeQQFriend,且分享类型为Audio时生效
  209. * @param videoFlashURL 分享视频时缩略图播放源,仅平台子类型为SSDKPlatformSubTypeQQFriend,且分享类型为Video时生效
  210. * @param thumbImage 缩略图,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage
  211. * @param images 图片集合,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage
  212. QQ会采用首张图片,QZone则支持图片数组
  213. * @param type 分享类型, 仅支持Text、Image、WebPage、Audio、Video类型
  214. * @param platformSubType 平台子类型,只能传入SSDKPlatformSubTypeQZone或者SSDKPlatformSubTypeQQFriend其中一个
  215. */
  216. - (void)SSDKSetupQQParamsByText:(NSString *)text
  217. title:(NSString *)title
  218. url:(NSURL *)url
  219. audioFlashURL:(NSURL *)audioFlashURL
  220. videoFlashURL:(NSURL *)videoFlashURL
  221. thumbImage:(id)thumbImage
  222. images:(id)images
  223. type:(SSDKContentType)type
  224. forPlatformSubType:(SSDKPlatformType)platformSubType;
  225. /**
  226. * 设置Facebook分享参数
  227. *
  228. * @param text 分享内容
  229. * @param image 图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage
  230. * @param type 分享类型,仅支持Text、Image类型
  231. */
  232. - (void)SSDKSetupFacebookParamsByText:(NSString *)text
  233. image:(id)image
  234. type:(SSDKContentType)type;
  235. /**
  236. * 设置Facebook分享参数
  237. *
  238. * @param text 分享内容(注意:当分享类型为WebPage时会作为链接描述)
  239. * @param image 图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage (注意:在分享类型为WegPage时,仅网络图片有效;若不传,FB会自动根据分享的链接URL寻找)
  240. * @param url 分享链接(注意:仅当分享类型为WebPage时生效)
  241. [如果分享的连接是AppStore/GooglePlay/Facebook个人/公共主页,所对应的图片,标题,描述等参数可能不会生效,而实际生效的是FB通过爬虫网络根据连接搜刮而来的信息]
  242. * @param title 链接标题(注意:仅当分享类型为WebPage时生效)
  243. * @param urlName 连接名称(注意:仅当分享类型为WebPage时生效)
  244. * @param attachementUrl 附件链接(附加的媒体文件(SWF 或 MP3)的网址。如果是 SWF,还必须指定image以提供视频的缩略图)
  245. * @param type 分享类型,仅支持Text、Image、WebPage类型
  246. */
  247. - (void)SSDKSetupFacebookParamsByText:(NSString *)text
  248. image:(id)image
  249. url:(NSURL *)url
  250. urlTitle:(NSString *)title
  251. urlName:(NSString *)urlName
  252. attachementUrl:(NSURL *)attachementUrl
  253. type:(SSDKContentType)type;
  254. /**
  255. * 设置短信分享参数
  256. *
  257. * @param text 文本
  258. * @param title 标题
  259. * @param images 分享图片列表,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。如: @"http://www.mob.com/images/logo_black.png" 或 @[@"http://www.mob.com/images/logo_black.png"]
  260. * @param attachments 附件列表, 可以为单个附件也可以为一个数组,元素可以为NSData、UIImage、NSString、NSURL(文件路径)、SSDKData、SSDKImage,注:只允许指定本地资源
  261. * @param recipients 接收人信息,如:@[@"400-685-2216"]
  262. * @param type 分享类型,仅支持Text、Image类型
  263. */
  264. - (void)SSDKSetupSMSParamsByText:(NSString *)text
  265. title:(NSString *)title
  266. images:(id)images
  267. attachments:(id)attachments
  268. recipients:(NSArray *)recipients
  269. type:(SSDKContentType)type;
  270. /**
  271. * 设置邮件分享参数
  272. *
  273. * @param text 文本
  274. * @param title 标题
  275. * @param images 分享图片列表,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。如: @"http://www.mob.com/images/logo_black.png" 或 @[@"http://www.mob.com/images/logo_black.png"]
  276. * @param attachments 附件列表, 可以为单个附件也可以为一个数组,元素可以为NSData、UIImage、NSString、NSURL(文件路径)、SSDKData、SSDKImage,注:只允许指定本地资源
  277. * @param recipients 接收人信息,如:@["tester@163.com"]
  278. * @param ccRecipients 抄送人信息,如:@["tester2@163.com"]
  279. * @param bccRecipients 密送人信息,如:@["tester3@163.com"]
  280. * @param type 分享类型,仅支持Text、Image类型
  281. */
  282. - (void)SSDKSetupMailParamsByText:(NSString *)text
  283. title:(NSString *)title
  284. images:(id)images
  285. attachments:(id)attachments
  286. recipients:(NSArray *)recipients
  287. ccRecipients:(NSArray *)ccRecipients
  288. bccRecipients:(NSArray *)bccRecipients
  289. type:(SSDKContentType)type;
  290. /**
  291. * 设置拷贝参数
  292. *
  293. * @param text 文本,仅在type为Text时有效
  294. * @param images 分享图片列表,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。如: @"http://www.mob.com/images/logo_black.png" 或 @[@"http://www.mob.com/images/logo_black.png"]
  295. * @param url 链接,仅在type为WebPage时有效
  296. * @param type 分享类型,仅支持Text、Image、WebPage类型
  297. */
  298. - (void)SSDKSetupCopyParamsByText:(NSString *)text
  299. images:(id)images
  300. url:(NSURL *)url
  301. type:(SSDKContentType)type;
  302. /**
  303. * 设置豆瓣分享参数
  304. *
  305. * @param text 文本
  306. * @param image 分享图片,当type为Image时,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。当type为WebPage时,只能为网络图片,可以传入NSString(图片路径)、NSURL(图片路径)。
  307. * @param title 网页标题,仅在type为WebPage时有效。
  308. * @param url 网页链接,仅在type为WebPage时有效。
  309. * @param urlDesc 网页描述,仅在type为WebPage时有效。
  310. * @param type 分享类型,仅支持Text、Image、WebPage类型
  311. */
  312. - (void)SSDKSetupDouBanParamsByText:(NSString *)text
  313. image:(id)image
  314. title:(NSString *)title
  315. url:(NSURL *)url
  316. urlDesc:(NSString *)urlDesc
  317. type:(SSDKContentType)type;
  318. /**
  319. * 设置人人网分享参数
  320. *
  321. * @param text 文本
  322. * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage,仅在type为Image时有效。
  323. * @param url 网页链接,仅在type为WebPage时有效。
  324. * @param albumId 相册ID,指定分享的图片要放入哪个相册,默认为nil,仅在type为Image时有效。
  325. * @param type 分享类型,仅支持Image、WebPage类型
  326. */
  327. - (void)SSDKSetupRenRenParamsByText:(NSString *)text
  328. image:(id)image
  329. url:(NSURL *)url
  330. albumId:(NSString *)albumId
  331. type:(SSDKContentType)type;
  332. /**
  333. * 设置开心网分享参数
  334. *
  335. * @param text 文本
  336. * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage,仅在type为Image时有效。
  337. * @param type 分享类型,仅支持Text、Image类型
  338. */
  339. - (void)SSDKSetupKaiXinParamsByText:(NSString *)text
  340. image:(id)image
  341. type:(SSDKContentType)type;
  342. /**
  343. * 设置Pocket分享参数
  344. *
  345. * @param url 分享链接
  346. * @param title 标题
  347. * @param tags 标签,可以为NSString或者NSArray。为NSString时,标签名称要以逗号分隔;为NSArray时,元素为NSString。
  348. * @param tweetId 关联的推文ID
  349. */
  350. - (void)SSDKSetupPocketParamsByUrl:(NSURL *)url
  351. title:(NSString *)title
  352. tags:(id)tags
  353. tweetId:(NSString *)tweetId;
  354. /**
  355. * 设置GooglePlus分享参数
  356. *
  357. * @param text 文本
  358. * @param url 分享链接,仅在type为WebPage时有效
  359. * @param type 分享类型,仅支持Text、WebPage类型
  360. */
  361. - (void)SSDKSetupGooglePlusParamsByText:(NSString *)text
  362. url:(NSURL *)url
  363. type:(SSDKContentType)type;
  364. /**
  365. * 设置Instagram分享参数
  366. *
  367. * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage,仅在type为Image时有效。
  368. * @param point 分享菜单的显示位置,仅用于iPad版
  369. */
  370. - (void)SSDKSetupInstagramByImage:(id)image
  371. menuDisplayPoint:(CGPoint)point;
  372. /**
  373. * 设置LinkedIn分享参数
  374. *
  375. * @param text 分享文本
  376. * @param image 分享图片,只能够是网络图片,传入类型可以为NSString(图片路径), NSURL(图片路径)。
  377. * @param url 分享链接
  378. * @param title 标题
  379. * @param urlDesc 链接的相关描述
  380. * @param visibility 可见性,可以传入anyone或者connections-only,默认为anyone
  381. * @param type 分享类型,仅支持Text和WebPage
  382. */
  383. - (void)SSDKSetupLinkedInParamsByText:(NSString *)text
  384. image:(id)image
  385. url:(NSURL *)url
  386. title:(NSString *)title
  387. urlDesc:(NSString *)urlDesc
  388. visibility:(NSString *)visibility
  389. type:(SSDKContentType)type;
  390. /**
  391. * 设置Tumblr分享参数
  392. *
  393. * @param text 分享文本
  394. * @param image 分享图片,只能够是网络图片,传入类型可以为NSString(图片路径), NSURL(图片路径)。
  395. * @param url 分享链接
  396. * @param title 标题
  397. * @param blogName 博客名称,如果为nil,则默认分享到默认博客中。
  398. * @param type 分享类型,仅支持Text和Image
  399. */
  400. - (void)SSDKSetupTumblrParamsByText:(NSString *)text
  401. image:(id)image
  402. url:(NSURL *)url
  403. title:(NSString *)title
  404. blogName:(NSString *)blogName
  405. type:(SSDKContentType)type;
  406. /**
  407. * 设置Flickr分享参数
  408. *
  409. * @param text 图片描述
  410. * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。
  411. * @param title 图片标题
  412. * @param tags 图片标签列表
  413. * @param isPublic 指定是否公开图片,NO 私有 YES 公开。
  414. * @param isFriend 指定好友是否可以查看图片,NO 不允许,YES 允许
  415. * @param isFamily 指定家人是否可以查看图片,NO 不允许,YES 允许
  416. * @param safetyLevel 安全级别。1 安全 2 辅导级 3 限制级。
  417. * @param contentType 1 照片、2 屏幕截图、3 其他。
  418. * @param hidden 1 照片、2 屏幕截图、3 其他。
  419. */
  420. - (void)SSDKSetupFlickrParamsByText:(NSString *)text
  421. image:(id)image
  422. title:(NSString *)title
  423. tags:(NSArray *)tags
  424. isPublic:(BOOL)isPublic
  425. isFriend:(BOOL)isFriend
  426. isFamily:(BOOL)isFamily
  427. safetyLevel:(NSInteger)safetyLevel
  428. contentType:(NSInteger)contentType
  429. hidden:(NSInteger)hidden;
  430. /**
  431. * 设置WhatsApp分享参数
  432. *
  433. * @param text 分享文本
  434. * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。
  435. * @param audio 分享音频, 可以为NSData、NSString、NSURL(文件路径)、SSDKData、注:只允许指定本地资源
  436. * @param video 分享视频, 可以为NSData、NSString、NSURL(文件路径)、SSDKData、注:只允许指定本地资源
  437. * @param point 分享菜单的显示位置,仅用于iPad版
  438. * @param type 分享类型,仅支持Text、Image、Audio、Video
  439. */
  440. - (void)SSDKSetupWhatsAppParamsByText:(NSString *)text
  441. image:(id)image
  442. audio:(id)audio
  443. video:(id)video
  444. menuDisplayPoint:(CGPoint)point
  445. type:(SSDKContentType)type;
  446. /**
  447. * 设置有道云笔记分享参数
  448. *
  449. * @param text 分享文本
  450. * @param images 分享图片列表,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage,
  451. *
  452. * @param title 标题
  453. * @param source 来源
  454. * @param author 作者
  455. * @param notebook 笔记本
  456. */
  457. - (void)SSDKSetupYouDaoNoteParamsByText:(NSString *)text
  458. images:(id)images
  459. title:(NSString *)title
  460. source:(NSString *)source
  461. author:(NSString *)author
  462. notebook:(NSString *)notebook;
  463. /**
  464. * 设置Line分享参数
  465. *
  466. * @param text 分享文本
  467. * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。
  468. * @param type 分享类型,仅支持Text、Image
  469. */
  470. - (void)SSDKSetupLineParamsByText:(NSString *)text
  471. image:(id)image
  472. type:(SSDKContentType)type;
  473. /**
  474. * 设置印象笔记分享参数,注:中国版和国际版都是调用此接口进行分享参数设置。
  475. *
  476. * @param text 分享文本
  477. * @param images 分享图片列表,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage,如: @"http://www.mob.com/images/logo_black.png" 或 @[@"http://www.mob.com/images/logo_black.png"]
  478. * @param title 标题
  479. * @param notebook 笔记本GUID
  480. * @param tags 标签GUID列表
  481. * @param platformType 分享平台类型,仅支持输入SSDKPlatformTypeYinXiang和SSDKPlatformTypeEvernote
  482. */
  483. - (void)SSDKSetupEvernoteParamsByText:(NSString *)text
  484. images:(id)images
  485. title:(NSString *)title
  486. notebook:(NSString *)notebook
  487. tags:(NSArray *)tags
  488. platformType:(SSDKPlatformType)platformType;
  489. /**
  490. * 设置支付宝好友分享参数
  491. *
  492. * @param text 分享文本
  493. * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。
  494. * @param title 标题
  495. * @param url 分享链接
  496. * @param type 分享类型,仅支持Text、Image、WebPage
  497. */
  498. - (void)SSDKSetupAliPaySocialParamsByText:(NSString *)text
  499. image:(id)image
  500. title:(NSString *)title
  501. url:(NSURL *)url
  502. type:(SSDKContentType)type __deprecated_msg("use [SSDKSetupAliPaySocialParamsByText:image:title:url:type:platformType:] method instead");
  503. /**
  504. * 设置支付宝分享参数
  505. *
  506. * @param text 分享文本
  507. * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。
  508. * @param title 标题
  509. * @param url 分享链接
  510. * @param type 分享类型,仅支持Text、Image、WebPage
  511. * @param platformType 分享平台类型,仅支持输入SSDKPlatformTypeAliPaySocial和SSDKPlatformTypeAliPaySocialTimeline
  512. * 分享类型,平台支持情况如下:
  513. * SSDKPlatformTypeAliPaySocial(支付宝好友):支持Text、Image、WebPage
  514. * SSDKPlatformTypeAliPaySocialTimeline(支付宝朋友圈):支持Image、WebPage
  515. *
  516. */
  517. - (void)SSDKSetupAliPaySocialParamsByText:(NSString *)text
  518. image:(id)image
  519. title:(NSString *)title
  520. url:(NSURL *)url
  521. type:(SSDKContentType)type
  522. platformType:(SSDKPlatformType)platformType;
  523. /**
  524. * 设置Pinterest分享参数
  525. *
  526. * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。
  527. * @param desc 图片描述
  528. * @param url 链接地址
  529. * @param boardName Board名称
  530. */
  531. - (void)SSDKSetupPinterestParamsByImage:(id)image
  532. desc:(NSString *)desc
  533. url:(NSURL *)url
  534. boardName:(NSString *)boardName;
  535. /**
  536. * 设置KaKao分享参数
  537. *
  538. * @param text 分享文本
  539. * @param images 分享图片列表,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage,如: @"http://www.mob.com/images/logo_black.png" 或 @[@"http://www.mob.com/images/logo_black.png"]
  540. * @param title 分享链接标题,用于SSDKPlatformSubTypeKaKaoTalk分享
  541. * @param url 分享链接
  542. * @param permission 查看权限:F 表示好友可以查看,A 表示任何人可以查看,M 表示私有,默认为A
  543. * @param enableShare 是否允许分享,当查看权限为好友查看时,该选项有效,可以设置内容是否允许再分享。
  544. * @PARAM imageSize 图片尺寸,,用于SSDKPlatformSubTypeKaKaoTalk分享时指定图片尺寸
  545. * @param appButtonTitle 应用按钮标题,用于SSDKPlatformSubTypeKaKaoTalk分享App类型时设置
  546. * @param androidExecParam 启动安卓版应用时传入参数,如果没有可以为nil,如:@{@"key" : @"value", @"key2" : @"value2"}。
  547. * @param andoridMarkParam 安卓版应用的下载地址,如果没有可以为nil
  548. * @param iphoneExecParams 启动iPhone应用时传入参数,如果没有可以为nil,如:@{@"key" : @"value", @"key2" : @"value2"}。
  549. * @param iphoneMarkParam iPhone应用的下载地址,如果没有可以nil
  550. * @param ipadExecParams iPad应用时传入参数,如果没有可以为nil,如:@{@"key" : @"value", @"key2" : @"value2"}。此参数仅用于Kakao Talk平台。
  551. * @param ipadMarkParam iPad应用的下载地址,如果没有可以为nil,此参数仅用于Kakao Talk平台。
  552. * @param type 分享类型,仅支持Text、Image、WebPage、App
  553. * @param platformSubType 子平台类型,只能传入SSDKPlatformSubTypeKaKaoTalk或者SSDKPlatformSubTypeKaKaoStory
  554. *
  555. * 分享类型,平台支持情况如下:
  556. * Kakao Talk Kakao Story
  557. *
  558. * Text 仅支持客户端分享 应用内分享和客户端分享
  559. * Image 仅支持网络图片的客户端分享 仅支持应用内分享
  560. * WebPage 仅支持客户端分享 仅支持应用内分享
  561. * App 仅支持客户端分享 不支持
  562. */
  563. - (void)SSDKSetupKaKaoParamsByText:(NSString *)text
  564. images:(id)images
  565. title:(NSString *)title
  566. url:(NSURL *)url
  567. permission:(NSString *)permission
  568. enableShare:(BOOL)enableShare
  569. imageSize:(CGSize)imageSize
  570. appButtonTitle:(NSString *)appButtonTitle
  571. androidExecParam:(NSDictionary *)androidExecParam
  572. androidMarkParam:(NSString *)androidMarkParam
  573. iphoneExecParams:(NSDictionary *)iphoneExecParams
  574. iphoneMarkParam:(NSString *)iphoneMarkParam
  575. ipadExecParams:(NSDictionary *)ipadExecParams
  576. ipadMarkParam:(NSString *)ipadMarkParam
  577. type:(SSDKContentType)type
  578. forPlatformSubType:(SSDKPlatformType)platformSubType;
  579. /**
  580. * 设置Dropbox分享参数
  581. *
  582. * @param attachment 分享附件。附可以为NSData、UIImage、NSString、NSURL(文件路径)、SSDKData、SSDKImage,注:只允许指定本地资源
  583. */
  584. - (void)SSDKSetupDropboxParamsByAttachment:(id)attachment;
  585. /**
  586. * 设置VKontakte分享参数
  587. *
  588. * @param text 分享文本
  589. * @param images 分享图片列表,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。如: @"http://www.mob.com/images/logo_black.png" 或 @[@"http://www.mob.com/images/logo_black.png"]
  590. * @param url 分享的链接
  591. * @param groupId 圈子标识,默认为nil,分享到share圈子
  592. * @param friendsOnly 是否为好友可见,默认为NO,表示所有人可以看到。
  593. * @param latitude 纬度
  594. * @param longitude 经度
  595. * @param type 分享类型,仅支持Text、Image、WebPage
  596. */
  597. - (void)SSDKSetupVKontakteParamsByText:(NSString *)text
  598. images:(id)images
  599. url:(NSURL *)url
  600. groupId:(NSString *)groupId
  601. friendsOnly:(BOOL)friendsOnly
  602. latitude:(double)latitude
  603. longitude:(double)longitude
  604. type:(SSDKContentType)type;
  605. /**
  606. * 设置明道分享参数
  607. *
  608. * @param text 分享文本
  609. * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。分享WebPage时需要指定为网络图片
  610. * @param url 分享链接,仅在WebPage时有效。
  611. * @param title 标题,仅在WebPage时有效
  612. * @param type 分享类型,仅支持Text、Image、WebPage
  613. */
  614. - (void)SSDKSetupMingDaoParamsByText:(NSString *)text
  615. image:(id)image
  616. url:(NSURL *)url
  617. title:(NSString *)title
  618. type:(SSDKContentType)type;
  619. /**
  620. * 设置Instapaper分享参数
  621. *
  622. * @param url 分享链接,如果isPrivateFromSource为YES并且content不为空时将忽略此参数
  623. * @param title 分享标题
  624. * @param desc 分享的链接描述
  625. * @param content 内容
  626. * @param isPrivateFromSource 是否为私有源
  627. * @param folderId 文件夹ID
  628. * @param resolveFinalUrl 解决最终URL问题标识,默认开启,用于解决跳转页面问题,设置为NO则表示不进行跳转
  629. */
  630. - (void)SSDKSetupInstapaperParamsByUrl:(NSURL *)url
  631. title:(NSString *)title
  632. desc:(NSString *)desc
  633. content:(NSString *)content
  634. isPrivateFromSource:(BOOL)isPrivateFromSource
  635. folderId:(NSInteger)folderId
  636. resolveFinalUrl:(BOOL)resolveFinalUrl;
  637. /**
  638. * 设置微信分享参数
  639. *
  640. * @param text 文本
  641. * @param title 标题
  642. * @param url 分享链接
  643. * @param thumbImage 缩略图,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage
  644. * @param image 图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage
  645. * @param musicFileURL 音乐文件链接地址
  646. * @param extInfo 扩展信息
  647. * @param fileData 文件数据,可以为NSData、UIImage、NSString、NSURL(文件路径)、SSDKData、SSDKImage
  648. * @param comment 评论信息,在应用内分享朋友圈时该字段有效
  649. * @param userId 发送給指定用户的唯一标识,在应用内分享好友时需要指定。注:如果双方为非好友关系发送消息即使提示成功,对方也无法接受。
  650. * @param type 分享类型,支持SSDKContentTypeText、SSDKContentTypeImage、SSDKContentTypeWebPage、SSDKContentTypeApp、SSDKContentTypeAudio和SSDKContentTypeVideo
  651. * @param platformType 平台子类型,只能传入SSDKPlatformTypeYiXinSession、SSDKPlatformTypeYiXinTimeline和SSDKPlatformTypeYiXinFav其中一个
  652. *
  653. * 分享文本时:
  654. * 设置type为SSDKContentTypeText, 并填入text参数
  655. *
  656. * 分享图片时:
  657. * 设置type为SSDKContentTypeImage, 非gif图片时:填入title和image参数
  658. *
  659. * 分享网页时:
  660. * 设置type为SSDKContentTypeWebPage, 并设置text、title、url以及thumbImage参数,如果尚未设置thumbImage则会从image参数中读取图片并对图片进行缩放操作。
  661. *
  662. * 分享应用时:
  663. * 设置type为SSDKContentTypeApp,并设置text、title、extInfo(可选)以及fileData(可选)参数。
  664. *
  665. * 分享音乐时:
  666. * 设置type为SSDKContentTypeAudio,并设置text、title、url以及musicFileURL(可选)参数。
  667. *
  668. * 分享视频时:
  669. * 设置type为SSDKContentTypeVideo,并设置text、title、url参数
  670. */
  671. - (void)SSDKSetupYiXinParamsByText:(NSString *)text
  672. title:(NSString *)title
  673. url:(NSURL *)url
  674. thumbImage:(id)thumbImage
  675. image:(id)image
  676. musicFileURL:(NSURL *)musicFileURL
  677. extInfo:(NSString *)extInfo
  678. fileData:(id)fileData
  679. comment:(NSString *)comment
  680. toUserId:(NSString *)userId
  681. type:(SSDKContentType)type
  682. forPlatformSubType:(SSDKPlatformType)platformSubType;
  683. /**
  684. * 设置Facebook Messenger分享参数
  685. *
  686. * @param image 分享图片,可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。
  687. * @param image 分享gif图,可以为NSData、NSString、NSURL(文件路径)、SSDKData。
  688. * @param audio 分享音频, 可以为NSData、NSString、NSURL(文件路径)、SSDKData。
  689. * @param video 分享视频, 可以为NSData、NSString、NSURL(文件路径)、SSDKData。
  690. * @param type 分享类型,仅支持Image、Audio、Video
  691. */
  692. - (void)SSDKSetupFacebookMessengerParamsByImage:(id)image
  693. gif:(id)gif
  694. audio:(id)audio
  695. video:(id)video
  696. type:(SSDKContentType)type;
  697. @end