带通知的GCM消息不会打开活动

时间:2015-12-13 14:46:29

标签: android google-cloud-messaging

我正在使用https://github.com/google/gcm中的 gcm-server 库。我的Message已在设备中成功收到数据和Notification,如下所示:

Notification screenshot

服务器代码(在Scala中):

val sender = new Sender(API_KEY)
val notification = new Notification.Builder("@drawable/ic_launcher").titleLocKey("app_name").clickAction("com.myapp.NOTIFY_GENERIC").build
val message = new Message.Builder().addData("foo", "bar").notification(notification).build

sender.send(message, group.toList.asJava, 5)

AndroidManifest.xml

    <receiver
        android:name="com.google.android.gms.gcm.GcmReceiver"
        android:exported="true"
        android:permission="com.google.android.c2dm.permission.SEND">
        <intent-filter android:priority="10"> <-- I also use Localytics -->
            <action android:name="com.google.android.c2dm.intent.REGISTRATION" />
            <action android:name="com.google.android.c2dm.intent.RECEIVE" />

            <category android:name="com.myapp" />
        </intent-filter>
    </receiver>

    <service
        android:name=".gcm.MessageListener"
        android:exported="false">
        <intent-filter>
            <action android:name="com.google.android.c2dm.intent.RECEIVE" />
        </intent-filter>
    </service>

    <activity
        android:name=".IntroActivity_"
        android:label="@string/app_name"
        android:screenOrientation="portrait">
        <intent-filter>
            <action android:name="com.myapp.NOTIFY_GENERIC" />
            <action android:name="android.intent.action.MAIN" />

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

            <!-- http://docs.localytics.com/dev/android.html -->
            <data android:scheme="@string/localytics_intent" />
            <action android:name="android.intent.action.VIEW"/>
            <category android:name="android.intent.category.DEFAULT"/>
            <category android:name="android.intent.category.BROWSABLE"/>
        </intent-filter>
    </activity>

但点按通知只会在不打开活动的情况下解除通知。在没有 Message的情况下发送Notification (并在我的{{ {1}})有效。我哪里做错了?

ADDENDUM#1:我的.gcm.MessageListener

.gcm.MessageListener

ADDENDUM#2:如果活动已经显示,则可以打开该活动。它将再次打开 ,因此当您按BACK时,您将看到相同的活动。

0 个答案:

没有答案