Android

OneSignal導入手順 【Android編】

onesignal 見出し

LINEも使っている、無料のプッシュ通知サービス、OneSignalの導入方法を解説します!

今回はAndroid編。

iOS編はコチラ

onesignal 見出し
OneSignal導入手順 【iOS編】LINEも使っている、無料のプッシュ通知サービス、OneSignalの導入方法を解説します! 今回はiOS編。 Androi...

 

全部英語ですが頑張っていきましょう!

 

 

会員登録

まずは、会員登録です。

https://onesignal.com/

「Get Started Now」!

お好きな方法でどうぞ。

 

 

FCM (Firebase Cloud Messaging) の設定

ログインしたら、Appsタブにある
「New App/Website」
をクリック

 

表示名を入れたら、プラットフォームを選択。

今回はAndroidなので
「Google Android(FCM)」
をクリックします。
organizationはそのままでOK。

「Next: Configure Your Platform」をクリック。

「Firebase Server Key」「Firebase Sender ID」の入力画面が出てきて一気に面倒そうな雰囲気になりますが、これらの値はfirebaseプロジェクトに書いてあるので、安心して下さい。

この時点でAndroidアプリ用のfirebaseプロジェクトを作成していない人は下記の公式リンクを参考に、firebaseプロジェクトを作成してから戻ってきてください。

Android プロジェクトに Firebase を追加する
https://firebase.google.com/docs/android/setup?hl=ja

 

Firebaseプロジェクトを開いて「左上にある歯車」を押して
「プロジェクトを設定」
をクリック。

 

プロジェクト設定画面が開いたら
「Cloud Messaging」タブ
を選ぶと、そこにサーバーキー送信者IDが書いてあるので、先程のOnesignalの入力欄にコピペして「Next」をクリック

 

プラットフォームの選択画面が出てくるので
「Native Android」
を選んで「Next」をクリック。

 

これで、OneSignal用のIDが発行されるので、コピーをしておいて、AndroidStudio上での、OneSignalのSDK設定に移ります。

 

OneSignal SDKの設定

公式リンク「Android SDK Setup」
https://documentation.onesignal.com/docs/android-sdk-setup

ココからはAndroidStudioを開いて、OneSignal SDKをセットアップしていきます。

まずプロジェクトレベルのgradleファイルを開いて以下を追加

buildscript {
 repositories {
  google()
  jcenter()
  gradlePluginPortal()
 }
 dependencies {
 classpath ‘gradle.plugin.com.onesignal:onesignal-gradle-plugin:[0.12.9, 0.99.99]’
 }
}

 

次にモジュールレベルのgradleファイルを開いて以下を追加

plugins {
 id ‘com.onesignal.androidsdk.onesignal-gradle-plugin’
 // Other plugins here if pre-existing
}

dependencies {
 implementation ‘com.onesignal:OneSignal:[4.0.0, 4.99.99]’
}

これで「Sync Now」をクリックしてプラグインのインストール

 

最後に、Applicationのサブクラスか、MainActivityonCreateにOneSignalの初期化処理を書いて完了です。

 

import com.onesignal.OneSignal;

override fun onCreate(savedInstanceState: Bundle?) {
 super.onCreate(savedInstanceState);

 // Enable verbose OneSignal logging to debug issues if needed.
 OneSignal.setLogLevel(OneSignal.LOG_LEVEL.VERBOSE,  OneSignal.LOG_LEVEL.NONE);

 // OneSignal Initialization
 OneSignal.initWithContext(this)
 OneSignal.setAppId( [ ONESIGNAL_APP_ID ] )
}

[ ONESIGNAL_APP_ID ]は、先程、Firebase Serve KeyFirebase Sender IDをコピペして発行したIDです。

忘れちゃった場合は、OneSignalの管理画面にできているアプリのプロジェクトを選択して
「Settings」> 「Keys & IDs」
を選ぶと「ONESIGNAL APP ID欄」に書いてあります。

 

onCreateにOneSignalの初期化処理が書けたら、シミュレータでも良いので、実行。

OneSignalの管理画面にある
「Audience」> 「Segments」
のSubscribed Usersに「1」と登録されれば成功です!
登録されない場合は…泣きながらトラブルシューティングして下さい。

 

 

送信テスト

以上の設定が全て完了したら、OneSignalの管理画面にある「Messages」タブの
「New Push」
をクリックして

適当にTitleとMessageを入力して送信。

ちなみに
「Add Languages」
リンクをタップすると言語が選べて、国ごとにメッセージを変えられます。

端末にメッセージが届きます 👍

 

Twitterでも情報を発信していますので、フォロー宜しくお願い致します。