Initial commit
This commit is contained in:
@@ -0,0 +1,160 @@
|
||||
//
|
||||
// TalkingData.h
|
||||
// __MyProjectName__
|
||||
//
|
||||
// Created by Biao Hou on 11-11-14.
|
||||
// Copyright (c) 2011年 __MyCompanyName__. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
|
||||
// 以下枚举用于WatchApp页面追踪
|
||||
typedef enum {
|
||||
TDPageTypeGlance = 1,
|
||||
TDPageTypeNotification = 2,
|
||||
TDPageTypeWatchApp = 3
|
||||
} TDPageType;
|
||||
|
||||
@interface TalkingData: NSObject
|
||||
|
||||
/**
|
||||
* @method getDeviceID
|
||||
* 获取SDK所使用的DeviceID
|
||||
* @return DeviceID
|
||||
*/
|
||||
+ (NSString *)getDeviceID;
|
||||
|
||||
/**
|
||||
* @method setLogEnabled
|
||||
* 统计日志开关(可选)
|
||||
* @param enable 默认是开启状态
|
||||
*/
|
||||
+ (void)setLogEnabled:(BOOL)enable;
|
||||
|
||||
/**
|
||||
* @method setExceptionReportEnabled
|
||||
* 是否捕捉程序崩溃记录(可选)
|
||||
如果需要记录程序崩溃日志,请将值设成YES,并且在调用sessionStarted:withChannelId:之前调用此函数
|
||||
* @param enable 默认是 NO
|
||||
*/
|
||||
+ (void)setExceptionReportEnabled:(BOOL)enable;
|
||||
|
||||
/**
|
||||
* @method setSignalReportEnabled
|
||||
* 是否捕捉异常信号(可选)
|
||||
如果需要开启异常信号捕捉功能,请将值设成YES,并且在调用sessionStarted:withChannelId:之前调用此函数
|
||||
* @param enable 默认是NO
|
||||
*/
|
||||
+ (void)setSignalReportEnabled:(BOOL)enable;
|
||||
|
||||
|
||||
/**
|
||||
* @method setLatitude:longitude:
|
||||
* 设置位置信息(可选)
|
||||
* @param latitude 维度
|
||||
* @param longitude 经度
|
||||
*/
|
||||
+ (void)setLatitude:(double)latitude longitude:(double)longitude;
|
||||
|
||||
/**
|
||||
* @method sessionStarted:withChannelId:
|
||||
* 初始化统计实例,请在application:didFinishLaunchingWithOptions:方法里调用
|
||||
* @param appKey 应用的唯一标识,统计后台注册得到
|
||||
* @param channelId 渠道名,如“app store”(可选)
|
||||
*/
|
||||
+ (void)sessionStarted:(NSString *)appKey withChannelId:(NSString *)channelId;
|
||||
|
||||
/**
|
||||
* @method initWithWatch:
|
||||
* 初始化WatchApp统计实例,请在每个入口类的init方法里调用
|
||||
* @param appKey 应用的唯一标识,统计后台注册得到
|
||||
*/
|
||||
+ (void)initWithWatch:(NSString *)appKey;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* @method trackEvent
|
||||
* 统计自定义事件(可选),如购买动作
|
||||
* @param eventId 事件名称(自定义)
|
||||
*/
|
||||
+ (void)trackEvent:(NSString *)eventId;
|
||||
|
||||
/**
|
||||
* @method trackEvent:label:
|
||||
* 统计带标签的自定义事件(可选),可用标签来区别同一个事件的不同应用场景
|
||||
如购买某一特定的商品
|
||||
* @param eventId 事件名称(自定义)
|
||||
* @param eventLabel 事件标签(自定义)
|
||||
*/
|
||||
+ (void)trackEvent:(NSString *)eventId label:(NSString *)eventLabel;
|
||||
|
||||
/**
|
||||
* @method trackEvent:label:parameters
|
||||
* 统计带二级参数的自定义事件,单次调用的参数数量不能超过10个
|
||||
* @param eventId 事件名称(自定义)
|
||||
* @param eventLabel 事件标签(自定义)
|
||||
* @param parameters 事件参数 (key只支持NSString, value支持NSString和NSNumber)
|
||||
*/
|
||||
+ (void)trackEvent:(NSString *)eventId
|
||||
label:(NSString *)eventLabel
|
||||
parameters:(NSDictionary *)parameters;
|
||||
|
||||
/**
|
||||
* @method setGlobalKV:value:
|
||||
* 添加全局的字段,这里的内容会每次的自定义事都会带着,发到服务器。也就是说如果您的自定义事件中每一条都需要带同样的内容,如用户名称等,就可以添加进去
|
||||
* @param key 自定义事件的key,如果在之后,创建自定义的时候,有相同的key,则会覆盖,全局的里相同key的内容
|
||||
* @param value 这里是NSObject类型,或者是NSString 或者NSNumber类型
|
||||
*/
|
||||
+ (void)setGlobalKV:(NSString *)key value:(id)value;
|
||||
|
||||
/**
|
||||
* @method removeGlobalKV:
|
||||
* 删除全局数据
|
||||
* @param key 自定义事件的key
|
||||
*/
|
||||
+ (void)removeGlobalKV:(NSString *)key;
|
||||
|
||||
/**
|
||||
* @method trackPageBegin
|
||||
* 开始跟踪某一页面(可选),记录页面打开时间
|
||||
建议在viewWillAppear或者viewDidAppear方法里调用
|
||||
* @param pageName 页面名称(自定义)
|
||||
*/
|
||||
+ (void)trackPageBegin:(NSString *)pageName;
|
||||
|
||||
/**
|
||||
* @method trackPageBegin:withPageType:
|
||||
* 开始跟踪WatchApp某一页面(可选),记录页面打开时间
|
||||
建议在willActivate方法里调用
|
||||
* @param pageName 页面名称(自定义)
|
||||
* @param pageType 页面类型(TDPageType枚举类型)
|
||||
*/
|
||||
+ (void)trackPageBegin:(NSString *)pageName withPageType:(TDPageType)pageType;
|
||||
|
||||
/**
|
||||
* @method trackPageEnd
|
||||
* 结束某一页面的跟踪(可选),记录页面的关闭时间
|
||||
此方法与trackPageBegin方法结对使用,
|
||||
在iOS应用中建议在viewWillDisappear或者viewDidDisappear方法里调用
|
||||
在Watch应用中建议在DidDeactivate方法里调用
|
||||
* @param pageName 页面名称,请跟trackPageBegin方法的页面名称保持一致
|
||||
*/
|
||||
+ (void)trackPageEnd:(NSString *)pageName;
|
||||
|
||||
/**
|
||||
* @method setDeviceToken 设置DeviceToken
|
||||
* @param deviceToken 从Apple获取的DeviceToken
|
||||
*/
|
||||
+ (void)setDeviceToken:(NSData *)deviceToken;
|
||||
|
||||
/**
|
||||
* @method handlePushMessage 处理来自TalkingData的Push消息
|
||||
* @param message 收到的消息
|
||||
* @return YES 来自TalkingData的消息,SDK已处理
|
||||
* NO 其他来源消息,开发者需自行处理
|
||||
*/
|
||||
+ (BOOL)handlePushMessage:(NSDictionary *)message;
|
||||
|
||||
@end
|
||||
@@ -0,0 +1,81 @@
|
||||
//
|
||||
// TalkingDataSMS.h
|
||||
// TalkingData
|
||||
//
|
||||
// Created by liweiqiang on 15/6/9.
|
||||
// Copyright (c) 2015年 TendCloud. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
@protocol TalkingDataSMSDelegate <NSObject>
|
||||
|
||||
// Delegate回调是在您的主线程中
|
||||
- (void)onApplySucc:(NSString *)requestId;
|
||||
- (void)onApplyFailed:(int)errorCode errorMessage:(NSString *)errorMessage;
|
||||
- (void)onVerifySucc:(NSString *)requestId;
|
||||
- (void)onVerifyFailed:(int)errorCode errorMessage:(NSString *)errorMessage;
|
||||
|
||||
@end
|
||||
|
||||
@interface TalkingDataSMS : NSObject
|
||||
|
||||
/**
|
||||
* 短信认证初始化
|
||||
*
|
||||
* @param AppId
|
||||
* TalkingData 分配的App Id
|
||||
* @param secretId
|
||||
* TalkingData 分配的 secretId
|
||||
*/
|
||||
+ (void)init:(NSString *)appId withSecretId:(NSString *)secretId;
|
||||
|
||||
/**
|
||||
* 申请短信认证码
|
||||
*
|
||||
* @param countryCode
|
||||
* 国家码 如:中国,86
|
||||
* @param mobile
|
||||
* 申请验证码的手机号
|
||||
* @param delegate
|
||||
* 申请的异步回调接口
|
||||
*/
|
||||
+ (void)applyAuthCode:(NSString *)countryCode
|
||||
mobile:(NSString *)mobile
|
||||
delegate:(id<TalkingDataSMSDelegate>)delegate;
|
||||
|
||||
/**
|
||||
* 重新申请短信认证码,将下发和requestId匹配的短信内容
|
||||
*
|
||||
* @param countryCode
|
||||
* 国家码 如:中国,86
|
||||
* @param mobile
|
||||
* 申请验证码的手机号
|
||||
* @param requestId
|
||||
* 相同的request id将返回相同的认证码
|
||||
* @param delegate
|
||||
* 申请的异步回调接口
|
||||
*/
|
||||
+ (void)reapplyAuthCode:(NSString *)countryCode
|
||||
mobile:(NSString *)mobile
|
||||
requestId:(NSString *)requestId
|
||||
delegate:(id<TalkingDataSMSDelegate>)delegate;
|
||||
|
||||
/**
|
||||
* 验证短信认证码的有效性
|
||||
*
|
||||
* @param countryCode
|
||||
* 国家码 如:中国,86
|
||||
* @param mobile
|
||||
* 验证手机号
|
||||
* @param authCode
|
||||
* 短信认证码
|
||||
* @param delegate
|
||||
* 验证请求的异步回调接口
|
||||
*/
|
||||
+ (void)verifyAuthCode:(NSString *)countryCode
|
||||
mobile:(NSString *)mobile
|
||||
authCode:(NSString *)authCode
|
||||
delegate:(id<TalkingDataSMSDelegate>)delegate;
|
||||
|
||||
@end
|
||||
Binary file not shown.
Reference in New Issue
Block a user