Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 这怎么可能在eclipse中工作,但在实际的手机中却不行?_Android_Google Maps_Geolocation_Location_Criteria - Fatal编程技术网

Android 这怎么可能在eclipse中工作,但在实际的手机中却不行?

Android 这怎么可能在eclipse中工作,但在实际的手机中却不行?,android,google-maps,geolocation,location,criteria,Android,Google Maps,Geolocation,Location,Criteria,就在那之后,我将纬度和经度输入到服务器上,但它会使我的手机崩溃 设置>位置和安全性>我的 位置 您的Android设备中未启用该服务 因此,您的locationManager.getLastKnownLocation(提供程序)(如果提供程序当前已禁用,则返回null。)将生成null值,稍后您将调用double latitude=location.getLatitude();double longitude=location.getLongitude()带有空值对象,因此应用程序正在崩溃。堆栈

就在那之后,我将纬度和经度输入到服务器上,但它会使我的手机崩溃

设置>位置和安全性>我的 位置

您的Android设备中未启用该服务


因此,您的
locationManager.getLastKnownLocation(提供程序)
(如果提供程序当前已禁用,则返回null。)将生成null值,稍后您将调用
double latitude=location.getLatitude();double longitude=location.getLongitude()带有空值对象,因此应用程序正在崩溃。

堆栈跟踪?您是否尝试过使用DDMS(EclipseADT插件的一部分)监视LogCat输出,以找出它使您的手机崩溃的原因?这对于开发来说是绝对必要的。检查手机上的设置-位置,看看是否选择了任何选项来确定位置。Logcat上没有任何选项,因为它在Eclipse上运行良好,但你是对的,我想我打开了GPS选项,但我没有,谢谢。
 LocationManager locationManager;
    String context = Context.LOCATION_SERVICE;
    locationManager = (LocationManager)getSystemService(context);
    Criteria criteria = new Criteria();
    criteria.setAccuracy(Criteria.ACCURACY_FINE);
    criteria.setAltitudeRequired(false);
    criteria.setBearingRequired(false);
    criteria.setCostAllowed(true);
    criteria.setPowerRequirement(Criteria.POWER_LOW);

    String provider = locationManager.getBestProvider(criteria, true);
    Location location = locationManager.getLastKnownLocation(provider);
    double latitude = location.getLatitude();
    double longitude = location.getLongitude();