UMSocialData.h 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. //
  2. // UMSocialData.h
  3. // SocialSDK
  4. //
  5. // Created by Jiahuan Ye on 12-9-12.
  6. // Copyright (c) umeng.com All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. #import <UIKit/UIKit.h>
  10. #import "UMSocialSnsData.h"
  11. /**
  12. 一个`UMSocialData`对象标识一个分享资源,用一个*identifier*字符串作为标识,你可以为此对象设置分享内嵌文字、分享图片等,可以获取到对应的分享数、评论数。同时`UMSocialData`类方法用来设置appKey和打开log等全局设置。
  13. */
  14. @interface UMSocialData : NSObject
  15. ///---------------------------------------
  16. /// @name 对象属性
  17. ///---------------------------------------
  18. /**
  19. 标识每个不同`UMSocialData`对象的字符串
  20. */
  21. @property (nonatomic, readonly) NSString *identifier;
  22. /**
  23. 报表title
  24. 不同`UMSocialData`实例的title,在报表中可看到对应分享操作的title
  25. */
  26. @property (nonatomic, copy) NSString *title;
  27. /**
  28. 分享的内嵌文字
  29. */
  30. @property (nonatomic, copy) NSString * shareText;
  31. /**
  32. 用于用户在评论并分享的时候,该字段内容会自动添加到评论的后面,分享到各个分享平台
  33. */
  34. @property (nonatomic, copy) NSString * commentText;
  35. /**
  36. 分享的内嵌图片,可以传入`UIImage`或者`NSData`类型
  37. */
  38. @property (nonatomic, retain) id shareImage;
  39. /**
  40. 用于用户在评论并分享的时候,该字段内容会自动添加到评论中的图片,分享到各个分享平台
  41. */
  42. @property (nonatomic, retain) UIImage * commentImage;
  43. /**
  44. 保存在本地记录是否喜欢
  45. */
  46. @property (nonatomic, readonly) BOOL isLike;
  47. /**
  48. 保存在本地的用户微博账户信息,key是微博名,value是自定义的`UMSocialResponseEntity`对象
  49. */
  50. @property (nonatomic, readonly) NSDictionary *socialAccount;
  51. /**
  52. 分享到微博多媒体资源,包括指定url的图片、音乐、视频
  53. */
  54. @property (nonatomic, retain) UMSocialUrlResource *urlResource;
  55. /**
  56. 分享到各个微博的扩展设置
  57. */
  58. @property (nonatomic, retain) UMSocialExtConfig *extConfig;
  59. ///---------------------------------------
  60. /// @name 对所有对象都起作用的类方法
  61. ///---------------------------------------
  62. /**设置app的友盟appKey,此appKey从友盟网站获取
  63. @param appKey 友盟appKey
  64. */
  65. + (void)setAppKey:(NSString *)appKey;
  66. /**获取设置的友盟appKey
  67. */
  68. + (NSString *)appKey;
  69. /**
  70. 设置是否打开log输出,默认不打开,如果打开的话可以看到此sdk网络或者其他操作,有利于调试
  71. @param openLog 是否打开log输出
  72. */
  73. + (void)openLog:(BOOL)openLog;
  74. /**
  75. 获取默认的`UMSocialData`对象,此对象的identifier为"UMSocialDefault"
  76. */
  77. + (UMSocialData *)defaultData;
  78. ///---------------------------------------
  79. /// @name 对象方法
  80. ///---------------------------------------
  81. /**
  82. 初始化一个`UMSocialData`对象
  83. @param identifier 一个`UMSocialData`对象的标识符,相同标识符的`UMSocialData`拥有相同的属性
  84. @return return 初始化的`UMSocialData`对象
  85. */
  86. - (id)initWithIdentifier:(NSString *)identifier;
  87. /**
  88. 初始化一个`UMSocialData`对象
  89. @param identifier 一个`UMSocialData`对象的标识符,相同标识符的`UMSocialData`拥有相同的属性
  90. @param title 对每个对象的描述,在报表端显示分享、评论等操作对应的title
  91. @return return 初始化的`UMSocialData`对象
  92. */
  93. - (id)initWithIdentifier:(NSString *)identifier withTitle:(NSString *)title;
  94. /**
  95. 获得该对象保存在本地的分享数、评论数或者喜欢数
  96. @param numberType 数目类型,分享、评论、喜欢分别为`UMSNumberShare`、`UMSNumberComment`、`UMSNumberLike`
  97. @return 各种动作的数目
  98. */
  99. - (NSInteger)getNumber:(UMSNumberType)numberType;
  100. @end