gpt4 book ai didi

android - 为什么 "Activity Screen"在 Redmi 设备中从后台服务启动 Activity 时不显示最近的应用程序

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:00:24 25 4
gpt4 key购买 nike

在我的 android 应用程序中,我通过推送通知从后台启动我的服务。当我收到推送通知时,我使用以下代码唤醒我的 Activity :

   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);

一旦我的 Activity 被唤醒,我按下我的主页按钮。当尝试通过单击最近的应用程序打开我的应用程序时,我的传入 Activity 没有显示在最近的应用程序列表中。这种情况只发生在 redmi mi 设备上,相同程序适用于摩托罗拉。如何解决这个问题?

最佳答案

上述问题的答案:

我只是在唤醒 incomingActivity 时在我的设备系统托盘中使用自定义通知。在 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 体系结构中都有不同,所以我使用这种格式的原因。

谢谢。

关于android - 为什么 "Activity Screen"在 Redmi 设备中从后台服务启动 Activity 时不显示最近的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49254836/

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