AppDelegate クラスの実装

初めに、AppDelegate クラスから見ていきます。

このクラスは、プロジェクト生成時に Xcode が自動生成したコードに対して、Kii Cloud SDK の初期化処理だけを追加したものです。

モバイルアプリの起動時に呼ばれる application(_:didFinishLaunchingWithOptions:) メソッドでは、次のように Kii Cloud SDK の初期化を行っています。

  • func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
      // Initialize the Kii Cloud SDK.
      Kii.begin(withID: "12345678", andKey: "abcdef0123456789abcdef0123456789", andSite: KiiSite.JP)
    
      return true
    }
  • - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
      // Initialize the Kii Cloud SDK.
      [Kii beginWithID:@"12345678"
                andKey:@"abcdef0123456789abcdef0123456789"
               andSite:kiiSiteJP];
    
      return YES;
    }

Kii.begin(withID:andKey:andSite:) は SDK の初期化メソッドです。ここでのパラメータは 3 つあり、順にアプリケーションの AppID、AppKey(任意の値)、サーバー設置場所を表します。

Kii Cloud には、多数の開発者が作成した多数のアプリケーションが存在しており、それぞれを識別するため、AppID を使用します。これらの値は開発者ポータルでアプリケーションを作成したときに生成されます。

下の図のように、モバイルアプリの初期化処理では、AppID を指定します。図の AppID = 1111 の例のように、複数のプラットフォームから同じ値を指定すると、同じアプリケーションのユーザーやデータを参照することもできます。

Hello Kii では、開発者ポータルからソースコードをダウンロードする際、開発者ポータルが自動的に AppID と AppKey を埋め込んで、開発者ポータルアカウント専用の zip ファイルを作成します。そのため、プロジェクトを開いた段階で、このページの初めに示したような初期化コードがすでに埋め込まれています。

新規にプロジェクトを作成する場合、この値を自分で埋め込む必要があります。アクセスキーの確認とリセット の内容に従って、アプリケーショの AppID を確認してください。

注意

AppID を知っていてもアプリケーションは攻撃できませんが、ClientID と ClientSecret を使えば、アプリケーション内の全データに対して管理者権限でのアクセスができてしまいます。ClientID と ClientSecret は開発者ポータルへのログインパスワードと同等の厳重な管理が必要です。

特に、サポートコミュニティへの投稿にコードやコマンドを貼り付けるような場合、ClientID と ClientSecret は必ずマスクしてください。Kii のサポートに問い合わせる場合は AppID とサーバー設置場所のみお知らせいただければ十分です。


次は...

ログイン画面の処理について説明します。API の使用方法などを見ていきます。

ログイン画面の実装 に移動してください。

より詳しく学びたい方へ

  • iOS のプロジェクト設定は iOS アプリ開発の準備 をご覧ください。
  • セキュリティ にセキュリティの情報をまとめています。AppID を知っていても第三者が攻撃できない点を確認できます。