1

我导入了一个地图样本并运行该应用程序,运行该应用程序后它显示一个白色的地图屏幕。

我在Locat中发现了一个警告说

W/BroadcastQueue(306): Permission Denial: receiving Intent { act=com.google.android.maps.api.action.TOKEN_RESPONSE flg=0x10 pkg=com.example.mapdemo (has extras) } to ProcessRecord{42554900 5306:com.example.mapdemo/u0a216} (pid=5306, uid=10216) requires com.example.mapdemo.permission.MAPS_RECEIVE due to sender com.google.android.apps.maps (uid 10031)

我彻底检查了清单,无法追踪任何问题。请在下面找到我的清单权限。


 <permission
    android:name="com.example.mapdemo.permission.MAPS_RECEIVE"
    android:protectionLevel="signature"/>
  <uses-permission android:name="com.example.mapdemo.permission.MAPS_RECEIVE"/>
  <uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="16"/>
  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
  <uses-permission android:name="android.permission.INTERNET"/>
  <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

  <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
  <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

请让我知道可能的解决方案

更新:我能够摆脱该警告。错误是我使用的是 v1 api 密钥。但是我仍然无法获取地图。显示白屏,没有任何警告或错误。

问候,

4

2 回答 2

7

确保您的清单有

<permission
        android:name="com.example.mapdemo.permission.MAPS_RECEIVE"
        android:protectionLevel="signature"/>
<uses-permission android:name="com.example.mapdemo.permission.MAPS_RECEIVE"/>

还要确保您在地图 api 控制台中设置了密钥(调试或发布)。

于 2013-03-26T06:34:40.870 回答
1

@Gabe Sechan现在完全不需要这个权限了。Google Play Services 3.1.59 的最新更新使其毫无用处。结果,它可以被删除。

因此,请务必更新最新的 google play 服务。

于 2014-08-08T06:50:34.543 回答