-1

私の研究プロジェクトとして、私はアプリケーションを作成しました。これは、Webサービスからデータを同期し、アプリケーションでフェッチしています。

すべて正常に動作しています。

しかし、このシナリオでは

  1. アプリケーションを起動する
  2. インターネット接続を確認する
  3. サーバーからコンテンツを取得する
  4. アプリケーションでデータを取得する

5. モバイル データ/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
4

3 に答える 3

1

コードを提供していないため、 76行目にあるものはすべてSingleActivitynullです

于 2013-08-14T17:14:33.957 に答える
0

あなたが説明していることに基づいて、あなたのコードを見なければ、インターネット接続が存在しないときにインターネットに接続しようとしているように思えます。この問題を解決するには、インターネット接続が必要な作業を行う前に、ネットワークの可用性をチェックできるネットワーク チェッカー/リスナーを作成します。接続が利用できない場合は、サーバーからデータを取得するタスクを実行しないでください。を使用して、より複雑なセットアップを設計することもできますBroadcastReceiver(たとえば、接続が再び利用可能になったときにわかるようにするため)。

于 2013-08-14T16:47:14.800 に答える
0

私の最も一般的なエラーは、something is nulll です。ハンドラーがインラインで定義されていて、null の変数を使用している可能性があります

于 2013-08-14T15:50:06.337 に答える