NullPointerException при запуске действия "WebMap" - PullRequest
0 голосов
/ 29 февраля 2012

Я следовал коду, предоставленному Google для реализации действия веб-карты, я понял весь код, но при запуске действия у меня есть исключение нулевого указателя Java, я думаю, что он не находит широту и долготу, чтобы показать,я не знаю, как решить эту проблему.вот код:

public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        getLocation();
        setupWebView();
        this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
      }


      private void setupWebView(){
//        mostRecentLocation.setLatitude(36.848427);
//        mostRecentLocation.setLongitude(10.26829);
          final String centerURL = "javascript:centerAt(" +
          mostRecentLocation.getLatitude() + "," +
          mostRecentLocation.getLongitude()+ ")";
          webView = (WebView) findViewById(R.id.webview);
          webView.getSettings().setJavaScriptEnabled(true);
          //Wait for the page to load then send the location information
          webView.setWebViewClient(new WebViewClient());
          webView.loadUrl(MAP_URL);
          /** Allows JavaScript calls to access application resources **/
          webView.addJavascriptInterface(new JavaScriptInterface(), "android");
        }

logcat указывает, что проблема в функции setupWebView ().Спасибо за помощь.Logcat:

02-29 13:06:42.284: E/AndroidRuntime(642): FATAL EXCEPTION: main
02-29 13:06:42.284: E/AndroidRuntime(642): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.android.powerful/com.android.powerful.WebMapActivity}: java.lang.NullPointerException
02-29 13:06:42.284: E/AndroidRuntime(642):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647)
02-29 13:06:42.284: E/AndroidRuntime(642):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
02-29 13:06:42.284: E/AndroidRuntime(642):  at android.app.ActivityThread.access$1500(ActivityThread.java:117)
02-29 13:06:42.284: E/AndroidRuntime(642):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
02-29 13:06:42.284: E/AndroidRuntime(642):  at android.os.Handler.dispatchMessage(Handler.java:99)
02-29 13:06:42.284: E/AndroidRuntime(642):  at android.os.Looper.loop(Looper.java:130)
02-29 13:06:42.284: E/AndroidRuntime(642):  at android.app.ActivityThread.main(ActivityThread.java:3683)
02-29 13:06:42.284: E/AndroidRuntime(642):  at java.lang.reflect.Method.invokeNative(Native Method)
02-29 13:06:42.284: E/AndroidRuntime(642):  at java.lang.reflect.Method.invoke(Method.java:507)
02-29 13:06:42.284: E/AndroidRuntime(642):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
02-29 13:06:42.284: E/AndroidRuntime(642):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
02-29 13:06:42.284: E/AndroidRuntime(642):  at dalvik.system.NativeStart.main(Native Method)
02-29 13:06:42.284: E/AndroidRuntime(642): Caused by: java.lang.NullPointerException
02-29 13:06:42.284: E/AndroidRuntime(642):  at com.android.powerful.WebMapActivity.setupWebView(WebMapActivity.java:30)
02-29 13:06:42.284: E/AndroidRuntime(642):  at com.android.powerful.WebMapActivity.onCreate(WebMapActivity.java:24)
02-29 13:06:42.284: E/AndroidRuntime(642):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
02-29 13:06:42.284: E/AndroidRuntime(642):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)

1 Ответ

4 голосов
/ 29 февраля 2012

mostRecentLocation вероятно ноль. Вот почему, когда вы пытаетесь получить доступ к getLatitude, вы получаете исключение. Я не вижу, чтобы вы инициализировали mostRecentLocation в коде, который вы разместили

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...