Вызов метода от службы Android сразу после того, как он связан на OnCreate

StackOverflow https://stackoverflow.com/questions/3637221

  •  30-09-2019
  •  | 
  •  

Вопрос

Я уверен, что услуги Android будут закончиться ко мне. После последних нескольких дней у меня почти нет волос, осталось после последних нескольких дней ....

... Во всяком случае, я отвлечет.

Сначала у меня есть черта времени, чтобы получить сервис, чтобы привязать к кнопке onClick, получил это выпрямление от помощи здесь вчера. Теперь я действительно хочу, чтобы сервис привязался к методу OnCreate () деятельности. Эта часть не проблема, работает как предназначена. Мой сервис на самом деле - это служба сокета для подключения сокетов TCP к серверу сокета, которые я написал. Если я добавлю звонок на метод из связанного сервиса mboundservice.startsocketerver () внутри кнопки щелчок, Bingo, отлично работает. Но мне нужно, чтобы это опрятало сразу, когда нагрузка на активность, так непосредственно под моим связующим видом () призывами в моем методе ONCREATE (). Когда я размещаю звонок, чтобы начать сокет в моем oncreate (), я получаю силу.

Этот метод (startsocketerver ()) порождает новую тему, затем открывает розетку на этом потоке на мой удаленный компьютер. Я предполагаю, что проблема лежит с новым поколением потока перед активностью полностью нагрузки ... Не уверен.

Logcat довольно загадочно здесь. Он говорит что-то о прикреплении потока, затем показывает исключение неисследованного обработчика, которое имеет «вызванное: java.lang.nullpointexception».

Опять же, если я добавлю этот звонок в метод внутри кнопки, щелкните, я в бизнесе, если он находится в Oncreate (), это не удается. Есть ли в каком-то способе внутри деятельности (предполагается, что мое предположение верно, что ему необходимо полностью Загрузите перед вырочкой новой темы), чтобы вызвать StartSocketerver () после того, как он загружен: ALA Body.OnLoad () в HTML?

Пожалуйста, помогите мне сохранить остальные волосы :)

TIA

Это было полезно?

Решение

Как я писал в вашем более ранний вопрос:

FWIW, Bindservice () асинхронный. У вас не будет связанного соединения до тех пор, пока onserviceConnected () не вызывается для вашего обслуживания.

В твоем bindService() Позвоните, вы поставляете ServiceConnection объект. Этот объект будет вызван с onServiceConnected() Когда сервис готов к использованию. Среди прочего, это, вероятно, где вы заполняете mService. Отказ Поставить свой звонок в StartSocketServer() в onServiceConnected().

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top