2013-08-14 1 views
-1

Я новичок в android, так как мой учебный проект я сделал заявку. Которая синхронизирует данные из webservice и выборки в моем приложении.андроид аварии при подключении к интернету отключить

Все работает нормально.

Но в этом сценарии

  1. Запуск приложения
  2. Проверьте подключение к Интернету
  3. Получить контент с сервера
  4. Fetch данные в приложении

5. Когда мы переходим off Mobile Data/WiFi, а затем нажмите любую кнопку в приложении, внезапно сбой приложения.

Есть ли способ справиться с этой проблемой?

Заранее спасибо

Сообщение об ошибке

08-14 21:28:57.670: E/AndroidRuntime(7466): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.myapp.tvc/com.myapp.tvc.SingleActivity}: java.lang.NullPointerException 
08-14 21:28:57.670: E/AndroidRuntime(7466):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2097) 
08-14 21:28:57.670: E/AndroidRuntime(7466):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2122) 
08-14 21:28:57.670: E/AndroidRuntime(7466):  at android.app.ActivityThread.access$600(ActivityThread.java:140) 
08-14 21:28:57.670: E/AndroidRuntime(7466):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1228) 
08-14 21:28:57.670: E/AndroidRuntime(7466):  at android.os.Handler.dispatchMessage(Handler.java:99) 
08-14 21:28:57.670: E/AndroidRuntime(7466):  at android.os.Looper.loop(Looper.java:137) 
08-14 21:28:57.670: E/AndroidRuntime(7466):  at android.app.ActivityThread.main(ActivityThread.java:4895) 
08-14 21:28:57.670: E/AndroidRuntime(7466):  at java.lang.reflect.Method.invokeNative(Native Method) 
08-14 21:28:57.670: E/AndroidRuntime(7466):  at java.lang.reflect.Method.invoke(Method.java:511) 
08-14 21:28:57.670: E/AndroidRuntime(7466):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:994) 
08-14 21:28:57.670: E/AndroidRuntime(7466):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:761) 
08-14 21:28:57.670: E/AndroidRuntime(7466):  at dalvik.system.NativeStart.main(Native Method) 
08-14 21:28:57.670: E/AndroidRuntime(7466): Caused by: java.lang.NullPointerException 
08-14 21:28:57.670: E/AndroidRuntime(7466):  at com.myapp.tvc.SingleActivity.onCreate(SingleActivity.java:76) 
08-14 21:28:57.670: E/AndroidRuntime(7466):  at android.app.Activity.performCreate(Activity.java:5163) 
08-14 21:28:57.670: E/AndroidRuntime(7466):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094) 
08-14 21:28:57.670: E/AndroidRuntime(7466):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2061) 
08-14 21:28:57.670: E/AndroidRuntime(7466):  ... 11 more 
+1

размещаете трассировку стека – tyczj

+0

привет добавил .. пожалуйста, проверьте – ramesh

+1

Хорошо, что бы ни было в этой строке 'SingleActivity.java: 76' равно null. довольно самообучающийся – tyczj

ответ

1

все, что в строке 76 SingleActivity равна нулю, так как вы не предоставили код лучшее, что мы можем сказать, это выяснить, что и почему нуль в этой строке

0

Моя самая распространенная ошибка является то, что является nulll. Может быть, обработчик определен inline, и вы используете переменную, которая равна нулю.

0

Основываясь на том, что вы описываете и не видите код, это звучит так, будто вы просто пытаетесь подключиться к Интернету, когда интернет-соединение не существует. Чтобы устранить эту проблему, вы можете create a network checker/listener, которая может проверить доступность сети, прежде чем пытаться сделать что-либо, что требует подключения к Интернету. Если соединение отсутствует, вы просто не запускаете задачу, которая получает информацию с сервера. Более сложная настройка может быть сконструирована с использованием BroadcastReceiver (например, чтобы вы знали, когда подключение снова становится доступным), но попробуйте это сейчас и посмотрите, не является ли это вашей проблемой.