android開發位置應用getBestProvider返回為空的問題
阿新 • • 發佈:2019-01-03
如下程式碼片段
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tView=(TextView)findViewById(R.id.showLocation);
lManager=(LocationManager)getSystemService(Context.LOCATION_SERVICE);
String bestProvider=lManager.getBestProvider(getCriteria(), true);
if(bestProvider!=null)
{
Location location=lManager.getLastKnownLocation(bestProvider);
// updateView(location);
lManager.requestLocationUpdates(bestProvider, 5000, 8, llListener);
updateView(location);
}
}
每次執行到標紅程式碼的時候,發現provider都是空值
出現這個問題很可能是許可權問題,在manifest檔案寫入
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permisstion.ACCESS_FINE_LOCATION"/>
發現問題還是沒有消除,此時最好是重啟一下裝置,然後重新除錯,問題消除