本人在项目里增加了一个默认的开机自启动,并且在静态广播里进行监听自启动意图,然后进行网络连接发送心跳给服务器,以实现后台常驻。
现在本人想在应用的退出选项里提供取消自启动的功能供用户选择,原因是本人看了一下,不是每款手机都可以设置自启动权限,有些是要挺费劲才找到自启动管理。所以本人想在程序里本人提供这个选项给用户选择,但已经在Manifiest.xml里进行了静态广播声明了,在代码里怎么才能屏蔽掉自启动?
求高手指点!
现在本人想在应用的退出选项里提供取消自启动的功能供用户选择,原因是本人看了一下,不是每款手机都可以设置自启动权限,有些是要挺费劲才找到自启动管理。所以本人想在程序里本人提供这个选项给用户选择,但已经在Manifiest.xml里进行了静态广播声明了,在代码里怎么才能屏蔽掉自启动?
求高手指点!
解决方案
10
监听广播方法中使用SharedPreferences存储标示flag,flag为true则开机启动false则不启动
10
实现思路就像ls上说的,
先监听广播自启动, 然后在receiver里面进行判断:假如用户之前选择了开机启动, 则正常启动, 联网, 发心跳包;假如用户之前选择了不开机启动, 则直接退出不进行后续操作了。
先监听广播自启动, 然后在receiver里面进行判断:假如用户之前选择了开机启动, 则正常启动, 联网, 发心跳包;假如用户之前选择了不开机启动, 则直接退出不进行后续操作了。
10
本人在广播监听的位置,加一个标志位就可以了,把标志位记录到本地,退出的时候提供用户修改借口,“YES” OR “NO”
10
像楼上说的,在SharedPreferences做一下记录,在开机广播里面根据记录做一下判断,设置能否开机启动的时候改变一下记录的状态
另外想向题主讨教个问题,之前做启动的时候在网上查过,好像Android4.0以后三方应用监听不到开机广播了,只有系统应用才可以,然后在本人Android5.0的手机上试了一下,确实没监听到,相同代码在另一个手机上就可以,不知道题主有没有遇到这样的问题,是你说的权限问题吗
另外想向题主讨教个问题,之前做启动的时候在网上查过,好像Android4.0以后三方应用监听不到开机广播了,只有系统应用才可以,然后在本人Android5.0的手机上试了一下,确实没监听到,相同代码在另一个手机上就可以,不知道题主有没有遇到这样的问题,是你说的权限问题吗