2016-05-22 11 views
-2

私はAndroidアプリケーションを変更しています。私は、アプリケーションを実行しているとき、すべての機能が正常に動作します。しかし、バックエンドで、私はこのエラーを取得しています:xmpp接続のNetworkOnMainThreadException Android Studio

4008-4008/com.it.testApp W/System.err: android.os.NetworkOnMainThreadException 

エラーの行がchatServise.javaです:

BaseActivity.xmppConnection.disconnect(); 
BaseActivity.xmppConnection = null; 

私はXMPPを使ってチャットサービスのためにピシャリています。

アプリケーションはこのコードを他のクラスで使用しており、問題はありません。私が開発チームに尋ねたところ、彼らはプロジェクトの設定に関連していると私に言った。アプリケーションは他のすべての面でうまく機能しています。私はこの問題の解決方法を知らない。誰も助けることができますか?

私の以前の開発者システムでは、コードが完璧に動作しています。しかし、彼は私を助けません。彼は唯一言った'あなたはサーバーnodejsでセットアップする必要があり、接続を行う必要があります 私はアンドロイドスタジオからnode.jsに接続する方法を理解していません 私はこれで3日間過ごしていた私は見つけることができませんでした解決策。 51:46.433 3845から3845/com.it.example DはSMACK /:午前11時51分46秒AM接続が(301630643) を閉じた誰もが、私は完全なスタックトレース

5月25日11を追加してい

を助けることができます05-25 11:51:46.433 3845-1453/com.it.example D/SMACK:11:51:46 AM SENT(301630643): 05-25 11:51:46.584 3845-3845/com.it.example W/System.err:android.os.NetworkOnMainThreadException 05-25 11:51:46.594 3845-3845/com.it.example W/System.err:android.os.StrictMode $ AndroidBlockGuardPolicy.onNetwork(StrictMode.java: (OpenSSLSocketImpl.java:1090) 05-25 11:51:46.594 3845-3845/com.it.example W/System.err:com.android.org.conscrypt.OpenSSLSocketImpl.close(OpenSSLSocketImpl.java:1085) 05-25 11:51 :46.594 3845-3845/com.it.example W/System.err:org.jivesoftware.smack.XMPPConnection.shutdown(XMPPConnection.java:456) 05-25 11:51:46.594 3845-3845/com.it .example W/System.err:org.jivesoftware.smack.XMPPConnection.disconnect(XMPPConnection.java:482) 05-25 11:51:46.594 3845-3845/com.it.example W/System.err:at org.jivesoftware.smack.Connection.disconnect(Connection.java:490) 05-25 11:51:46.594 3845-3845/com.it.example W/System.err:com.it.example.util.ChatService .onStart(ChatService.java:49) 05-25 11:51:46.594 3845-3845/com.it.example W/System.err:android.app.Service.onStartCommand(Service.java:458) 05 -25 11:51:46.594 3845-3845/com.it.example W/System.err:android.app.ActivityThread.handleServiceArgs(ActivityThread.java:2904) 05-25 11:51:46.594 3845-3845/com。 it.example W/System.err:android.app.ActivityThread.access $ 2100(ActivityThread.java:144) 05-25 11:51:46.594 3845-3845/com.it.example W/System.err:at android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1386) 05-25 11:51:46.594 3845-3845/com.it.example W/System.err:android.os.Handler.dispatchMessage(Handler .java:102) 05-25 11:51:46.594 3845-3845/com.it.example W/System.err:android.os.Looper.loop(Looper.java:135) 05-25 11: 51:46.594 3845-3845/com.it.example W/System.err:android.app.ActivityThread.main(ActivityThread.java:5311) 05-25 11:51:46.594 3845-3845/com.it。例W/System.err:at java.lang.reflect.Method。 invoke(ネイティブメソッド) 05-25 11:51:46.594 3845-3845/com.it.example W/System.err:java.lang.reflect.Method.invoke(Method.java:372) 05-25 11:51:46.594 3845-3845/com.it.example W/System。エラー:com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:908) 05-25 11:51:46.594 3845-3845/com.it.example W/System.err:at com。 android.internal.os.ZygoteInit.main(ZygoteInit.java:703)

+1

あなたはSOであなたの問題を検索しましたか? –

+0

バックエンドまたはバックグラウンド/ログ? – Manny265

+0

バックグラウンドログこのエラーが発生しています。 – sha123

答えて

0

私は、メインスレッドでネットワーク操作を実行しているというエラーは自明です。
すべてのスレッドを許可するか、スレッドを実行するためのより最近の効率的な方法を見つける必要があります。
使用アクティビティを作成するには、このコード:

StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build(); 
StrictMode.setThreadPolicy(policy); 


ルックat this post。この質問は実際には重複としてマークする必要があります。

関連する問題