gpt4 book ai didi

java - Android gcm 通知无法打开应用程序

转载 作者:行者123 更新时间:2023-12-01 11:30:19 24 4
gpt4 key购买 nike

我使用下面的代码作为我的接收器,我想打开应用程序并指定特定的 Activity ,但它不起作用,并且单击通知时没有任何反应:

PendingIntent pIntent = PendingIntent.getActivity(this, 0, intent, 0) 

NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
Notification n = builder.setContentIntent(pIntent)
.setSmallIcon(R.drawable.ic_launcher)
.setTicker(title)
.setWhen(System.currentTimeMillis())
.setAutoCancel(true)
.setContentTitle(title)
.setContentText(msg)
.build();
n.defaults |= Notification.DEFAULT_VIBRATE;
n.defaults |= Notification.DEFAULT_SOUND;
mNotificationManager.notify(0, n);

这是我之前初始化的 Intent :

Intent intent = new Intent(this, Activity_Notification.class);

这是我的 list 的权限:

<permission
android:name="com.rahil.googlemapsv2.permission.MAPS_RECEIVE"
android:protectionLevel="signature" />

<uses-permission android:name="com.rahil.aidapp.googlemapsv2.permission.MAPS_RECEIVE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.VIBRATE" />
<permission android:name="com.rahil.aidapp.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name="com.rahil.aidapp.permission.C2D_MESSAGE" />

这是接收者:

<receiver
android:name="com.rahil.gcm.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.rahil.gcm" />
</intent-filter>
</receiver>
<service android:name="com.rahil.gcm.GcmIntentService" />

最佳答案

Intent resultIntent = new Intent(this, ResultActivity.class);
...
// Because clicking the notification opens a new ("special") activity, there's
// no need to create an artificial back stack.
PendingIntent resultPendingIntent =
PendingIntent.getActivity(
this,
0,
resultIntent,
PendingIntent.FLAG_UPDATE_CURRENT
);

来自Android docs

关于java - Android gcm 通知无法打开应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30453495/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com