this project 잘 알고 commonsware
입니다. 나는 그것을 실행하려고하지만 난이 NullPointer 예외가 있습니다 을 여기에 코드입니다 :WebMap 활동을 시작할 수 없습니다. (NullPointerException)
public class WebMapActivity extends Activity {
private static String PROVIDER="gps";
private WebView browser;
private LocationManager myLocationManager=null;
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
browser=(WebView)findViewById(R.id.webview);
myLocationManager=(LocationManager)getSystemService(Context.LOCATION_SERVICE);
browser.getSettings().setJavaScriptEnabled(true);
browser.addJavascriptInterface(new Locater(), "locater");
browser.loadUrl("http://gmaps-samples.googlecode.com/svn/trunk/articles-android-webmap/simple-android-map.html");
}
@Override
public void onResume() {
super.onResume();
myLocationManager.requestLocationUpdates(PROVIDER, 0,
0,
onLocation);
}
@Override
public void onPause() {
super.onPause();
myLocationManager.removeUpdates(onLocation);
}
LocationListener onLocation=new LocationListener() {
public void onLocationChanged(Location location) {
StringBuilder buf=new StringBuilder("javascript:whereami(");
buf.append(String.valueOf(location.getLatitude()));
buf.append(",");
buf.append(String.valueOf(location.getLongitude()));
buf.append(")");
browser.loadUrl(buf.toString());
}
public void onProviderDisabled(String provider) {
// required for interface, not used
}
public void onProviderEnabled(String provider) {
// required for interface, not used
}
public void onStatusChanged(String provider, int status,
Bundle extras) {
// required for interface, not used
}
};
public class Locater {
public String getLocation() throws JSONException {
Location loc=myLocationManager.getLastKnownLocation(PROVIDER);
if (loc==null) {
return(null);
}
JSONObject json=new JSONObject();
json.put("lat", loc.getLatitude());
json.put("lon", loc.getLongitude());
return(json.toString());
}
}
}
로그 캣 :이 활동을 launchs 수없는 이유
02-29 22:10:35.096: E/AndroidRuntime(885): FATAL EXCEPTION: main
02-29 22:10:35.096: E/AndroidRuntime(885): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.gatec.tunisiana/com.android.airplane.WebMapActivity}: java.lang.NullPointerException
02-29 22:10:35.096: E/AndroidRuntime(885): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647)
02-29 22:10:35.096: E/AndroidRuntime(885): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
02-29 22:10:35.096: E/AndroidRuntime(885): at android.app.ActivityThread.access$1500(ActivityThread.java:117)
02-29 22:10:35.096: E/AndroidRuntime(885): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
02-29 22:10:35.096: E/AndroidRuntime(885): at android.os.Handler.dispatchMessage(Handler.java:99)
02-29 22:10:35.096: E/AndroidRuntime(885): at android.os.Looper.loop(Looper.java:130)
02-29 22:10:35.096: E/AndroidRuntime(885): at android.app.ActivityThread.main(ActivityThread.java:3683)
02-29 22:10:35.096: E/AndroidRuntime(885): at java.lang.reflect.Method.invokeNative(Native Method)
02-29 22:10:35.096: E/AndroidRuntime(885): at java.lang.reflect.Method.invoke(Method.java:507)
02-29 22:10:35.096: E/AndroidRuntime(885): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
02-29 22:10:35.096: E/AndroidRuntime(885): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
02-29 22:10:35.096: E/AndroidRuntime(885): at dalvik.system.NativeStart.main(Native Method)
02-29 22:10:35.096: E/AndroidRuntime(885): Caused by: java.lang.NullPointerException
02-29 22:10:35.096: E/AndroidRuntime(885): at com.android.airplane.WebMapActivity.onCreate(WebMapActivity.java:26)
02-29 22:10:35.096: E/AndroidRuntime(885): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
02-29 22:10:35.096: E/AndroidRuntime(885): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
02-29 22:10:35.096: E/AndroidRuntime(885): ... 11 more
는 모르겠어요. 당신의 도움을 주셔서 대단히 감사합니다.
main.xml에 webview라는 WebView가 있습니까? – ByteMe
@ByteMe : OOOOOO 아니 아니요! 내가 한 짓은 끔찍한거야! 내가 어떻게 알아 차리지 못 했니? 대단히 고마워. 무슨 실수 야 !! Pfff – androniennn
@ByteMe : 게시물에 답변 할 수 있으며 나중에 사용할 수 있도록 허용 할 것입니다. 고맙습니다 :). – androniennn