MobClickSocialAnalytics.h 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. //
  2. // MobClickSocialAnalytics.h
  3. // SocialSDK
  4. //
  5. // Created by yeahugo on 13-3-4.
  6. // Copyright (c) 2013年 Umeng. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. typedef NSString * MobClickSocialTypeString;
  10. extern MobClickSocialTypeString const MobClickSocialTypeSina; //新浪微博
  11. extern MobClickSocialTypeString const MobClickSocialTypeTencent; //腾讯微博
  12. extern MobClickSocialTypeString const MobClickSocialTypeRenren; //人人网
  13. extern MobClickSocialTypeString const MobClickSocialTypeQzone; //Qzone
  14. extern MobClickSocialTypeString const MobClickSocialTypeRenren; //人人网
  15. extern MobClickSocialTypeString const MobClickSocialTypeDouban; //douban
  16. extern MobClickSocialTypeString const MobClickSocialTypeWxsesion; //微信好友分享
  17. extern MobClickSocialTypeString const MobClickSocialTypeWxtimeline; //微信朋友圈
  18. extern MobClickSocialTypeString const MobClickSocialTypeHuaban; //花瓣
  19. extern MobClickSocialTypeString const MobClickSocialTypeKaixin; //开心
  20. extern MobClickSocialTypeString const MobClickSocialTypeFacebook; //facebook
  21. extern MobClickSocialTypeString const MobClickSocialTypeTwitter; //twitter
  22. extern MobClickSocialTypeString const MobClickSocialTypeInstagram; //instagram
  23. extern MobClickSocialTypeString const MobClickSocialTypeFlickr; //flickr
  24. extern MobClickSocialTypeString const MobClickSocialTypeQQ; //qq
  25. extern MobClickSocialTypeString const MobClickSocialTypeWxfavorite; //微信收藏
  26. extern MobClickSocialTypeString const MobClickSocialTypeLwsession; //来往
  27. extern MobClickSocialTypeString const MobClickSocialTypeLwtimeline; //来往动态
  28. extern MobClickSocialTypeString const MobClickSocialTypeYxsession; //易信
  29. extern MobClickSocialTypeString const MobClickSocialTypeYxtimeline; //易信朋友圈
  30. /**
  31. 微博类,发送微博之后在回调方法初始化此对象
  32. */
  33. @interface MobClickSocialWeibo : NSObject
  34. /**
  35. 微博平台类型,使用上面定义的几种常量字符串
  36. */
  37. @property (nonatomic, copy) NSString *platformType;
  38. /**
  39. 微博id
  40. */
  41. @property (nonatomic, copy) NSString *weiboId;
  42. /**
  43. 用户在微博平台的id
  44. */
  45. @property (nonatomic, copy) NSString *userId;
  46. /**
  47. 微博平台的自定义字段,例如定义{‘gender’:0,’name’:’xxx’}
  48. */
  49. @property (nonatomic, strong) NSDictionary *param;
  50. /**
  51. 初始化方法,在发送微博结束的回调方法使用此初始化方法
  52. @param platformType 微博平台类型
  53. @param weiboId 微博id,可以设置为nil
  54. @param userId 用户id
  55. @param param 微博平台自定义字段,可以设置为nil
  56. @return 微博对象
  57. */
  58. -(id)initWithPlatformType:(MobClickSocialTypeString)platformType weiboId:(NSString *)weiboId usid:(NSString *)usid param:(NSDictionary *)param;
  59. @end
  60. /**
  61. 发送统计完成的block对象
  62. */
  63. typedef void (^MobClickSocialAnalyticsCompletion)(NSDictionary * response, NSError *error);
  64. /**
  65. 负责统计微博类。
  66. 分享微博完成之后需要先构造`MobClickSocialWeibo`组成微博数组,然后再用类方法发送微博数组
  67. ```
  68. +(void)postWeiboCounts:(NSArray *)weibos appKey:(NSString *)appKey topic:(NSString *)topic completion:(MobClickSocialAnalyticsCompletion)completion;
  69. ```
  70. 例如
  71. MobClickSocialWeibo *tencentWeibo = [[MobClickSocialWeibo alloc] initWithPlatformType:UMSocialTypeTencent weiboId:nil userId:@"tencent123" param:@{@"gender":@"1"}];
  72. [MobClickSocialAnalytics postWeibos:@[tencentWeibo] appKey:@"507fcab25270157b37000010" topic:@"test" completion:^(NSDictionary *result, NSError *error) {
  73. NSLog(@"result is %@", result);
  74. }];
  75. */
  76. @interface MobClickSocialAnalytics : NSObject
  77. /**
  78. 发送统计微博
  79. @param weibos UMSocialWeibo对象组成的数组
  80. @param appKey 友盟appkey
  81. @param topic 话题,可选,可以设置为nil
  82. @parma completion 发送完成的事件处理block
  83. */
  84. +(void)postWeiboCounts:(NSArray *)weibos appKey:(NSString *)appKey topic:(NSString *)topic completion:(MobClickSocialAnalyticsCompletion)completion;
  85. @end