功能说明
营销推送更强大之处在于,您不仅可以选择使用TalkingData提供的推送通道,还可以与个推、极光等推送平台组合使用,让以往的粗放推送都可达到实时精准化,并实时查阅效果数据。
Android 推送营销
1. 集成TalkingData推送
增加以下的调用方法,来让您的应用可以接收推送通知;需注意在获得推送能力的同时,您的应用会在后台中长期运行:
1) 打开AndroidManifest.xml,添加推送功能所必要的权限
2) 添加TalkingDataAppAnalytics所必须的Service
3) 添加TalkingDataAppAnalytics所必须的BroadCastReceiver,以支持接收消息
通过调用以下方法,可以快速关闭TalkingData推送服务,应用将不会处于后台,同时也无法进行推送。请在 init 前调用:安卓补量
setPushDisabled();
2. 第三方推送平台与TalkingData组合使用
TalkingData支持从平台中划定精准用户群,组合第三方推送平台来直接发送推送和收集实时数据效果;目前支持两家第三方推送平台:个推、极光。如果您已经是第三方推送的使用者,这种方式能让您更舒服的实现精准推送并验证效果。遵循以下方法进行集成
1) 您需要在第三方推送平台中申请账户,并已完成三方推送的对接。您需要在对接后确认测试通过,三方推送可以接收到推送消息。
2) 添加TalkingData App Analytics所必须的BroadCastReceiver;
如果您使用个推推送:
在AndroidManifest.xml添加如下内容:
如果您使用极光推送:(支持版本为1.8.2及以上版本组合使用)
在AndroidManifest.xml添加如下内容:
3) 完成以上集成后,您还需要在TalkingData平台中配置推送相关的Key;请进入平台“推送营销”-“推送配置”在android平台配置中添加好这些配置。
4) 在TalkingData平台中选用三方平台进行实际推送测试。
iOS 推送营销
iOS推送使用苹果官方的APNS通道,您需要先申请获得苹果的APNS服务后与TalkingData组合使用。安智宝
接入推送系统
1) 在使用营销推送之前,请确认应用可以正常收到远程通知,远程通知注册方式可参照如下代码
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
if ([application respondsToSelector:
@selector(isRegisteredForRemoteNotifications)]) {
// iOS >= 8 Notifications
[application registerUserNotificationSettings:
[UIUserNotificationSettings settingsForTypes:
UIUserNotificationTypeBadge |
UIUserNotificationTypeSound |
UIUserNotificationTypeAlert categories:nil]];
[application registerForRemoteNotifications];
} else {
// iOS < 8 Notifications
[application registerForRemoteNotificationTypes:
UIRemoteNotificationTypeBadge |
UIRemoteNotificationTypeSound |
UIRemoteNotificationTypeAlert];
}
// other code
}
2) 在application: didRegisterForRemoteNotificationsWithDeviceToken:方法中调用setDeviceToken传入DeviceToken
- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
[TalkingData setDeviceToken:deviceToken];
}
3) 分别在application:didFinishLaunchingWithOptions:和application:didReceiveRemoteNotification:方法中调用handlePushMessage传入消息
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
if (![TalkingData handlePushMessage:launchOptions]) {
// 非来自TalkingData的消息,可以在此处处理该消息。
}
// other code
}
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
if (![TalkingData handlePushMessage:userInfo]) {
// 非来自TalkingData的消息,可以在此处处理该消息。
}
}
原创文章,作者:youou,如若转载,请注明出处:https://xue.youounet.com/1657.html