
我想阻止用户更改我的应用程序中的WiFi,GPS和加载设置.用户在运行我的应用程序时无需打开/关闭WiFi和GPS.(来自通知栏).是否存在用于收听GPS开/关的broadcastReceiver?
解决方法:
好吧,我做了很多挖掘,发现在API 24中不推荐使用addGpsstatusListener(gpsstatusListener).对我来说,这甚至都不起作用!所以,这是另一个替代解决方案.
如果在您的应用中,您想要收听GPS状态更改(我的意思是用户开启/关闭).使用广播肯定是最好的方法.
执行:
/** * Following broadcast receiver is to Listen the Location button toggle state in AndroID. */private broadcastReceiver mGpsSwitchStateReceiver = new broadcastReceiver() { @OverrIDe public voID onReceive(Context context, Intent intent) { if (intent.getAction().matches("androID.location.PROVIDERS_CHANGED")) { // Make an action or refresh an already managed state. } }};不要忘记在Fragment / Activity lifecycle中有效注册和注销.
registerReceiver(mGpsSwitchStateReceiver, new IntentFilter(LocationManager.PROVIDERS_CHANGED_ACTION));例如,如果您使用此片段,请在onResume中注册它,并在onDestroy中取消注册.此外,如果您要将用户指向设置以启用位置切换,则在onStop中取消注册将无法运行,因为您的活动将转到onPause并且片段已停止.
那么这个解决方案可能有很多答案,但这个解决方案很容易管理和使用.如果有的话,提出您的解决方案
总结以上是内存溢出为你收集整理的android – 如何检测用户何时打开/关闭gps状态?全部内容,希望文章能够帮你解决android – 如何检测用户何时打开/关闭gps状态?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)