无法从使用Firebase的通知中启动特定活动
问题描述:
我尝试从新通知添加到数据库(我正在使用Firebase数据库)时更新的通知中启动活动。无法从使用Firebase的通知中启动特定活动
通知完美,但每当我试图从通知启动UserDashboardActivity。它不工作。
任何人都可以帮助我。
我的代码:
这里面服务
public class NotificationService extends Service {
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
notifyMe(order.amount);
return START_STICKY;
}
private void notifyMe(String amount){
NotificationCompat.Builder builder = new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.add_order)
.setContentTitle("New Order")
.setContentText("Order amount: " + amount)
.setAutoCancel(true);
Intent notificationIntent = new Intent(this,UserDashboardActivity.class);
notificationIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntent contentIntent = PendingIntent.getActivity(this,0,notificationIntent,PendingIntent.FLAG_UPDATE_CURRENT);
builder.setContentIntent(contentIntent);
NotificationManager manager = (NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
manager.notify(0,builder.build());
}
}
通知代码时UserDoashboardActivity停止
@Override
protected void onStop() {
super.onStop();
Intent intent = new Intent(UserDashboardActivity.this, NotificationService.class);
startService(intent);
}
答
尝试在notifyMe这个代码()函数我开始服务。 ..
Intent intent = new Intent(this, YourActivityName.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0 /* Request code */, intent,
PendingIntent.FLAG_ONE_SHOT);
只是为了说清楚 - 如果您将UserDashboardActivity替换为任何其他活动,它是否有效? – SadClown
是的...... –
另外我开始从UserDashboardActivity的服务 –