如何以编程方式启用xiaomi中的应用程序自动启动

我想知道小米是否可以提供任何应用程序的后台服务? 我有我的应用程序需要在后台运行的服务,在所有的设备工作正常,除了小米,如何可以通过编程来完成?

Solutions Collecting From Web of "如何以编程方式启用xiaomi中的应用程序自动启动"

除非有一些xiaomi的api允许你访问这个function,否则你将无法从代码那里做到这一点。 我猜测自动启动pipe理器是一个应用程序(具有系统应用程序的特权,因为小米修改的操作系统的一部分),因此不可能。 另一方面,如果设备是固定的,则实际上可以禁用自动启动pipe理器。

尽pipe如此,whatsapp,facebook和更多的应用程序,这可能是因为他们有与小米绑在白名单。 但它只是一个猜测。

适用于Xiaomi,oppo,vivo和oneplus手机。

try { Intent intent = new Intent(); String manufacturer = android.os.Build.MANUFACTURER; if ("xiaomi".equalsIgnoreCase(manufacturer)) { intent.setComponent(new ComponentName("com.miui.securitycenter", "com.miui.permcenter.autostart.AutoStartManagementActivity")); } else if ("oppo".equalsIgnoreCase(manufacturer)) { intent.setComponent(new ComponentName("com.coloros.safecenter", "com.coloros.safecenter.permission.startup.StartupAppListActivity")); } else if ("vivo".equalsIgnoreCase(manufacturer)) { intent.setComponent(new ComponentName("com.vivo.permissionmanager", "com.vivo.permissionmanager.activity.BgStartUpManagerActivity")); } else if("oneplus".equalsIgnoreCase(manufacturer)) { intent.setComponent(new ComponentName("com.oneplus.security", "com.oneplus.security.chainlaunch.view.ChainLaunchAppListAct‌​ivity")); } List<ResolveInfo> list = context.getPackageManager().queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY); if (list.size() > 0) { context.startActivity(intent); } } catch (Exception e) { Crashlytics.logException(e); }