|
ошибка NullPointerException
|
|||
---|---|---|---|
#18+
есть приложение, которое стартует сервис, вот так Код: java 1. 2. 3. 4. 5. 6. 7.
в onStartCommand сервиса следующий код Код: java 1. 2. 3. 4.
приложение работает с google maps и gps, ошибка возникает когда на телефоне отключаю передачу данных и gps, не сразу, спустя секунд 10. текст ошибки в логах: 11-17 08:48:52.879 14264-14264/? E/AndroidRuntime﹕ FATAL EXCEPTION: main java.lang.RuntimeException: Unable to start service com.example.myreminder.WatchLocationService@4161f088 with null: java.lang.NullPointerException at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:2376) at android.app.ActivityThread.access$1900(ActivityThread.java:123) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1210) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:4424) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:787) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:554) at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.NullPointerException at com.example.myreminder.WatchLocationService.onStartCommand(WatchLocationService.java:38) at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:2359) at android.app.ActivityThread.access$1900(ActivityThread.java:123) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1210) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:4424) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:787) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:554) at dalvik.system.NativeStart.main(Native Method) помогите разобраться в чем проблема? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2015, 09:01 |
|
ошибка NullPointerException
|
|||
---|---|---|---|
#18+
nikomp Код: java 1.
Дай угадаю: интент нулевой? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2015, 09:11 |
|
ошибка NullPointerException
|
|||
---|---|---|---|
#18+
wadman, походу да, добавил проверку на нулевой интент http://stackoverflow.com/questions/4679654/unable-to-start-service-service-name-with-null ошибка пока не повторяется ) ну раз уж завел тему, проясните пожалуйста, при старте сервиса он ведь должен висеть в памяти и для него не должно быть критично включена или отключена передача данных или gps. с другой стороны по ссылке выше читаем, что intent может быть равен NULL, если сервис находится в процессе перезапуска. что инициировало перезапуск сервиса? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2015, 09:18 |
|
ошибка NullPointerException
|
|||
---|---|---|---|
#18+
nikompчто инициировало перезапуск сервиса? Гадать бесполезно, но можно почитать официальную документацию по сервисам: http://developer.android.com/intl/ru/reference/android/app/Service.html ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2015, 09:34 |
|
ошибка NullPointerException
|
|||
---|---|---|---|
#18+
сервис может быть убит, если системе не хватает ресурсов. ну или если ты что-то сам накосячил и он завалился. для того чтобы оригинальный интент был еще раз ему послан, когда сервис восстановят, нужно в onStartCommand возвращать флаг START_REDELIVER_INTENT ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2015, 11:26 |
|
|
start [/forum/topic.php?fid=13&msg=39105174&tid=1331231]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
29ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 256ms |
total: | 373ms |
0 / 0 |