ページの先頭行へ戻る
Interstage Mobile Application Server V1.3.0 アプリケーション開発ガイド
FUJITSU Software

6.5.7 認証クラスの定義

プッシュ通知を利用するハイブリッドアプリケーション/ネイティブアプリケーションは、登録IDをIMAPSサーバに 登録するためにIMAPS認証が必要です。その認証状態を渡すために認証クラスの 定義が必要です。認証クラスの定義が未設定の場合や、誤ったクラスを設定するなどの定義値誤りの場合は 認証エラーになります。

認証クラスの定義では、以下の作業を行います。
  1. 利用する認証方式にあわせた認証情報の設定
  2. 認証クラスの組み込み

1.利用する認証方式にあわせた認証情報の設定

利用する認証方式にあわせて、以下のどちらかの認証情報を設定します。
[Android][iOS][Windows]のハイブリッドアプリケーションおよびネイティブアプリケーション開発において、プッシュハンドラの初期化を行う前に、認証情報の設定します。

(1)オンライン認証(loginOnlineによる認証設定)
プッシュハンドラの初期化を行う前に、アプリケーションからオンライン認証の認証情報を設定します。
なお、オンライン認証の方法は、 Android版は3.3.3.2 ログイン、 iOS版は3.4.4.2 ログイン、 Windows版は3.5.3.2 ログイン、 ハイブリッドアプリケーションは2.3.28.2.1 ログイン のオンライン認証の説明を参照してください。
(2)管理情報認証(setManageInfoによる認証設定)
あらかじめIMAPSサーバの管理コマンドでアプリケーション管理者を作成します。
プッシュハンドラの初期化を行う前に、アプリケーションから管理情報の認証情報を設定します。
なお、管理情報認証の方法については、 Android版は3.3.3.5 管理情報の設定、 iOS版は3.4.4.5 管理情報の設定、 Windows版は3.5.3.5 管理情報の設定、 ハイブリッドアプリケーションは2.3.28.2.5 管理情報による認証 の説明を参照してください。

2.認証クラスの組み込み

Android
以下のように、プッシュクライアント設定ファイルに認証クラスを設定します。
// 認証クラスを設定
push.AuthClassName=com.fujitsu.imaps.plugin.push.PushExtAuthImpl
iOS
以下のように、グローバル変数"fjpExAuth"にFJPExAuthImplクラスのインスタンスを設定します。
#import <IMAPSPush/FJPExAuthImpl.h>

// 認証拡張クラスのインスタンスをグローバル変数に設定
// ※プッシュ部品クラスからも参照するため下記変数名で設定すること
id<FJPExAuth> fjpExAuth;

@implementation AppDelegate
@synthesize window;

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    // 親クラスの同名関数の実行
    [super application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions];

    // (省略)

    // 親クラスの同名関数の実行後、グローバル変数に代入
    fjpExAuth = [[FJPExAuthImpl alloc] init];

    return YES;
}
Windows
管理情報認証を行う場合、以下のように、プッシュクライアント設定ファイルに認証クラスを設定します (オンライン認証を用いる場合は、認証クラスの設定は不要です)。
// 認証クラスの名前空間を設定
lt;push.AuthClassNameSpace>ImapsPushEx</push.AuthClassNameSpace>
// 認証クラスを設定
<push.AuthClassName>Com.Fujitsu.Imaps.PushEx.PushExtAuthImpl</push.AuthClassName>

注意

  • ハイブリッドアプリでの認証クラスの指定方法について

    ハイブリッドアプリのJSプロジェクトでは、DLLの参照ができないためDLL参照用の「クラスライブラリ」プロジェクトを作成し、JSプロジェクトから参照させるよう設定してください。