一 .oppo后台无法启动activity
今天测试给我提bug ,OPPO 手机 应用退出后台后,无法接受视频通话界面,就是应用在后台,service中无法启动activity,找了各种问题,以为是启动Context 的问题,换成 applicaiton 还是不可以
/**
* 视频邀请界面
*
* @param mType :页面的类型 1:视频呼叫 2:视频邀请 3:视频通话
* @param mCallId :会话id
*/
public static void startNewTaskVoiceCallActivity(Context context, int mType, int mCallId, String mHostId, String mUserId, String mHeadUrl, String mName, int CallType) {
Intent intent = new Intent(context, VoiceCallActivity.class);
// intent.setAction(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra("CallType", CallType);
intent.putExtra("Type", mType);
intent.putExtra("CallId", mCallId);
intent.putExtra("HostId", mHostId);
intent.putExtra("HeadUrl", mHeadUrl);
intent.putExtra("UserName", mName);
intent.putExtra("UserId", mUserId);
LogUtils.d("suyan","================启动页面");
context.startActivity(intent);
}
二.官网回复
认为是系统问题,然后去oppo 官网查看 oppo 手机启动activity 有很多问题,如后台启动,锁屏启动,等等
https://bbs.coloros.com/forum.php?mod=viewthread&tid=324500
官方给出回应:
应用在后台收广播弹出界面不是友好、规范的做法,系统会对这类弹出的界面进行拦截。
三.解决办法
好在找到了解决办法
1.尝试在手机管家里,将该应用添加为允许自启动;
2.点击手机机身下方左边多任务键,在多任务界面下拉目标应用,锁定该应用,避免被清理;
3.设置-电池,耗电保护中,将目标应用设置为关闭后台冻结,关闭检测到异常自动优化。
这样设置后在测试,后台就能启动activity了
四.总结
这次拿到oppo R9手机 看到了很多问题,oppo 手机默认把自启动关闭,oppo 手机默认把推送关闭,如果发现在oppo 手机上有bug 其他手机没bug ,就看看oppo 手机的设置问题。