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

7.5.1 ハイブリッドアプリケーション向けのAPIの開発

ハイブリッドアプリケーション向けのAPIはJavaScriptで提供します。

Androidの場合、IMAPS向けのハイブリッドアプリケーションの開発環境を準備後、以下のファイルをコピーしてください。開発環境については、1.2.2 開発環境とライセンスを参照してください。
Windows
<製品インストールフォルダー>\development\android\push\hybrid
Linux
/opt/FJSVimsrv/development/android/push/hybrid

上記ディレクトリから開発用端末に資産をコピーし、プロジェクトとしてインポートします。次に、インポートしたプロジェクトを参照ライブラリプロジェクトとして設定します。


iOSの場合、IMAPS向けのハイブリッドアプリケーションの開発環境を準備後、以下からzipファイルを取得し、Mac上で展開してください。
Windows
<製品インストールフォルダー>\development\ios\push\plugin\FJPCordovaPlugin.1.0.zip
Linux
/opt/FJSVimsrv/development/ios/push/plugin/FJPCordovaPlugin.1.0.zip

プッシュ機能のライブラリを取り込むため、XCodeのプロジェクトの「Build Settings」→「Linking」→「Other Linker Flags」に、"-ObjC"を設定してください。

1.マニフェストファイルの修正と、プッシュクライアント設定ファイルの設定

ネイティブアプリケーションの開発と同様、以下を行ってください。

2.プッシュハンドラ初期化処理の作成

FJPHandler.initメソッドを呼び出すことで、初期化され、メッセージの受信を開始します。

以下に使用例を示します。

var jsonText = '{"ext_data":"Extension String"}';
FJPHandler.init("FJ", // プッシュの種類を指定 FJ:IMAPSプッシュ
    JSON.parse(jsonText ), // 初期化時に使用する値を設定。
    function(result) {
        // プッシュを受信可能な状態になった後の処理
    },
    function(result) {
        // エラー発生時のコールバック
    }
);

各プッシュ方式固有の動作、設定は以下のとおりです。

観点

IMAPSプッシュ

(Android)

GCM

(Android)

APNs

(iOS)

init()のoptionsに渡す情報

拡張データ

拡張データ

SENDER_ID(注1)

拡張データ

setNotification Mode()

動作する

一部動作する

(Android4.1以降は端末の通知設定が優先)

動作しない

(端末設定の「通知センター」で設定)

プッシュを利用するための事前設定

AndroidManifest.xmlに、ネイティブAPIと同様の記述が必要(注2)

AndroidManifest.xmlに、ネイティブAPIと同様の記述が必要(注3)

ネイティブ層の修正が必要

errorCallback

IMAPSサーバとの通信エラーが返される

IMAPSサーバとの通信エラーが返される

JavaScript層にエラーを返せないので、ネイティブ層の作り込みが必須(注4)。

注1)GCMプッシュの際のSENDER IDになります。7.4.2クライアント側のAPIのGcmRegister.register()に渡すものと同じ内容です。 以下のように指定してください

JSON{"sender_id":"(GCMの開発者コンソールから入手したSENDER IDの値)"}

注2)「IMAPSプッシュ通知を利用するネイティブアプリケーションの開発」の1.マニフェストファイルの修正を参照してください。

注3)「GCMプッシュ通知を利用するネイティブアプリケーションの開発」の1. マニフェストファイルの修正を参照してください。

注4) iOSの場合、デバイストークン生成時のエラーやIMAPSサーバとの通信エラーは、FJPAppDelegateを継承したサブクラスの[UIAppliationDelegate application:didFailToRegisterForRemoteNotificationWithError:]にコールバックされるため、このインタフェースをオーバライドしてエラー処理の実装が必要です。

ハイブリッドアプリケーションでログ出力を行う場合、7.5.5 ログ出力のカスタマイズを参照してください。

認証の設定は、7.5.6 認証クラスの定義を参照してください。

拡張データを指定する場合は、7.5.7 拡張データの指定を参照してください。

注意

  • ダウンロード方法により読み込み専用ファイルとなる場合がありますが、プロジェクト読み込み時にファイルの書き込み権限が必要となりますので、その際は権限の付与など必要な対処を実施してください。