今天在做个推推送的时候遇到了小米手机无法收到开机广播的问题。

<receiver android:name="com.XXXXXXXXXXX >  

            <intent-filter>  

                <action android:name="android.intent.action.BOOT_COMPLETED" />  

            </intent-filter>  

        </receiver>  

开机广播很容易写,如上代码所示,但是这段代码在小米手机上却失效

其实很简单,小米手机默认屏蔽了所有开机广播的接收者,必须让用户手动在【系统与安全】-》【自启动管理】里添加你的程序

那如何告诉用户去设置,简单弹个Toast是最简单的方法,不过最好能自动跳转到那个设置界面

经过研究

这个自启动管理不是单独的apk,是系统设置里的一个activity

打开方法如下:


Intent i = new Intent();  

                ComponentName comp = new ComponentName("com.android.settings",  

                        "com.android.settings.BackgroundApplicationsManager");  

                i.setComponent(comp);  

               startActivity(i);  



转载于:https://my.oschina.net/u/1244156/blog/488301

Logo

openvela 操作系统专为 AIoT 领域量身定制,以轻量化、标准兼容、安全性和高度可扩展性为核心特点。openvela 以其卓越的技术优势,已成为众多物联网设备和 AI 硬件的技术首选,涵盖了智能手表、运动手环、智能音箱、耳机、智能家居设备以及机器人等多个领域。

更多推荐