在android的LocationManager中显示java.lang.illegalargumentexception

时间:2011-09-22 09:37:53

标签: android locationmanager illegalargumentexception

我有一个应用程序,我在第一页获取当前位置。在印度,应用程序工作正常并获得当前位置。当我们在美国运行应用程序时,应用程序在第一页本身崩溃并抛出IllegalArgumentException。    I am including the exception details here.

1 个答案:

答案 0 :(得分:2)

手机没有启用任何提供程序来检测位置,即它既没有连接到GPS也没有WI-FI,在这种情况下,提供程序被传递为null。假设您向provider函数提供requestLocationUpdates()参数,找到最佳提供者,如果找不到任何参数,将返回null。

我会先检查是否有任何提供程序已启用,然后再继续处理此问题。为避免将null作为提供者传递,请在调用位置更新之前检查提供者是否为null。

if (provider != null) {
      requestLocationUpdates()
} else {
      // alert user asking him to enable one of the providers.
}

你就是这样做的。

HTH。