我尝试使用Android MapActivity,所以我通过此链接从我的Debug.keystore MD5创建了我的API密钥 https://developers.google.com/android/maps-api-signup
然后我在我的Manifest中设置了这行代码:
申请子女
<uses-library android:name="com.google.android.maps" />
像我这样设置我的权限
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_GPS" />
<uses-permission android:name="android.permission.ACCESS_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_ASSISTED_GPS" />
并使用我的api密钥
设置MapView<com.google.android.maps.MapView
android:id="@+id/mapview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:apiKey="MY API KEY"
android:clickable="true" />
在Java文件MapActivity中,我从以下示例中完成了我的代码:
locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
// Define the criteria how to select the locatioin provider -> use
// default
Criteria criteria = new Criteria();
provider = locationManager.getBestProvider(criteria, false);
Location location = locationManager.getLastKnownLocation(provider);
if (location != null) {
System.out.println("Provider " + provider + " has been selected.");
onLocationChanged(location);}
我的代码以前工作正常。我可以通过overlayItem设置我的引脚点,但是当我回来再次查看我的代码而没有对MapActivity执行任何操作时,它不再起作用了。我的LogCat显示为MapActivity "Couldn't get connection factory client"
我到了/.android文件夹并删除了我的debug.keystore并再次生成我的新API密钥,但它仍然无效。
有谁知道如何解决这个问题?
编辑:更多信息,位置始终为空。
答案 0 :(得分:0)
不确定这是否是一个解决方案,但它现在适用于我。我刚从
更改了AndroidManifest文件中的用户权限顺序<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_GPS" />
<uses-permission android:name="android.permission.ACCESS_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_ASSISTED_GPS" />
<uses-permission android:name="android.permission.INTERNET" />
到
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" />
移动
<uses-permission android:name="android.permission.INTERNET" />
到顶部。
编辑:OMG问题再次出现!!这不是解决方案。