繁体   English   中英

如何在MI 4i安全APP中以编程方式为我的应用启用自动启动选项?

[英]How to programmatically enable Autostart option for my app in MI 4i security APP?

有关屏幕截图和详细信息,请单击此处

请提供相关的建议或代码,了解如何为我的应用添加自动启用自动启动,请在此处查看附带的屏幕截图。

试试这个...它对我有用。 它将打开屏幕以启用自动启动。

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);
        }

很少有OEM(RedMi)定制堆栈ROM以进行电池/内存优化,并阻止了“onDestroy()”和“onTaskRemoved”回调。 作为用户,您可以通过锁定应用程序来阻止应用程序的服务被杀死。 或者,白色通过启用应用程序的“自动启动”设置列出应用程序。 以编程方式,您可以提示用户启用应用程序的自动启动请在此处查找详细信息

请注意:我已经在少数设备上以编程方式测试了自动启动,但发现它始终无法正常工作。 请查看上面的链接以查看可能的选项。

首先,您需要在清单上获得许可:

 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

仍然在清单中你需要在你的内部添加一个brodcast接收器

<application>

元件:

<receiver android:name="net.example.MyOwnBroadcastReceiver">  
<intent-filter>  
    <action android:name="android.intent.action.BOOT_COMPLETED" />  
</intent-filter>  

在你的班级“MyOwnBroadcastReceiver”之后

package net.example;

public class MyOwnBroadcastreceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        Intent startServiceIntent = new Intent(context, MyService.class);
        context.startService(startServiceIntent);
    }
}

您可以通过以下链接获得更多帮助:

http://blog.gregfiumara.com/archives/82

http://techblogon.com/android-start-service-on-boot/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM