itemstoreitemstore

利用する

チュートリアル

プッシュ通知機能

サンプルコード


public class MainActivity extends Activity {

    private AppC appc;

    〜

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        〜

        // itemstore 初期化
        appc = new AppC(this)
                .setOnStartedListener(new AppC.OnStartedListener() {
                    // AppCSDKの初期化完了時に呼ばれるメソッド
                    @Override
                    public void onStarted(boolean result) {
                        // itemstore初期化処理完了後に呼ばれます。
                        // アプリ起動直後にitemstore関連のメソッドを呼び出す場合は、
                        // このコールバックが呼ばれてから各種処理をお願いします。
                        
                        // プッシュ通知で起動した場合に
                        // プッシュ配信で設定した配信テキスト(カスタムパラメータ)を取得することができます
                        // 例)Log.d("appc", "onStarted: " + appc.Push.getParam());
                    }
                })
                .on(AppC.API.PUSH)
                // .onPush("チャネル名") // Android SDK 2.1.0以降
                // .onPush(MainActivity.class) // Android SDK 2.1.0以降
                // .onPush(MainActivity.class, "チャネル名") // Android SDK 2.1.0以降
                .setMediaKey(_MEDIA_KEY)
                .start();
        
        /*
        Android SDK 2.1.0以降でプッシュ通知機能を利用する場合、
        on(AppC.API.PUSH)の代わりに以下の記述方法でも初期化が可能です
        .onPush(MainActivity.class) // プッシュ通知タップ時に起動するActivityの指定のみ
        .onPush("チャネル名") // プッシュ通知のチャネル名の設定のみ
        .onPush(MainActivity.class, "チャネル名") // プッシュ通知タップ時に起動するActivityの指定、およびチャネル名の設定
        
        プッシュ通知タップ時に起動するActivityは、デフォルトではappC SDKを初期化したActivityになっています
        プッシュ通知タップ時に任意のActivityを起動したい場合はActivityのclassを指定してください
        
        プッシュ通知のチャネル名を設定しない場合は、デフォルトではチャネル名に「プッシュ通知」が設定されております
        端末の言語設定に合わせて表示したい場合は適宜チャネル名を設定してください
        
        Android SDK 2.1.0以降ではプッシュ通知で表示するアイコンを初期化の際に指定しないように変更しております
        プッシュ通知で表示するアイコン画像を変更したい場合は、AndroidManifest.xmlを適宜設定してください
        */
        
        〜
        
    }

    @Override
    protected void onNewIntent(final Intent intent) {
        super.onNewIntent(intent);
        // アプリがタスク状態でプッシュ通知があった場合にカスタムパラメータを取得することができます
        
        // プッシュ通知で起動した場合に
        // プッシュ配信で設定した配信テキスト(カスタムパラメータ)を取得することができます
        // 例)Log.d("appc", "onNewIntent: " + appc.Push.getParam());
    }

    @Override
    public void finish() {
        // itemstore 終了
        appc.finish();
        
        super.finish();
    }

    〜
    
}

// プッシュ通知メソッド

// 配信テキスト(カスタムパラメータ)を取得
String customParameter = appc.Push.getParam();

// お問合せキーを取得
String inquiryKey = appc.getInquiryKey();

AndroidManifest.xmlの設定

必要に応じてご利用ください。その他必要な項目があれば適宜追記してください。


<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="[パッケージ名]">

    <!-- require AppC -->
    <uses-permission android:name="android.permission.INTERNET" />
    
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

        <!-- require Push Start -->
        <service android:name="net.app_c.sdk.fcm.InstanceIdService">
            <intent-filter>
                <action android:name="com.google.firebase.INSTANCE_ID_EVENT" />
            </intent-filter>
        </service>
        <service android:name="net.app_c.sdk.fcm.FcmListenerService">
            <intent-filter>
                <action android:name="com.google.firebase.MESSAGING_EVENT" />
            </intent-filter>
        </service>

        <meta-data
            android:name="com.google.firebase.messaging.default_notification_icon"
            android:resource="@mipmap/ic_launcher" />

        <!-- プッシュ通知アイコンの色を変更する場合は以下を設定してください
        <meta-data android:name="com.google.firebase.messaging.default_notification_color"
            android:resource="@color/colorPrimary" />
         -->
        <!-- require Push End -->

    </application>
</manifest>

Gradleの設定

ルート直下およびappフォルダ配下のbuild.gradleにそれぞれ以下の記述を追加してください。
その他必要な項目や、バージョン等は適宜設定してください。
また、Gradleの設定に関してはFCMの各ドキュメントをご確認ください。

ルート直下のbuild.gradle


〜

buildscript {

    〜
    
    dependencies {
        
        〜
        
        classpath 'com.google.gms:google-services:4.0.0'
        
        〜
        
    }
    
    〜
    
}

〜

allprojects {

    〜
    
    repositories {
        
        〜
        
        maven { url "https://maven.google.com" }
        
        〜
        
    }
}

〜

appフォルダ配下のbuild.gradle


〜

dependencies {
    
    〜
    
    compile 'com.google.firebase:firebase-core:12.0.1'
    compile 'com.google.firebase:firebase-messaging:12.0.1'
    
    〜
    
}

〜

apply plugin: 'com.google.gms.google-services'

google-services.jsonファイルの設置

Firebase Consoleよりgoogle-services.jsonファイルをダウンロードし、appフォルダ配下に設置してください。
Firebase Consoleでの各種設定に関しては[デベロッパーサイトでの設定] -> [Android] -> [プッシュ通知に必要な設定] -> [Firebase Consoleの設定]をご覧ください。


今すぐ利用してみる

※新規登録後はトライアルです。プレミアムのご利用は管理画面からお申込みください。
※プレミアムプランを初めてご利用の方のみ初月無料となります。