在我的Android应用程序中,我通过推送通知从后台启动我的服务。当我收到推送通知时,我正在使用以下代码唤醒我的活动:
Intent it = new Intent("intent.my.action");
it.setComponent(new ComponentName(context.getPackageName(),IncomingActivity.class.getName()));
it.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.getApplicationContext().startActivity(it);
一旦我的活动被唤醒,我按下我的主页按钮。当我尝试通过点击最近的应用程序打开我的应用程序时,我的传入活动未显示在最近的应用程序列表中。这种情况仅发生在redmi mi设备中,相同程序适用于摩托罗拉。 如何解决这个问题?
答案 0 :(得分:2)
上述问题的答案:
我只是在我的设备systemTray中使用自定义通知,同时唤醒了incomingActivity.In onCreate()我正在创建customNotification,然后当IncomingActivity进入onDestroy()时我清除了Customnotification。
我使用下面的代码,然后使用方法格式来创建CustomNotification:
public void setNoticationAfterCallAttendedView(Context view, String callerName, String status,Bitmap bitmap)
{
Intent notificationIntent = new Intent(view, IncomingCallActivity.class);
NotificationCompat.Builder builder =
new NotificationCompat.Builder(view)
.setSmallIcon(R.drawable.logo,3)
.setContentTitle(callerName)
.setOngoing(true)
.setLargeIcon(bitmap)
.setContentText(status) ;
PendingIntent contentIntent = PendingIntent.getActivity(view, 0, notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT);
builder.setContentIntent(contentIntent);
NotificationManager manager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
manager.notify(10000, builder.build());
}
我使用下面的代码,然后使用方法格式来清除CustomNotification:
public void clearNotification()
{
if(this!=null) {
NotificationManager manager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
manager.cancel(10000);
}
}
我希望这个解决方案对某人有所帮助。在每个android体系结构都有不同之处,为什么我要使用这种格式。
感谢。