LoginSignup
13
13

More than 5 years have passed since last update.

AndroidでParse.comからプッシュ通知をする方法(eclipse作業編) 

Last updated at Posted at 2014-04-18

(2014/04/23時点)

・【AndroidでParse.comからプッシュ通知をする方法(eclipse作業編)】

AndroidでParse.comからプッシュ通知をする方法をメモ。

プッシュ通知を行うためには以下2つの作業が必要となる。
 ・Parse.comでの登録作業(webサイト) ←ココの説明はこちらから
 ・Androidアプリのプログラム変更(eclipse) ←今回はココの説明

今回はeclipseでの作業について記載する。

eclipseでの作業を簡単にまとめると以下の通り。
 ①新規プロジェクトを作成する
 ②Prase.comのサイトからParse.jarを取得する
 ③取得したjarをプロジェクトに入れる
 ④AndroidManifest.xmlを変更する
 ⑤メインクラスのonCreateメソッド内を変更する

■eclipseでの作業

①新規プロジェクトを作成する

まずは新規にプロジェクトを作成する。(androidSDK等のインストールは完了している前提で説明を記載します)

eclipseを開き[ファイル]-[新規]-[ Androidアプリケーション・プロジェクト ]を選択
無題.png

「アプリケーション名」「プロジェクト名」を入力し、「 次へ 」を選択
無題.png

以降のページでは任意に内容を選択し「完了」ボタンが出てくるまで「 次へ 」へボタンを押下し、「 完了 」ボタンが出てきたら押下する。

(途中のページ省略)


無題.png

これでプロジェクトの作成は完了。

eclipse上に↓こんなプロジェクトが作成されているはず・・・・。
無題.png

②Prase.comのサイトからParse.jarを取得する

次にParseと連携する上で必要になるjarをParseのサイトから取得する。
Parseのサイトへログインを行い以下の場所からjarを取得する。
無題.png

※ダウンロードしたzipを解凍すると中に「Parse-1.4.3.jar」が入っているため、それを使用する。

③取得したjarをプロジェクトに入れる

取得したjarはそのままでは使用できないためeclipseで作成したプロジェクトのlibsの中に入れビルドの指定を行う。
bf3a0f2c-a0bd-dccc-490b-bc6f044ed9bd.png

プロジェクト上で[右クリック]-[ビルド・パス]-[ ビルド・パスの構成 ]を選択
無題.png

[ライブラリ]タブより「jar追加」を選択し「 OK ]を押下
無題.png

先ほどlibsに入れたjarを選択し「 OK ]を押下
無題.png

④AndroidManifest.xmlを変更する

(1)レシーバーの定義を記述する。

        <service android:name="com.parse.PushService" />
        <receiver android:name="com.parse.ParseBroadcastReceiver">
          <intent-filter>
            <action android:name="android.intent.action.BOOT_COMPLETED" />
            <action android:name="android.intent.action.USER_PRESENT" />
          </intent-filter>
        </receiver>
        <receiver android:name="com.parse.GcmBroadcastReceiver"
            android:permission="com.google.android.c2dm.permission.SEND">
          <intent-filter>
            <action android:name="com.google.android.c2dm.intent.RECEIVE" />
            <action android:name="com.google.android.c2dm.intent.REGISTRATION" />
            <category android:name="com.example.test" />
          </intent-filter>
        </receiver>

上記で注意すべきなのが、自分のプロジェクトによって変更するべき箇所が存在すること。

記述の中に存在する<category>タグの中は自分のプロジェクトのパッケージ名に変更すること。

<category android:name="com.example.test" />

※パッケージ名は以下のところで確認できる。
無題.png

(2)プッシュ通知処理で必要な権限付与を記述する。

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
    <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
    <permission android:protectionLevel="signature"
        android:name="com.example.test.permission.C2D_MESSAGE" />
    <uses-permission android:name="com.example.test.permission.C2D_MESSAGE" />

上記でも(1)と同じように以下の2箇所の記述を変更する。

<permission android:protectionLevel="signature"
        android:name="com.example.test.permission.C2D_MESSAGE" />
    <uses-permission android:name="com.example.test.permission.C2D_MESSAGE" />

上記の記載は「パッケージ名 + .permission.C2D_MESSAGE」を指定する。

== 完成形は以下の通り。==
青文字の部分は自分のプロジェクトに合わせて変更したパッケージ名。
無題.png

⑤メインクラスのonCreateメソッド内を変更する

メインクラス(Activity)内にあるonCreate()メソッド内に以下を記述する。

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


        //追加箇所(1)
        Parse.initialize(this, "アプリケーションIDを入れる", "クライアントIDを入れる");

        //追加箇所(2)
        PushService.setDefaultPushCallback(this, MainActivity.class);
        ParseInstallation.getCurrentInstallation().saveEventually();
    }

追記箇所(1)のParse.initialize()の中には(Parse.com作業編)で確認したそれぞれのIDを記述する。

これで、一度アプリを起動後にParse.comのサイトからプッシュ通知が送付できるようになる。

-----------------------------------------------------------------------------
・Parseからのプッシュ通知送信はココ
-----------------------------------------------------------------------------

参考まで。

【関連】
・AndroidでParse.comからプッシュ通知をする方法(Parse.com作業編)
・Parseからプッシュ通知でAndroidアプリにjsonデータを送る
・Parseからプッシュ通知された時のNotification Icon(ノーティフィケーションアイコン)の変更方法


簡単家計簿 Androidアプリ

音感診断 Androidアプリ

13
13
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
13