IMAPSプッシュ通知を利用するネイティブアプリケーション向けのAPIはJavaで提供します。
IMAPS向けのネイティブアプリケーションの開発環境を準備後、以下のファイルを解凍してコピーしてください。開発環境については、「1.2.2 開発環境とライセンス」を参照してください。
Windows版サーバの場合:
<製品インストールフォルダー>\development\android\push\native
Linux版サーバの場合:
/opt/FJSVimsrv/development/android/push/native
上記ディレクトリから開発用端末に資産をコピーし、プロジェクトとしてインポートします。次に、インポートしたプロジェクトを参照ライブラリプロジェクトとして設定します。
IMAPSプッシュ通知を利用するネイティブアプリケーションの開発には、以下の作業が必要です。
マニフェストファイルの修正
プッシュクライアント設定ファイルの作成
プッシュクライアント設定ファイル設定、プッシュハンドラ初期化処理の作成
1.マニフェストファイルの修正
Wi-Fi機能の状態を参照(WiFi MACアドレスを利用)するため、以下のパーミッションを設定してください。
android.permission.ACCESS_WIFI_STATE
IMEIを取得するため、以下のパーミッションを設定してください。IMEI(International Mobile Equipment Identifier)は、端末識別番号です。
android.permission.READ_PHONE_STATE
ネットワークの接続/切断状態を取得するため、以下のパーミッションを設定してください。
android.permission.ACCESS_NETWORK_STATE
プッシュ受信用のサービスをアプリケーション起動時及び端末起動時に自動起動するには、以下の指定が必要です。
端末の起動が完了したことをサービスが受け取れるように、以下のパーミッションを指定してください。
"android.permission.RECEIVE_BOOT_COMPLETED"
レシーバーがインテントを受け取れるようにインテントフィルターと以下のパーミッションを指定してください。
action android:name="android.intent.action.BOOT_COMPLETED
サービスとして、com.fujitsu.imaps.push.PushServiceクラス、または、その派生クラスを指定してください。
レシーバーとして、com.fujitsu.imaps.push.BootReceiverを指定してください。
... <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<application ...> <activity ...> ... </activity> <service android:name="com.fujitsu.xxx.push.PushService" />
<receiver android:name="com.fujitsu.imaps.push.BootReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
</receiver>
2. プッシュクライアント設定ファイルの作成
プッシュハンドラに渡すパラメータを、プッシュクライアント設定ファイル(push.properties)に設定します。プッシュクライアント設定ファイルについては、「付録G プッシュクライアント設定ファイル」を参照してください。
3. プッシュクライアント設定ファイル設定、プッシュハンドラ初期化処理の作成
プッシュクライアント設定ファイル情報は、プッシュハンドラを利用する前に設定してください。
以下はプッシュクライアント設定ファイルの設定例です。
// プッシュサーバとの接続先をプッシュクライアント設定ファイルに設定する push.ServerAddress = https://example.com/ push.SelfCertificate = true
以下はプッシュハンドラ初期化処理の例です。
// プッシュハンドラの初期化 PushManager pm = new PushManager(context); pm.bind(PushService.class); try { pm.init(); } catch (PushException e) { e.printStackTrace(); }
ログ出力を行う場合、「7.5.5 ログ出力のカスタマイズ」を参照してください。
認証の設定は、「7.5.6 認証クラスの定義」を参照してください。
拡張データを指定する場合は、「7.5.7 拡張データの指定」の指定を参照してください。
エラー通知受け取りを行う場合、「7.5.8 IMAPSプッシュの処理結果受け取り」を参照してください。
注意
ダウンロード方法により読み込み専用ファイルとなる場合がありますが、プロジェクト読み込み時にファイルの書き込み権限が必要となりますので、その際は権限の付与など必要な対処を実施して下さい。