Application クラスの実装

初めに、Application クラスである HelloThingIF.java からソースコードを見ていきます。

このクラスでは、Kii Cloud SDK の初期化を行います。以下のような処理が実装されています。APP_IDAPP_KEYAPP_SITE_CLOUD は導入時に設定した値です。

public static final String APP_ID = "11111111";
public static final String APP_KEY = "22222222222222222222222222222222";
public static final Kii.Site APP_SITE_CLOUD = Kii.Site.JP;

public void onCreate() {
  super.onCreate();

  // initialize the Kii SDK!
  Kii.initialize(getApplicationContext(), APP_ID, APP_KEY, APP_SITE_CLOUD, true);
}

Kii.initialize は Kii Cloud SDK の初期化メソッドです。ここでのパラメータは 3 つあり、順にアプリケーションの AppID、AppKey、サーバー設置場所を表します。

なお、Thing-IF SDK を使用する際には、Thing-IF SDK と Kii Cloud SDK の両方のレイヤーで初期化が必要です。Thing-IF SDK の初期化処理は、PromiseAPIWrapper で実装されています。処理の詳細は ログイン画面の実装 で説明します。Kii Cloud SDK と同様に、AppID とサーバー設置場所を指定します。AppKey は任意の値を指定します。

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

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

注意

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

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


次は...

モバイルアプリの実装の取りかかりとして、フラグメントを使って画面遷移を実現する方法を説明します。一般的なフラグメントの実装方法の復習的な内容です。

フラグメントによる画面遷移 に移動してください。

より詳しく学びたい方へ

  • 初期化処理を初めから実装する場合は、初期化コードの実装 の手順を参考にしてください。
  • セキュリティ にセキュリティの情報をまとめています。AppID を知っていても第三者が攻撃できない点を確認できます。