以编程方式将我的应用程序添加到Android中的AutoStart apps列表中

asm*_*mgx 15 android autostart android-manifest android-service

我希望我的应用程序在安装后位于自动启动列表中.

我知道当我安装类似(whatsapp)的应用程序时,它会自动进入自动启动列表.我希望我的应用程序是一样的

在此输入图像描述

我试过这个问题中的代码 如何自动启动Android应用程序?

但不幸的是,没有答案实际上使应用程序自动启动.

不确定我是否做错了什么

我需要应用程序自动启动的原因只是从Web服务获取通知.因为除非打开或自动启动,否则应用程序不会收到通知

非常感谢你的帮助

谢谢

Kar*_*rma 6

有些应用程序(例如Whatsapp和Facebook)可能已经被列入选拔名单,这就是为什么它们启用了自动启动选项的原因。

但是我已经为小米设备尝试了以下代码,希望这可能会有所帮助!

    String manufacturer = "xiaomi";
    if(manufacturer.equalsIgnoreCase(android.os.Build.MANUFACTURER)) {
        //this will open auto start screen where user can enable permission for your app
        Intent intent = new Intent();
        intent.setComponent(new ComponentName("com.miui.securitycenter", "com.miui.permcenter.autostart.AutoStartManagementActivity"));
        startActivity(intent);
    }
Run Code Online (Sandbox Code Playgroud)


gal*_*lex 5

此屏幕/行为不是 Android 原生的,这意味着您显示的屏幕来自自定义 ROM,可能来自特定制造商。

就像您所说的,另一个问题中的答案不起作用,但它们是在启动/启动时启动应用程序的唯一本机方式。

检查应用程序/自定义 ROM 是否具有 API(要实现的特定广播接收器,或某些 SDK...)。您始终可以反编译实现此行为的应用程序之一,以查看它们如何显示在此菜单中。


Akk*_*kki 4

很少有流行的应用程序在后台运行而不会在内存清理周期期间被杀死(许多流行的 OEM 定制堆栈 ROM 以进行电池/内存优化),因为它们被这些制造商列入“白名单”。对于您的应用程序,您可以手动(通过设备的相应“设置”)将其列入白名单,也可以通过将用户重定向到相应的设置页面以将应用程序列入白名单来实用。

请在这里查看详细信息