简体   繁体   English

Android:用于互联网连接的BroadcastReceiver

[英]Android: BroadcastReceiver for internet connection

I am trying to get my BroadcastReceiver to work but I have the problem when I disconnect the internet connection, I am getting the Toast "Please connect the device to the internet.", on the other hand I am getting the same Toast "Please connect the device to the internet." 我试图使我的BroadcastReceiver正常工作,但是当我断开Internet连接时出现了问题,我得到了Toast “请将该设备连接到互联网。”,另一方面,我得到的是相同的Toast “请连接设备连接到互联网。” When I establish internet connection again. 当我再次建立互联网连接时。 Is something wrong with the class? 班上有什么问题吗?

 package com.bustracker; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.net.ConnectivityManager; import android.net.NetworkInfo; import android.util.Log; import android.widget.Toast; public class ConnectionChangeReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { ConnectivityManager connectivityManager = (ConnectivityManager) context .getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo activeNetInfo = connectivityManager .getNetworkInfo(ConnectivityManager.TYPE_MOBILE); boolean isConnected = activeNetInfo != null && activeNetInfo.isConnectedOrConnecting(); if (isConnected) { Toast.makeText(context, "The device is connected to the internet ", Toast.LENGTH_SHORT).show(); Log.i("NET", "connecte" +isConnected); } else { Toast.makeText(context, "Please connect the device to the internet.", Toast.LENGTH_SHORT).show(); } } } 

  <receiver android:name=".ConnectionChangeReceiver" > <intent-filter> <action android:name="android.net.conn.CONNECTIVITY_CHANGE" /> </intent-filter> </receiver> 

问题是您正在获得移动数据连接而不是wifi,因此即使设备已连接以获取当前的NetworkInfo ,它仍然会为您带来错误消息

NetworkInfo netInfo = connectivityManager.getActiveNetworkInfo(); 

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

相关问题 android检查与BroadcastReceiver的互联网连接 - android check internet connection with BroadcastReceiver 用于互联网连接的 Android BroadcastReceiver 调用两次 - Android BroadcastReceiver for internet connection called twice Android使用BroadcastReceiver检查互联网连接以刷新当前片段 - Android check internet connection with BroadcastReceiver refresh current fragment Android:该应用程序的Internet BroadcastReceiver - Android: Internet BroadcastReceiver for the application 使用BroadcastReceiver检测到Internet的连接或断开连接时出现问题 - Problems with BroadcastReceiver to detect connection or disconnection to Internet Android broadcastReceiver发出电源连接 - Android broadcastReceiver issue power connection 如何使(没有Internet连接)broadCastReceiver可以进行所有活动 - How to make (No Internet Connection) broadCastReceiver accessible to all the activities 如何使用JobScheduler和BroadcastReceiver为每个活动实现Internet连接侦听器 - How to implement Internet Connection listener for each Activity using JobScheduler and BroadcastReceiver android互联网连接可用性 - android internet connection avalability Android中的互联网连接 - Internet Connection in Android
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM