Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/200.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
在org.jivesoftware.smack.SmackAndroid$1.onReceive接收广播意图时出错_Android_Asmack - Fatal编程技术网

在org.jivesoftware.smack.SmackAndroid$1.onReceive接收广播意图时出错

在org.jivesoftware.smack.SmackAndroid$1.onReceive接收广播意图时出错,android,asmack,Android,Asmack,我的asmack库有错误,请告诉我正确的asmack库版本和下载地址,或者告诉我其他解决方案。多谢各位 应用程序中偶尔出现回闪。有关详细信息,请参见代码和图片说明。(Lookup.refreshDefault)与网络操作相关,主线程无法执行网络操作,onReceive方法应启动一个新线程,但我找不到asmack库源代码,代码无法修改,我仅使用类文件。请有经验的开发人员告诉我如何解决这个问题 android.os.NetworkOnMainThreadException at androi

我的asmack库有错误,请告诉我正确的asmack库版本和下载地址,或者告诉我其他解决方案。多谢各位

应用程序中偶尔出现回闪。有关详细信息,请参见代码和图片说明。(Lookup.refreshDefault)与网络操作相关,主线程无法执行网络操作,onReceive方法应启动一个新线程,但我找不到asmack库源代码,代码无法修改,我仅使用类文件。请有经验的开发人员告诉我如何解决这个问题

android.os.NetworkOnMainThreadException
    at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1273)
    at java.net.InetAddress.lookupHostByName(InetAddress.java:431)
    at java.net.InetAddress.getAllByNameImpl(InetAddress.java:252)
    at java.net.InetAddress.getByName(InetAddress.java:305)
    at org.xbill.DNS.SimpleResolver.<init>(SimpleResolver.java:56)
    at org.xbill.DNS.SimpleResolver.<init>(SimpleResolver.java:68)
    at org.xbill.DNS.ExtendedResolver.<init>(ExtendedResolver.java:266)
    at org.xbill.DNS.Lookup.refreshDefault(Lookup.java:86)
    at org.jivesoftware.smack.SmackAndroid$1.onReceive(SmackAndroid.java:26)
    at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:879)
android.os.NetworkOnMainThreadException
在android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1273)
位于java.net.InetAddress.lookupHostByName(InetAddress.java:431)
位于java.net.InetAddress.getAllByNameImpl(InetAddress.java:252)
位于java.net.InetAddress.getByName(InetAddress.java:305)
位于org.xbill.DNS.SimpleResolver。(SimpleResolver.java:56)
位于org.xbill.DNS.SimpleResolver。(SimpleResolver.java:68)
位于org.xbill.DNS.ExtendedResolver。(ExtendedResolver.java:266)
位于org.xbill.DNS.Lookup.refreshDefault(Lookup.java:86)
位于org.jivesoftware.smack.SmackAndroid$1.onReceive(SmackAndroid.java:26)
在android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:879)中


当您尝试在UI或主线程上访问internet时,出现此NetworkOnMainThread异常

要在android应用程序中访问internet,您需要创建一个异步任务或服务

在活动中创建异步任务

class Refresh extends AsyncTask<Void, Void, Void> {

protected Void doInBackground(String... params) {
    Lockup.refreshDefault();
   }
}
类刷新扩展了异步任务{
受保护的Void doInBackground(字符串…参数){
Lockup.refreshDefault();
}
}
并替换
Lockup.refreshDefault()此行带有
新刷新().execute()

希望能有帮助