当从最近的 oppo 和 vivo 手机中删除我的应用程序时,后台服务停止,并且广播接收器在这种情况下也无法正常工作。
4 回答
我对 Oppo、Vivo、Mi 等手机也有同样的问题,
- 从最近的应用程序中删除后,应用程序被杀死,甚至服务也被杀死
解决方案:我在我的应用程序中添加了这样的自动启动权限并且它有效。
解决此问题后,由于打盹模式,我的应用程序在后台运行一段时间后被冻结/杀死
完成上述操作后:
intent.setClassName("com.coloros.oppoguardelf", "com.coloros.powermanager.fuelgaue.PowerConsumptionActivity"); 开始活动(意图);
调用上述意图,它会将您重定向到电池选项,“禁用背景冻结,异常应用程序优化和打盹来自\“节能器 - > youAPP”
注意:调用上述意图后,您可能会获得不同的选项来关闭省电选项。
是的,您必须返回 START_STICKY;
请参考此链接:
https://www.tutorialspoint.com/android/android_services.htm
例子 :
public class MyService extends Service {
@Nullable
@Override
public IBinder onBind(Intent intent)
{
return null;
}
@Override
public int onStartCommand(Intent intent, int flags, int startId)
{
// Let it continue running until it is stopped.
Toast.makeText(this, "Service Started", Toast.LENGTH_LONG).show();
return START_STICKY;
}
@Override
public void onDestroy() {
super.onDestroy();
Toast.makeText(this, "Service Destroyed", Toast.LENGTH_LONG).show();
}
}
您需要让您的用户在他们的设置中将您的应用列入白名单,以便它在这些手机中运行。这些手机上的自定义操作系统只允许像whatsapp、fb等白名单的应用程序在后台运行,其他应用程序必须从设置中手动加入白名单
是的。
如果您希望服务重新开始,您需要将其配置为“粘性”:
https ://developer.android.com/reference/android/app/Service.html#START_STICKY
完成此操作后,请按照接受的答案进行操作,它将起作用。