Я использую какой-то старый код и при запуске этого метода получаю ошибку Looper.prepare(). Я не понимаю, что означает линия, но это очень необходимо.Threading - Невозможно создать обработчик внутри потока, который не вызвал Looper.prepare()
Общая программа: У меня есть AsyncTask, которая вызывает метод, который вызывает doBindService() - из 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)
И, как сказано в документации, вызовите Looper.loop() в конце инструкций +, завершаем Looper.myLooper(). Quit(). – Sw4Tish
Добавлен в Looper.prepare(). Почему это сработало? – benzabill
Прочитайте документацию ... – Sw4Tish