引起:java.lang.IllegalArgumentException:provider == null

时间:2012-03-22 04:22:34

标签: android android-location

我有应用程序访问GPS ...但如果我的GPS未启用我的应用程序强制关闭...这是我的代码,

private void cekGPS() {
    // TODO Auto-generated method stub
    LocationManager locationManager;
    locationManager=(LocationManager)getSystemService(Context.LOCATION_SERVICE);
    locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1000L, 1.0F, this);
    boolean isGPS=locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);
    //pastike sek murup po rak GPS ,e
        if(isGPS==false){
            Toast.makeText(this, "GPS gak aktip", Toast.LENGTH_LONG);
            System.out.println("GPSmati");
            startActivityForResult(new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS), 0);

        } else {
            //lha nek wes pasti murup langsung di cek last know trus lebok2.e 

            System.out.println("GPSmurup");
            Toast.makeText(this, "GPS Aktif", Toast.LENGTH_LONG).show();

        }
}

但我有错误:

03-22 11:16:14.525: ERROR/AndroidRuntime(5426): Caused by: java.lang.IllegalArgumentException: provider==null

任何人都可以帮助我吗?谢谢。

1 个答案:

答案 0 :(得分:1)

您是否有权让您的应用访问GPS?从日志看,似乎没有权限,或设备/模拟器无法识别GPS传感器。因此,提供者为空。

你究竟在哪一行得到这个例外?这将有助于找到它的根源。