在选定的时间没有发送通知,当我运行代码时,直接显示了通知并显示了错误。下面是错误消息:E/NotificationManager:notifyAsUser:tag=null,id=12345,user=UserHandle{0}。我以为错误消息是由于生成的。版本SDK_INT,但添加之后,错误消息仍然存在。
将所有这些放在onCreate下:
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, 13);
calendar.set(Calendar.MINUTE,9)
;
Intent intent = new Intent ();
intent.setAction("com.example.Broadcast");
PendingIntent contentIntent = PendingIntent.getBroadcast(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
//PendingIntent alarmIntent=PendingIntent.get广播(this,0, Intent,0);
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), AlarmManager.INTERVAL_DAY, contentIntent);
这里是延伸。
public class wakeReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
setNotification(context);
}
protected void setNotification(Context context){
PendingIntent contentIntent = PendingIntent.getActivity(context, 0,
new Intent(context, MainActivity.class), 0);
String ChannelId = "12345";
int uniID = 12345;
NotificationCompat.Builder builder = new NotificationCompat.Builder(context,ChannelId )
.setSmallIcon(R.mipmap.ic_launcher_round)
.setContentTitle("Hi")
.setAutoCancel(true)
.setWhen(System.currentTimeMillis())
.setContentText("Please Rate.");
builder.setContentIntent(contentIntent);
////向设备发送通知NotificationManager=(NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
builder.setChannelId("com.myApp");
}
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
NotificationChannel channel = new NotificationChannel(
"com.myApp",
"My App",
NotificationManager.IMPORTANCE_DEFAULT
);
if (manager != null) {
manager.createNotificationChannel(channel);
}
}
manager.notify(uniID, builder.build());
}
}
有人能帮我弄一下吗?
你很困惑。
在您的代码中,您调用NotificationManager.notify()
。这将立即显示通知
。
你会:
Intent intent = new Intent(this, MainActivity.class);
PendingIntent alarmIntent = PendingIntent.getBroadcast(this,0, intent,0);
这不起作用。您已经创建了一个PendingIntent
,它将使用Intent
通过广播发送,该Intent
适用于活动
!您希望发生什么?您希望启动活动
还是触发BroadcastRecencer
?
我想你要做的是:
BroadcastReceiver
创建一个Intent
,使用getBroadcast()
将其包装在一个pendingent
中,并将其传递给AlarmManager
,以便在未来某个时间设置广播Intent
onReceive()
中创建通知
并调用通知管理器。notify()
发布通知
。在通知
中,您可以设置一个挂起内容
,打开您的活动
,这样,如果用户点击通知
,您的活动
将启动。要执行此操作,请调用pendingent。getActivity()
并传递包含main活动的Intent
。类
我创建了一个调查页面,但是当有人没有学分时,我想使用react-通知向用户显示通知,我已经测试了这个按钮,并且它可以独立工作,但是当我在onClark事件中使用react-router-dom将其添加到标签中时,函数运行,但通知不显示。这是代码: 所以,当我在上面测试时: 它显示按钮,单击时不显示信用,它会记录0信用,但是,它只是重定向到引用的页面,而不显示创建的通知。 在我这边,无论是终端还是控
我在我的Spring MVC4项目中使用了Amazon推送通知。我每天早上8点用CronTrigger向Android应用程序发送推送通知。我还将Timezone与CronTrigger一起使用,这样用户就可以根据各自的时区获得通知。 下面是我的webconfig.java: 更新:在Cron表达式中有一个修正。我纠正了。 但问题还没有解决
这是舱单 这是我的注册令牌类 这是我的Firebase服务类
我的程序对一些输入显示不正确的结果,对另一些输入显示正确的结果。我不知道我在代码中做错了什么。 在我的代码中,我想将一个字符串输入作为一个标签,如果它的每两个连续数字的和是偶数并且它的字母不是元音,那么它就是有效的。我认为字母“A”,“E”,“I”,“O”,“U”,“Y”是这个问题的元音。 输入格式:第一行包含一个长度为9的字符串。格式为“DDXDDD-DD”,其中D代表一个数字(非零),X为大写
我的应用程序生成了一个通知,但我为该通知设置的图标没有显示。取而代之的是一个白色的方块。 我试过调整图标的png大小(尺寸720x720,66x66,44x44,22x22)。奇怪的是,当使用较小的尺寸时,白色的正方形更小。 我搜索了这个问题,以及生成通知的正确方法,从我读到的代码来看,应该是正确的。不幸的是,事情并不像他们应该的那样。
在所有Amadeus自助服务API中,只有一些机场代码有效。例如,“FRA”可以工作,但“TXL”不能。这是因为API是Beta版,我只使用沙盒版本吗? 示例: https://test.api.amadeus.com/v1/shopping/flight-destinations?origin=FRA 作品 https://test.api.amadeus.com/v1/shopping/fli