提示
卸载追踪在 Airbridge iOS SDK 1.13.0 及以上版本可用。
Airbridge SDK的卸载跟踪功能通过使用静默推送实现。因此,为了使用此功能,需要在应用中设置App Identifier和Capabilities以启用静默推送,以及添加当应用接收到以卸载跟踪为目的的静默推送时忽略该推送的代码。
请转到 https://developer.apple.com/account/resources 的 Identifiers
。
请点击要进行卸载跟踪的应用的 Identifier
,并勾选 Push Notifications
。
1. 请转到 https://developer.apple.com/account/resources 的 Keys
。
2. 编辑使用中的Key,然后勾选 Apple Push Notification
服务。
如果没有使用中的Key,请按+
按钮创建新的Key并下载p8
。
请转到 https://developer.apple.com/account/resources 的 Identifiers
。
请点击要进行卸载跟踪的App的 Identifier
。
您可以查看该App的 App ID Prefix
和 Bundle ID
。
请转到 https://developer.apple.com/account/resources 的 Keys
。
请点击正在使用的 Key
。
您可以查看该 Key
的 Key ID
和 p8
。
p8
只能在首次创建Key时下载。
请转到 Xcode
> Project文件
> Signing & Capabilities
。
请点击 + Capability
按钮。
请添加 Background Modes
和 Push Notifications
。
请勾选 Background Modes
的 Remote notifications
。
当应用启动时,如果之前没有使用Push Notification,请调用 registerForRemoteNotifications
函数。
func application(_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool
{
...
UIApplication.shared.registerForRemoteNotifications()
...
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[UIApplication.sharedApplication registerForRemoteNotifications];
return YES;
}
当APNs Push Token生成时,请调用registerPushToken
函数将该Token传递给SDK。
func application(_ application: UIApplication,
didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data)
{
AirBridge.registerPushToken(deviceToken)
}
- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
[AirBridge registerPushToken:deviceToken];
}
当收到用于卸载跟踪的静默推送时,请添加以下代码忽略该推送。
func application(_ application: UIApplication,
didReceiveRemoteNotification userInfo: [AnyHashable : Any],
fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void)
{
if userInfo["airbridge-uninstall-tracking"] as? Bool == true {
return;
}
...
}
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
if ([userInfo[@"airbridge-uninstall-tracking"] boolValue] == YES) {
return;
}
...
}
Morpheus Push SDK Troubleshooting guide: 预计以后提供。
Was this page helpful?
func application(_ application: UIApplication,
didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data)
{
AirBridge.registerPushToken(deviceToken)
}
func application(_ application: UIApplication,
didReceiveRemoteNotification userInfo: [AnyHashable : Any],
fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void)
{
if userInfo["airbridge-uninstall-tracking"] as? Bool == true {
return;
}
...
}
- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
[AirBridge registerPushToken:deviceToken];
}
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
if ([userInfo[@"airbridge-uninstall-tracking"] boolValue] == YES) {
return;
}
...
}