アンインストール計測

概要

Complete the following sections to set up, integrate, and test iOS uninstall measurement:

  1. Creating a .p12 certificate and sending it to the marketer.
  2. Configuring the SDK for uninstall measurement.
  3. Testing uninstall measurement.

📘

注意

As per Apple's announcement, starting iOS 15: "Background pushes will only be delivered if the app has been used in the foreground in the past few weeks."

Creating a .p12 certificate

To enable uninstall measurement, a .p12 certificate is required.

📘

注意

Currently, .p8 certificates are not supported.

To create a .p12 certificate:
ステップ 1: 証明書署名要求 (CSR) を作成する
1.1. On your Mac, open Keychain Access. Go to Keychain Access > Certificate Assistant > Request a Certificate From a Certificate Authority.

1.2. Fill the form. Select Saved to disk and click Continue.

ステップ2:アプリIDの選択
2.1. Locate your Apple App ID in Apple Developer Members Center, or create one.

App IDを作成するには、Appleデベロッパーメンバーセンター > Identifiers+ をクリックします。

2.2. In the App ID view, Under Capabilities, check Push Notifications and click Configure (Edit if it was previously configured). If the Configure/Edit button is not available, you might not have the required permissions.

ステップ 3: CSR をアップロードする
3.1. Choose whether to create a Production or a Development SSL Certificate (see note) and click Create Certificate.

📘

注意

公開されているアプリには、 Production SSL Certificate を使用します。アプリが未公開で、アクティブに開発中の場合は、 Development SSL Certificate を使用します。たとえば、アプリがまだ公開される準備ができていない場合、開発用のSSL証明書を使用すると、TestFlightでプッシュ関連の機能をテストできます。

3.2. Upload the CSR you created in step 1 and click Continue.

3.3. Once the Download button appears, you are ready to download. You may need to reload the page for this to update. Download the newly created certificate.

Step 4: Create a .p12 file
4.1. Open the .cer certificate. Opening the certificate will open Keychain Access.
4.2. In the Keychain Access, your certificate is shown under My Certificates. Select the certificate that was just added to Keychain Access.
4.3. Right-click on your certificate and select Export.

4.4. Click save. Make sure to use the Personal Information Exchange (.p12) format.

📘

注意

開発用または実稼働用のプッシュ SSL 証明書を更新する場合は、前述の手順に従ってください。この変更を行うために、以前の証明書を失効させる必要はありません。新しい証明書をアップロードする間に古い証明書を使用し続けるために、2つの本番環境用の証明書を同時に使用できます。

ステップ5: AppsFlyerに .p12 をアップロードする
Send the .p12 certificate to the marketer to upload to AppsFlyer.

SDKのセットアップ

次のコードを AppDelegate に追加します。

//add UserNotifications.framework
import UserNotifications
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        // ...
        application.registerForRemoteNotifications()        
        return true
      }
    
     // Called when the application sucessfuly registers for push notifications
      func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
        AppsFlyerLib.shared().registerUninstall(deviceToken)
      }
// AppDelegate.h
#import <AppsFlyerLib/AppsFlyerLib.h>
@interface AppDelegate : UIResponder <UIApplicationDelegate, AppsFlyerLibDelegate>

// AppDelegate.m
- #import <UserNotifications/UserNotifications.h>
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
        // The userNotificationTypes below is just an example and may be changed depending on the app
     UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
              center.delegate = self;
              [center requestAuthorizationWithOptions:(UNAuthorizationOptionSound | UNAuthorizationOptionAlert | UNAuthorizationOptionBadge) completionHandler:^(BOOL granted, NSError * _Nullable error) {
              }];
       [[UIApplication sharedApplication] registerForRemoteNotifications];
        // if you do not use push notificaiton in your app, uncomment the following line
        //application.applicationIconBadgeNumber = 0;
      }
      - (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
        [[AppsFlyerLib shared] registerUninstall:deviceToken];
      }
}

Enabling push notifications in background mode

サイレントプッシュ通知のみを使用している場合は、アプリのCapabilitiesバックグラウンドモードリモート通知を必ず有効にしてください。

  1. In XCode, select your project.
  2. Select your target.
  3. Switch to Capabilities tab.
  4. Toggle Background Modes on.
  5. Check Remote notifications.

アンインストール計測のテスト

iOSアンインストール計測のテスト方法:

  1. アプリをインストールします。
  2. アプリをアンインストールします。 注記:アプリをインストールした直後にアンインストールできます。 

Xcodeまたは TestFlight からアンインストールテストをする場合は、トークンがサンドボックス環境から生成されていることをSDKに知らせることが重要です。次のAPIを使用します。

AppsFlyerLib.shared().useUninstallSandbox = true
[AppsFlyerLib shared].setUseUninstallSandbox = true;

📘

注意

setUseUninstallSandbox must be called before calling registerUninstall.

注意事項

Uninstalls do not immediately appear in the AppsFlyer dashboard. Due to the Apple Push Notification service:

  • It takes 9 days on average for iOS uninstalls to appear in reports.
  • It can take more than a month for iOS uninstalls originating from sandbox environments to appear in reports.
  • The date of the uninstall is the date on which the uninstall is reported. For example:
    • 1日目:ユーザーがアプリをインストールします
    • 4日目:ユーザーがアプリをアンインストールします
    • 12日目:アンインストールから8日後にApple Push Notification Service がアプリの削除をレポートします
    • 13日目:AppsFlyer管理画面とローデータにアンインストールデータが表示されます

このページは役に立ちましたか?