gpt4 book ai didi

java - android getlastknownlocation 在模拟器中始终为空

转载 作者:太空狗 更新时间:2023-10-29 15:53:31 25 4
gpt4 key购买 nike

这似乎是一个普遍的问题,但我真的不明白为什么会发生这种情况,即使我阅读了大量类似的问题。

我正在模拟器设备上玩一个基本的位置类,我设置了所有内容 - 权限(FINE 和 COARSE),我在 DDMS 中设置了坐标我也尝试使用 telnet 然后 ,但不管它总是在 getlastknownlocation 的行上因空指针异常而崩溃,这里有什么问题吗?

public class MainActivity extends Activity implements LocationListener {
private static LocationManager ok;
private Location L;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

ok=(LocationManager)this.getSystemService(ok.GPS_PROVIDER);
L=ok.getLastKnownLocation(ok.GPS_PROVIDER);
}

@Override
public void onLocationChanged(Location Loc) {
try {
double latop=Loc.getLatitude();
double longe=Loc.getLongitude();

Log.i("OK", "and"+longe+""+latop);
} catch (NullPointerException e) {
}
}

最佳答案

getLastKnownLocation() 通常会返回 null,如果最近没有应用向您所需的提供商请求位置修复。

在模拟器上,它似乎更进了一步:除非您的应用已调用 requestLocationUpdates(),否则您不会获得位置,除非将位置传送到模拟器。

使用 getLastKnownLocation() 的一般模式是使用 requestLocationUpdates(),如果您想获得实际的 LocationremoveLocationUpdates() 以确保 LocationManager 正在通过您选择的提供商积极寻找位置。当然,您也可以使用 LocationListeneronLocationChanged(),而不是 getLastKnownLocation(),如果您愿意的话。

关于java - android getlastknownlocation 在模拟器中始终为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21583015/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com