在 android 中的 LocationManager 处显示 java.lang.illegalargumentException
我有一个应用程序,我在第一页获取当前位置。在印度,应用程序运行良好并获取当前位置。当我们在美国运行应用程序时,应用程序在第一页本身崩溃并抛出 IllegalArgumentException。
I have an application in which I am getting current location at the first page. In India Application is working fine and getting current location. When we run the application in US, application is getting crashed at the first page itself and throwing IllegalArgumentException.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
手机没有启用任何提供商来检测位置,即它既没有连接到
GPS
也没有连接到WI-FI
,在这种情况下,提供商将作为 null 传递。假设您通过查找最佳提供程序向requestLocationUpdates()
函数提供provider
参数,如果找不到任何提供程序,该提供程序将返回 null。在进一步处理此问题之前,我将首先检查是否启用了任何提供程序。为了避免将 null 作为提供程序传递,请在调用位置更新之前检查提供程序是否为 null。
这就是你的做法。
HTH。
The phone doesn't have any provider enabled to detect the location, i.e it is neither connected to
GPS
norWI-FI
, in which case the provider is being passed as null. This is assuming that you are providingprovider
argument torequestLocationUpdates()
function by, finding the best provider, which will return null, if it can't find any.I would first check if any provider is enabled, before proceeding any further in to this matter. To avoid passing null as a provider, check if the provider is null before calling for location update.
This is how you do it.
HTH.