@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, "EBR triggered", Toast.LENGTH_LONG).show();
//以下代码不起作用。我从stackOverflow//PendingIntent PendingIntent=PendingIntent.getActivity(context,1,intent,0)中复制它;
Notification.Builder builder = new Notification.Builder(context);
builder.setAutoCancel(false);
builder.setTicker("Ticker text");
builder.setContentTitle("Content of Notification");
builder.setContentText("You have a new message");
builder.setSmallIcon(R.mipmap.ic_launcher);
builder.setContentIntent(pendingIntent);
builder.setOngoing(true);
builder.setSubText("This is subtext...");
builder.setNumber(100);
builder.build();
// add as notification
NotificationManager manager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
manager.notify(0, builder.build());
}
}
没有错误,我希望有一个通知图标出现时,广播接收,但什么也没有发生。
下面是一个简单的广播接收示例。
应用程序1(发件人)
Intent intent = new Intent("MY_NOTIFICATION");
intent.setComponent(
new ComponentName("com.example.stackoverflow", "com.example.stackoverflow.MyReceiver")
);
intent.putExtra("data","Notice me senpai!");
sendBroadcast(intent);
应用程序2(接收器)
...
<receiver android:name=".MyReceiver">
<intent-filter>
<action android:name="MY_NOTIFICATION"/>
</intent-filter>
</receiver>
public void onReceive(Context context, Intent intent) {
String data = intent.getStringExtra("data");
Toast.makeText(context, data, Toast.LENGTH_LONG).show();
NotificationManagerCompat notificationManager = NotificationManagerCompat.from(context);
NotificationChannel channel = new NotificationChannel("CHANNEL_ID", "name", NotificationManager.IMPORTANCE_DEFAULT);
channel.setDescription("description");
notificationManager.createNotificationChannel(channel);
NotificationCompat.Builder builder = new NotificationCompat.Builder(context, "CHANNEL_ID")
.setSmallIcon(R.drawable.ic_launcher_background)
.setContentTitle("textTitle")
.setContentText(data)
.setPriority(NotificationCompat.PRIORITY_DEFAULT);
notificationManager.notify(1, builder.build());
}
把我的城市飞艇升级到7.2。没有编译错误和应用程序运行良好,直到它收到一个推送消息。此时,它将崩溃,出现以下堆栈跟踪: 当我检查类是否可见(Cmd-O)并开始键入时,类立即出现。 有人遇到过这个吗?我不知道怎么修好它。多谢了。
我刚刚实现了一个GCM应用程序,它在GCM消息到达时显示通知。当消息到达时,如何启动应用程序?和viber一样。当消息到达时,你得到一个弹出框。 编辑: 非常感谢您的帮助,但我想你们大多数人都解释过需要用户单击通知才能启动应用程序。无论前台是什么应用程序,甚至当应用程序处于后台或基态时,我都需要在GCM消息到达后立即自动启动活动。 这是我的GCMIntentService代码:
我试图在Android中创建一个应用程序,仅由1个广播接收器(而不是其他)组成。 广播接收器应该简单地捕捉广播(例如收到的短信,记录信息并完成)。然而,我注意到广播没有被接收器捕捉到,除非我指出我有主活动,如下Androidanifest.xml将显示: 我甚至不需要在应用程序中有一个活动类。此外,如果我在意图过滤器中删除android.intent.category.LAUNCHER或andro
SQL错误[42601]:在“”后面发现意外标记“(标签CHAR(30),值VARCHAR(1))”。所需的标记可能包括:“E@DateType TABLE”..SQLCODE=-104,SQLSTATE=42601,Driver=4.21.29
我正在使用FCM进行通知。FCM在从Firebase数据库创建数据时被触发。我收到了第一条信息。在此之后,不会接收到其他连续的消息。我在本地环境下运行这个。问题是由于以下消息“未配置计费帐户。外部网络无法访问,配额受到严重限制。配置计费帐户以消除这些限制”或任何其他问题造成的。我是否需要进入接收消息的计费计划。在测试环境中工作,这是不转移到计费计划的原因。如果问题与计费计划无关,可以有人指出代码的
我可能已经阅读了所有其他与此相关的SO线程,但我找不到答案,而且在Android监视器中也没有日志跟踪。有人对此有提示吗?