当使用GPS提供商阅读Lat& Lang值时,在启用GPS时返回空值但在10到15秒后完美地获得lat& lang值。如何在启用GPS后首次获得lat& lang值。
答案 0 :(得分:0)
GPS提供商正在启用GPS后返回空值,因为您的GPS接收器刚刚开始收听GPS卫星发送的数据。这意味着纬度和经度将保持空值,直到您的GPS接收器获得新位置。 请注意,您的LocationManager有一个名为' getLastKnownLocation(String provider)'如链接LocationManager中所述。此方法将返回上次保存的GPS位置(如果有),这意味着您不会有空值,但是,禁用您的设备GPS将删除此信息,并且您将像往常一样启用它后将获得空值
我在你的情况下做的是: - 在应用程序终止之前保存最后一个用户位置(使用SharedPreferences或其他存储方法) - 如果getLastKnownLocation(String provider)值不为null,则使用该值,否则,加载上次保存的用户位置。