ユーザー認証

利用を制限する・更新を通知する

DeployGate SDKは、配布アプリを利用しているのがどのユーザーであるのか特定することができます。これによって、アプリをインストールすることが可能なユーザーへ最新版の通知を行うことができます。

またテスト版のアプリは、配布対象を限られたユーザーに制限したい場合がしばしばあります。

DeployGate SDKでは、現在のユーザがアプリを利用する権利のあるユーザーかどうか、すなわち現在のユーザーの利用可能なアプリ一覧にこのアプリが入っているかを確認するための方法を提供しています。

設定方法

  1. カスタム URL スキームをプロジェクトへ登録する

DeployGate内のアプリページからカスタム URL スキームを取得してください。

プロジェクトをXcodeで開いて、 TARGETS → Info → URL Types に取得したカスタム URL スキームを登録してください。

  1. ユーザー認証をオンにしてSDKを組み込む

AppDelegate クラスを開いて、 SDK 組み込み時に追加した launchApplicationWithAuthoruserInfomationEnabled オプションを追加します。

DeployGateSDK
    .sharedInstance()
    .launchApplication(withAuthor: "USERNAME", key: "API_KEY", userInfomationEnabled: true)
[[DeployGateSDK sharedInstance] launchApplicationWithAuthor:@"USERNAME" key:@"API_KEY" userInfomationEnabled:YES];
  1. SDKへユーザー情報を渡す

受け取ったユーザ情報をSDKが利用できるよう、 AppDelegateapplication:openURL:sourceApplication:annotation: へ次の一行を追加します。

func application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> Bool {
     return DeployGateSDK.sharedInstance().handleOpen(url as URL?, sourceApplication: sourceApplication, annotation: annotation)
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
    return [[DeployGateSDK sharedInstance] handleOpenUrl:url sourceApplication:sourceApplication annotation:annotation]; // この行を追加
}

これで、アプリ起動時にSDKが更新の有無を確認します。また、userAuthorizationWithCompletionHandler: でユーザが利用権限を持つかチェックできるようになりました。