gpt4 book ai didi

android - getLatitude() 和 getLongitude() 在安卓模拟器上崩溃

转载 作者:行者123 更新时间:2023-11-29 22:21:03 25 4
gpt4 key购买 nike

我正在处理的 Android 应用程序有问题。该应用程序工作正常,直到我添加了两行代码来获取用户的纬度和经度。当我添加此代码时,我的应用程序无缘无故崩溃。这是带有 getLatitude 和 getLongitude 方法的代码。当我删除这两行时,应用程序运行正常。知道为什么会这样吗?

public class Car_mode extends Activity implements LocationListener {

private TextView latituteField;
private TextView longitudeField;
@Override
protected void onCreate(Bundle savedInstanceState) {

// TODO Auto-generated method stub
super.onCreate(savedInstanceState);

setContentView(R.layout.carmode);

latituteField = (TextView) findViewById(R.id.TextView04);
longitudeField = (TextView) findViewById(R.id.TextView03);

LocationManager locationManager =(LocationManager)getSystemService(Context.LOCATION_SERVICE);


Location mostRecentLocation = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);

double lat = mostRecentLocation.getLatitude();
double lng = mostRecentLocation.getLongitude();



latituteField.setText("test");
longitudeField.setText("test");
setButtonClickListener();


}

提前致谢。

以下是 Logcat 消息:

08-24 10:30:09.714: DEBUG/AndroidRuntime(281): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<<

08-24 10:30:09.714: DEBUG/AndroidRuntime(281): CheckJNI is ON

08-24 10:30:09.844: DEBUG/AndroidRuntime(281): --- registering native functions ---

08-24 10:30:10.344: DEBUG/AndroidRuntime(281): Shutting down VM

08-24 10:30:10.354: DEBUG/dalvikvm(281): Debugger has detached; object registry had 1 entries

08-24 10:30:10.354: INFO/AndroidRuntime(281): NOTE: attach of thread 'Binder Thread #3' failed


08-24 10:30:10.784: DEBUG/AndroidRuntime(289): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<<

08-24 10:30:10.784: DEBUG/AndroidRuntime(289): CheckJNI is ON

08-24 10:30:10.904: DEBUG/AndroidRuntime(289): --- registering native functions ---

08-24 10:30:11.414: INFO/ActivityManager(58): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=com.javoider.app/.main }

08-24 10:30:11.454: INFO/ActivityManager(58): Start proc com.javoider.app for activity com.javoider.app/.main: pid=295 uid=10036 gids={3003}

08-24 10:30:11.484: DEBUG/AndroidRuntime(289): Shutting down VM

08-24 10:30:11.484: DEBUG/dalvikvm(289): Debugger has detached; object registry had 1 entries

08-24 10:30:11.514: INFO/AndroidRuntime(289): NOTE: attach of thread 'Binder Thread #3' failed

08-24 10:30:12.404: INFO/ActivityManager(58): Displayed activity com.javoider.app/.main: 966 ms (total 592105 ms)

08-24 10:30:13.664: INFO/ActivityManager(58): Starting activity: Intent { act=android.intent.action.CARMODE cmp=com.javoider.app/.Car_mode }

08-24 10:30:13.763: DEBUG/AndroidRuntime(295): Shutting down VM

08-24 10:30:13.763: WARN/dalvikvm(295): threadid=1: thread exiting with uncaught exception (group=0x4001d800)

08-24 10:30:13.774: ERROR/AndroidRuntime(295): FATAL EXCEPTION: main

08-24 10:30:13.774: ERROR/AndroidRuntime(295): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.javoider.app/com.javoider.app.Car_mode}: java.lang.NullPointerException

08-24 10:30:13.774: ERROR/AndroidRuntime(295): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)

08-24 10:30:13.774: ERROR/AndroidRuntime(295): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)

08-24 10:30:13.774: ERROR/AndroidRuntime(295): at android.app.ActivityThread.access$2300(ActivityThread.java:125)

08-24 10:30:13.774: ERROR/AndroidRuntime(295): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)

08-24 10:30:13.774: ERROR/AndroidRuntime(295): at android.os.Handler.dispatchMessage(Handler.java:99)

08-24 10:30:13.774: ERROR/AndroidRuntime(295): at android.os.Looper.loop(Looper.java:123)

08-24 10:30:13.774: ERROR/AndroidRuntime(295): at android.app.ActivityThread.main(ActivityThread.java:4627)

08-24 10:30:13.774: ERROR/AndroidRuntime(295): at java.lang.reflect.Method.invokeNative(Native Method)

08-24 10:30:13.774: ERROR/AndroidRuntime(295): at java.lang.reflect.Method.invoke(Method.java:521)

08-24 10:30:13.774: ERROR/AndroidRuntime(295): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)

08-24 10:30:13.774: ERROR/AndroidRuntime(295): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)

08-24 10:30:13.774: ERROR/AndroidRuntime(295): at dalvik.system.NativeStart.main(Native Method)

08-24 10:30:13.774: ERROR/AndroidRuntime(295): Caused by: java.lang.NullPointerException

08-24 10:30:13.774: ERROR/AndroidRuntime(295): at com.javoider.app.Car_mode.onCreate(Car_mode.java:38)

08-24 10:30:13.774: ERROR/AndroidRuntime(295): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)

08-24 10:30:13.774: ERROR/AndroidRuntime(295): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)

08-24 10:30:13.774: ERROR/AndroidRuntime(295): ... 11 more

08-24 10:30:13.784: WARN/ActivityManager(58): Force finishing activity com.javoider.app/.Car_mode

08-24 10:30:13.784: WARN/ActivityManager(58): Force finishing activity com.javoider.app/.main

08-24 10:30:14.284: WARN/ActivityManager(58): Activity pause timeout for HistoryRecord{450a11e0 com.javoider.app/.Car_mode}

08-24 10:30:15.493: INFO/Process(295): Sending signal. PID: 295 SIG: 9

08-24 10:30:15.503: INFO/WindowManager(58): WIN DEATH: Window{45086398 com.javoider.app/com.javoider.app.main paused=true}

08-24 10:30:15.503: INFO/ActivityManager(58): Process com.javoider.app (pid 295) has died.

08-24 10:30:15.533: WARN/InputManagerService(58): Got RemoteException sending setActive(false) notification to pid 295 uid 10036

08-24 10:30:16.295: WARN/KeyCharacterMap(124): No keyboard for id 0

08-24 10:30:16.295: WARN/KeyCharacterMap(124): Using default keymap: /system/usr/keychars/qwerty.kcm.bin

08-24 10:30:24.666: WARN/ActivityManager(58): Activity destroy timeout for HistoryRecord{4508dcf8 com.javoider.app/.main}

08-24 10:30:24.666: WARN/ActivityManager(58): Activity destroy timeout for HistoryRecord{450a11e0 com.javoider.app/.Car_mode}

最佳答案

您必须在模拟器中修复您的 gps 位置。参见 this链接。

LocationManager locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);
Criteria criteria = new Criteria();
bestProvider = locationManager.getBestProvider(criteria,true);

Location location = locationManager.getLastKnownLocation(bestProvider);
double lat = location.getLatitude();
double lng = location.getLongitude();

关于android - getLatitude() 和 getLongitude() 在安卓模拟器上崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7173956/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com