Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 广播接收机未注册_Android - Fatal编程技术网

Android 广播接收机未注册

Android 广播接收机未注册,android,Android,在我的应用程序中,我正在使用internet连接。我想通过我的应用程序检查internet连接,所以我正在使用广播接收器。 我在清单中注册了接收器,但不知道为什么它不工作。有人能帮忙吗…注册接收器时有错误吗…我已经在接收方法上登录,检查它是否正在注册,但日志从未打印。当我通过代码注册广播接收器时,它工作正常 这是我的密码。。。 ` ` 根据我们的讨论 你需要在你的活动中注册你的接收者,并使其成为全球性的,这样你就可以在任何地方访问它 因为在关闭应用程序时,您还需要注销接收器 我建议您在主活动o

在我的应用程序中,我正在使用internet连接。我想通过我的应用程序检查internet连接,所以我正在使用广播接收器。 我在清单中注册了接收器,但不知道为什么它不工作。有人能帮忙吗…注册接收器时有错误吗…我已经在接收方法上登录,检查它是否正在注册,但日志从未打印。当我通过代码注册广播接收器时,它工作正常

这是我的密码。。。 `


`

根据我们的讨论

你需要在你的活动中注册你的接收者,并使其成为全球性的,这样你就可以在任何地方访问它

因为在关闭应用程序时,您还需要注销接收器

我建议您在主活动oncreate方法中注册接收者,并在onKeyDown/onBackKeyPressed方法中注销它。您的申请将于何时关闭

注视

希望这有帮助

谢谢
sHaH…

检查网络(移动数据和WIFI)的工作代码:


你在哪里登记的?我是说在哪种元素之间??在应用程序元素内部还是外部???CheckInternetConnectionChangeReceiver是BroadcastReceiver的一个子类,您是否已将onReceive覆盖正确?@sHaH…在应用程序元素下…我是否必须在活动元素中写入?不,您必须在应用程序下像在活动中一样写入。尝试删除包名,即。com.android.fishdemo。----否则请尝试“.检查互联网------”
<receiver android:name="com.android.fishdemo.CheckInternetConnectionChangeReceiver">
 <intent-filter>
   <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
   <action android:name="android.net.ConnectivityManager.CONNECTIVITY_ACTION" />
  </intent-filter>
</receiver>`
@Override
public void onReceive(Context context, Intent intent) {
    // TODO Auto-generated method stub
    this.context = context; 
    ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService( Context.CONNECTIVITY_SERVICE );
    NetworkInfo mobNetInfo = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
    NetworkInfo WIFINetInfo = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);

    settings = context.getApplicationContext().getSharedPreferences(PREFS_NAME, 0);
    email = settings.getString("email", null);

    if(mobNetInfo.isConnected() || WIFINetInfo.isConnected()){ // write your code here to handle something}