Android requestLocationUpdates崩溃

Android requestLocationUpdates崩溃,android,gps,android-2.2-froyo,Android,Gps,Android 2.2 Froyo,我对android编程还是有点陌生,遇到了“RequestLocationUpdate”的问题。我很确定我已经把它缩小到了这个范围,因为我的代码在注释出来时可以工作。当我用下面写的代码运行它时,程序就会停止响应。我使用的是安卓2.2,权限设置为1.6。我知道2.3导致了问题,但听起来2.2应该没问题。我只是在下面的代码中包含了我认为重要的内容,如果需要其他部分,请告诉我 locman= (locationManager) getSystemService(Context.LOCATION

我对android编程还是有点陌生,遇到了“RequestLocationUpdate”的问题。我很确定我已经把它缩小到了这个范围,因为我的代码在注释出来时可以工作。当我用下面写的代码运行它时,程序就会停止响应。我使用的是安卓2.2,权限设置为1.6。我知道2.3导致了问题,但听起来2.2应该没问题。我只是在下面的代码中包含了我认为重要的内容,如果需要其他部分,请告诉我

    locman= (locationManager) getSystemService(Context.LOCATION_SERVICE);
    locman.requestLocationUpdates(LocationManger.GPS_PROVIDER, 0,0, new locationListener());
}

private class locationListener implements LocationListener
{
    @Override  
    public void onLocationChanged(Location loc)  
    {  
        if (loc !=null) {
        Toast.makeText(getBaseContext(), "Location Changed: Lat: " + loc.getLatitude() + "Lng: " + loc.getLongitud(), Toast.LENGTH_SHORT).show();  
    }  
    gp= new GeoPoint(
        (int) (loc.getLatitude()*1E6),(int) (loc.getLongitude()*1E6));

可能给定的loc参数为null,这将导致新的地质点创建失败?

可能给定的loc参数为null,这将导致新的地质点创建失败?

这是一个愚蠢的错误,在manifest.xml文件中,我用额外的S拼写了ACCESS,所以它是ACCESS。显然,这种方法效果不太好。我讨厌拼写错误!我找到了答案,添加了粗略的位置,并意识到精细和粗略并没有像它们应该的那样正确排列。

这是一个愚蠢的错误,在manifest.xml文件中,我用额外的S拼写ACCESS,所以它是ACCESS。显然,这种方法效果不太好。我讨厌拼写错误!通过添加粗略位置,我发现精细和粗略没有正确对齐。

请在崩溃发生时发布您看到的logcat异常。我认为这不是拼写错误loc.getLongitud()因为您的代码无法编译。这里是日志猫崩溃时的最后4行:11-18 14:40:38.136:DEBUG/dalvikvm(305):GC_FOR_MALLOC在62ms中释放了6213个对象/383296字节11-18 14:40:39.976:DEBUG/dalvikvm(305):GC_FOR_MALLOC在60ms中释放了11936个对象/829776字节11-18 14:40:40.566:WARN/ActivityManager(58):启动超时已过期,放弃唤醒锁定!11-18 14:40:40.616:WARN/ActivityManager(58):历史记录{4509bb30 msum.arch/.maplst}的活动空闲超时11-18 14:40:41.986:DEBUG/dalvikvm(305):GC_for_MALLOC在57ms内释放了6161个对象/371768个字节,我检查过了,是的,拼写正确。仍在调试这个。如果我从“LocationManager.GPS\u PROVIDER”更改为“.NETWORK\u PROVIDER”;它开始为我工作,因为在地图中出现了一个预定义的位置,但是我无法使用eclipse的模拟器传递新的坐标。我检查了mainifest.xml,设置为使用粗略和精细位置。有什么新的想法吗?请在崩溃发生时发布你看到的logcat异常。我认为这不是拼写错误loc.getLongitud(),因为你的代码无法编译。这里是崩溃时最后4行的logcat:11-18 14:40:38.136:DEBUG/dalvikvm(305):GC_FOR_MALLOC在62ms中释放了6213个对象/383296字节11-18 14:40:39.976:DEBUG/dalvikvm(305):GC_FOR_MALLOC在60ms中释放了11936个对象/829776字节11-18 14:40:40.566:WARN/ActivityManager(58):启动超时已过期,放弃唤醒锁!11-18 14:40:40.616:WARN/ActivityManager(58):历史记录{4509bb30 msum.arch/.maplst}的活动空闲超时11-18 14:40:41.986:DEBUG/dalvikvm(305):GC_for_MALLOC在57ms内释放了6161个对象/371768个字节,我检查过了,是的,拼写正确。仍在调试这个。如果我从“LocationManager.GPS\u PROVIDER”更改为“.NETWORK\u PROVIDER”;它开始为我工作,因为在地图中出现了一个预定义的位置,但是我无法使用eclipse的模拟器传递新的坐标。我检查了mainifest.xml,设置为使用粗略和精细位置。有什么新想法吗?请原谅,我是android新手,但有一些编程经验,但不幸的是,我没有看到你是什么。我检查看,如果有什么改变,如果它改变了,然后返回位置。请原谅,我是android新手,但有一些编程经验,但不幸的是,我没有看到你是什么。我检查看,如果有什么改变,如果它改变了,然后返回位置。它应该寻找新位置的其他原因。