startActivity无法启动activity

uu00soldier 2019-07-09 04:10:37
最近发现一个代码,以前测试都通过了,最近在MIUI的系统上失效了,试了各种启动方法都不行,希望哪位可以指点一二;
需求:
在Activity A中,使用startActivity去启动Activity B;
当APP在前台的时候没有问题,可以正常调起B;但是通过按home键,隐藏到后台之后,就无法调起B了
在vivo、华为手机上是正常的,可以正常调起B;在miui的系统上就不行
下面的GIF是在vivo手机上的效果;


调起代码:

public static void startActivity(Context cxt, String dialInfo, String roomId) {
Bundle bundle = getBaseBundle(dialInfo);
bundle.putString(ImConstants.Bundle.CHAT_ID, roomId);

Intent intent = new Intent(cxt, B.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
intent.putExtras(bundle);
cxt.startActivity(intent);
}


哪位有相关的解决办法没,求解决
...全文
2510 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
小Q儿 2021-07-15
  • 打赏
  • 举报
回复

解决了吗?

uu00soldier 2021-08-04
  • 举报
回复
@小Q儿 没有,系统不支持
江疏寒 2021-01-27
  • 打赏
  • 举报
回复
最后怎么解决的。
王能 2019-07-12
  • 打赏
  • 举报
回复
小米手机增加了后台启动的权限,默认是关闭的,你可以看看是否有对应的api,或者判断如果是MIUIx(不知道是几开始的)就提示用户开启后台启动权限(app的权限里面最后有“后台弹出界面”这个权限)
uu00soldier 2019-07-12
  • 打赏
  • 举报
回复
我也看到了这个,是MIUI系统的一个权限,不是原生的,目前没有找到相关可以检测、申请权限的api,哪位胸弟知道的请留言啦; MIUI公告:【开发者】关于默认关闭“后台弹出页面”权限的通知; 我直接绕过去了,电话咨询了客服、没有api、没有白名单,开发者没有任何手段去提示用户;我也是醉了!
uu00soldier 2019-07-10
  • 打赏
  • 举报
回复
引用 7 楼 m-oj 的回复:
[quote=引用 5 楼 uu00soldier 的回复:] [quote=引用 4 楼 m-oj 的回复:] [quote=引用 3 楼 uu00soldier 的回复:] [quote=引用 2 楼 m-oj 的回复:] 有什么报错吗,据我所知8.0以上系统限制了后台启动activity
没有报错,代码都正常走了,只是没有调起界面[/quote] 你的context是Application吗?试试用Application来启动你的activity[/quote] 你是说这样么?cxt.getApplicationContext().startActivity(intent); 不行哦[/quote] 好像是要栈顶的activity才行,你试一下给这个activity设置一个activityaffinity,[/quote] 你说的是在manifest中设置taskAffinity这个属性值吗? 测试了下不管用
m-oj 应用层 2019-07-09
  • 打赏
  • 举报
回复
引用 5 楼 uu00soldier 的回复:
[quote=引用 4 楼 m-oj 的回复:] [quote=引用 3 楼 uu00soldier 的回复:] [quote=引用 2 楼 m-oj 的回复:] 有什么报错吗,据我所知8.0以上系统限制了后台启动activity
没有报错,代码都正常走了,只是没有调起界面[/quote] 你的context是Application吗?试试用Application来启动你的activity[/quote] 你是说这样么?cxt.getApplicationContext().startActivity(intent); 不行哦[/quote] 好像是要栈顶的activity才行,你试一下给这个activity设置一个activityaffinity,
yung7086 2019-07-09
  • 打赏
  • 举报
回复
你activity都退到后台了,还启动跳转这个本来逻辑就有问题呀,一定有很多问题出现。除非做的微信那种强大,而且微信我也有时候掉不出来通话界面呢
uu00soldier 2019-07-09
  • 打赏
  • 举报
回复
引用 4 楼 m-oj 的回复:
[quote=引用 3 楼 uu00soldier 的回复:] [quote=引用 2 楼 m-oj 的回复:] 有什么报错吗,据我所知8.0以上系统限制了后台启动activity
没有报错,代码都正常走了,只是没有调起界面[/quote] 你的context是Application吗?试试用Application来启动你的activity[/quote] 你是说这样么?cxt.getApplicationContext().startActivity(intent); 不行哦
m-oj 应用层 2019-07-09
  • 打赏
  • 举报
回复
引用 3 楼 uu00soldier 的回复:
[quote=引用 2 楼 m-oj 的回复:] 有什么报错吗,据我所知8.0以上系统限制了后台启动activity
没有报错,代码都正常走了,只是没有调起界面[/quote] 你的context是Application吗?试试用Application来启动你的activity
uu00soldier 2019-07-09
  • 打赏
  • 举报
回复
引用 2 楼 m-oj 的回复:
有什么报错吗,据我所知8.0以上系统限制了后台启动activity
没有报错,代码都正常走了,只是没有调起界面
m-oj 应用层 2019-07-09
  • 打赏
  • 举报
回复
有什么报错吗,据我所知8.0以上系统限制了后台启动activity
uu00soldier 2019-07-09
  • 打赏
  • 举报
回复
急,在线等,这个问题太奇怪了,好像只有miui才会有

80,349

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧