2013-08-27 62 views
0

我使用一些舊的代碼和運行這個方法,我得到的Looper.prepare()錯誤。我不明白這條線的意思,但它是非常必要的。線程 - 無法創建內螺紋處理程序尚未調用Looper.prepare()

總體方案:我有一個調用它調用doBindService(方法)的的AsyncTask - 從doInBackground() - 。我已經閱讀了關於這個錯誤的許多其他問題,我想我有一個線程錯誤,但我無法弄清楚是什麼問題。

public rNOC doBindService(){ 

     _server = new rNOC(this);//CODE FAILING HERE 
     return _server; 
     } 


*** Uncaught remote exception! (Exceptions are not yet supported across processes.) 
    java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare() 
    at android.os.Handler.<init>(Handler.java:197) 
    at android.os.Handler.<init>(Handler.java:111) 
    at com.servicenexus.ServiceNexus$1.<init>(ServiceNexus.java:128) 
    at com.servicenexus.ServiceNexus.<init>(ServiceNexus.java:128) 
    at com.servicenexus.rNOC.<init>(rNOC.java:31) 
    at com.servicenexus.ServiceNexus.doBindService(ServiceNexus.java:406) 
    at com.servicenexus.ServiceNexus$2.login(ServiceNexus.java:790) 
    at com.servicenexus.IRemoteInterface$Stub.onTransact(IRemoteInterface.java:126) 
    at android.os.Binder.execTransact(Binder.java:351) 
    at dalvik.system.NativeStart.run(Native Method) 

回答

0

java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()似乎是一個非常詳細的錯誤信息;如果在那個特定的線路錯誤(我假設正在創建那裏的處理程序),並從堆棧跟蹤情況來看,我建議叫Looper.prepare()錯誤發生之前。

+0

而且,如文檔中說,調用Looper.loop()在指令結尾與Looper.myLooper()+結尾。退出()。 – Sw4Tish

+0

在Looper.prepare()中添加工作。爲什麼這樣做? – benzabill

+0

閱讀文檔... – Sw4Tish

相關問題