android – 从广播接收器关闭应用程序
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了android – 从广播接收器关闭应用程序,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1399字,纯文字阅读大概需要2分钟。
内容图文
![android – 从广播接收器关闭应用程序](/upload/InfoBanner/zyjiaocheng/787/aafe2a0719e8406dae715eab543cf945.jpg)
我是android编程的新手.
我已经尝试在活动中注册广播接收器,但我的接收器在应用程序onPause时无法正常工作.
所以我发现我需要在清单中注册我的接收器.
我的目标是在用户关闭Wifi后关闭我的应用程序一段时间.
这是我的代码但不起作用.
public class ReceiverWifi extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Handler handler = new Handler();
Runnable runnable = new Runnable() {
@Override
public void run() {
MainActivity m = new MainActivity();
m.finish();
}
};
if (intent.getAction().equals(WifiManager.WIFI_STATE_CHANGED_ACTION)) {
int newWifiState = intent.getIntExtra(WifiManager.EXTRA_WIFI_STATE,
WifiManager.WIFI_STATE_UNKNOWN);
switch (newWifiState) {
case WifiManager.WIFI_STATE_DISABLED:
Toast.makeText(context, "Wi-fi Disconnected ",
Toast.LENGTH_SHORT).show();
handler.postDelayed(runnable, 15 * 1000);
break;
}
}
}
}
我的清单:
<receiver android:name="com.example.wifimonitor.ReceiverWifi" >
<intent-filter>
<action android:name="android.net.wifi.WIFI_STATE_CHANGED" />
</intent-filter>
</receiver>
我如何实现目标?
解决方法:
您的广播接收器是否在主要活动类中?如果是这样,您可以保存应用程序的全局上下文,稍后在广播接收器中关闭它.
如果它位于服务或提供商上,只需在启动/注册时向其发送应用实例.然后从该实例调用finish().
编辑:
试试这个:
在您的主要活动中创建此公共方法:
public static void closeActivity(){
finish();
}
然后在你的广播接收器中调用这个方法,如:
MainActivity.closeActivity();
希望能帮助到你
内容总结
以上是互联网集市为您收集整理的android – 从广播接收器关闭应用程序全部内容,希望文章能够帮你解决android – 从广播接收器关闭应用程序所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。