用locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);获取定位信息时在T-Mobile上执行正常,而在电信3G互联网手机上运行时就会出现下面的异常:12-15 13:45:39.287: ERROR/LocationManagerService(126): getLastKnownLocation got exception:
12-15 13:45:39.287: ERROR/LocationManagerService(126): java.lang.IllegalArgumentException: provider=network
12-15 13:45:39.287: ERROR/LocationManagerService(126):     at com.android.server.LocationManagerService._getLastKnownLocationLocked(LocationManagerService.java:1408)
12-15 13:45:39.287: ERROR/LocationManagerService(126):     at com.android.server.LocationManagerService.getLastKnownLocation(LocationManagerService.java:1393)
12-15 13:45:39.287: ERROR/LocationManagerService(126):     at android.location.ILocationManager$Stub.onTransact(ILocationManager.java:247)
12-15 13:45:39.287: ERROR/LocationManagerService(126):     at android.os.Binder.execTransact(Binder.java:287)
12-15 13:45:39.287: ERROR/LocationManagerService(126):     at dalvik.system.NativeStart.run(Native Method)
12-15 13:45:40.057: ERROR/dun_service(4307): process rmnet event
12-15 13:45:40.057: ERROR/dun_service(4307): Post event 3
12-15 13:45:40.057: ERROR/dun_service(4307): received event: DUN_EVENT_RMNET_DOWN 
12-15 13:45:40.057: ERROR/dun_service(4307): received event(DUN_EVENT_RMNET_DOWN) in state(DUN_STATE_IDLE)
12-15 13:45:40.057: ERROR/dun_service(4307): Ignoring the event DUN_EVENT_RMNET_DOWN in IDLE_STATE
12-15 13:45:40.057: ERROR/dun_service(4307): Moved to state(DUN_STATE_IDLE)
12-15 13:45:40.057: ERROR/QC-DSS-LIB(64): unrecognized ifi_index 8有没有人遇到过啊 ,这是怎么一回事哦貌似,电信没有提供network定位服务啊  在他的 LocationProvder中 就只有gps,没有network的 该怎么样解决这个异常 啊   谢谢。

解决方案 »

  1.   

    java.lang.IllegalArgumentException: provider=network
    应该是电信网络不支持
    用requestLocationUpdates方法试试看得到的值是不是NULL。
      

  2.   

     可以试试这个locationManager.requestLocationUpdates(provider, 10000, 5, locationListener);  
    private final LocationListener locationListener=new LocationListener(){
       public void onLocationChanged(Location location) {
        
       }
       public void onProviderDisabled(String provider) {
        
       }
       public void onProviderEnabled(String provider) {
       }
       public void onStatusChanged(String provider, int status, Bundle extras) {
       }
      
    };
      

  3.   

    我也遇到一样的问题gps可以,用network就报错
      

  4.   

    6楼的 gps可以用,真的吗?可以给点提示什么的吗?