3

私はアンドロイドアプリを開発しています。パース REST API を介してアプリにプッシュ通知を送信できます。しかし、正しい画面を開くには、REST API でアクション フィールド (インテント) を送信する必要があります。現在、ホーム画面を開くだけです。

ホーム(メイン画面)を開くだけです。解析REST APIを介してブランドアクティビティクラス(test.mm.brand)を開く意図を指定するにはどうすればよいですか

私のアンドロイドマニフェストファイルは以下の通りです。

<activity
    android:name=".MofActivity"
    android:label="@string/app_name" >
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

<activity android:name="test.mm.brand" />
<activity android:name="test.mm.CustomizedListView" />
<activity android:name="test.mm.HallofFame" />
<activity android:name="test.mm.VideoList" />

REST リクエスト

curl  -X  POST -H "X-Parse-Application-Id: ntItEUY1LZ949R9zfTWDuZORE6dnjICxOni9L9nU" -H "X-Parse-REST-API-Key: dwYZ2DeKutwtswDgWTYkboIw6hRplwSNDR20GiMt" -H "Content-Type: application/json"  -d '{ "where": { "deviceType": "android" }, "data": { "alert": "Your suitcase has been filled with tiny robots!", "action": "test.mm.brand", "title" : "dddd" } }' https://api.parse.com/1/push
4

1 に答える 1

4

ここで指定されているように、通知を取得するにはレシーバーを作成する必要がありますAndroid 通知の解析 - ペイロードへの応答

これをマニフェストに追加します

<receiver android:name="test.mm.MyCustomReceiver">
<intent-filter>
  <action android:name="test.mm.brand" />
</intent-filter>
</receiver>

このクラスを作成

public class MyCustomReceiver extends BroadcastReceiver {
private static final String TAG = "MyCustomReceiver";

  @Override
  public void onReceive(Context context, Intent intent) {
    try {
      String action = intent.getAction();
      if(action.equalsIngnoreCase("test.mm.brand") {
        Intent intent = new Intent(context, test.mm.brand.class);
        i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(i); 
      }

    }
  }
}
于 2013-05-22T12:47:29.357 に答える