我无法在我的应用中使用 Google map 。
我看到一个空白屏幕;没有网格显示,只有谷歌标志和 +/- 缩放按钮。
我做了什么:
- 我启用了“Google Maps Android API v2”API
- 我已将我的项目连同演示项目添加到 Google 控制台上的 API 凭据列表
- 我还添加了 Internet、位置、com.google.android.providers.gsf.permission.READ_GSERVICES 所需的权限。
- 甚至按照一些帖子的建议添加了“MAPS_RECEIVE”权限
- 还添加了“元数据”google_play_services_version
由于演示正在运行,我直接将 MultiMapDemoActivity 及其文件复制到我的项目中并尝试打开 map ,但无济于事。
问题可能与this有关问题。但是,他们似乎根本无法使用 map 。
这是我注意到的有趣的一点,我通常会这样:
10-02 12:29:20.376: D/REQUEST(5826): Connection opened to:https://clients4.google.com/glm/mmap/api
10-02 12:29:20.376: D/REQUEST(5826): Open Connection
接着是:
10-02 12:21:45.361: D/REQUEST(5826): DRD(80): 62|132
10-02 12:21:45.361: D/REQUEST(5826): Close
10-02 12:21:45.361: D/REQUEST(5826): Error processing: com.google.maps.api.android.lib6.b.d@42caa7b8 not retrying
10-02 12:21:45.361: D/REQUEST(5826): Retrying: com.google.maps.api.android.lib6.gmm6.c.a@4296a530
此外,不确定这是否相关,但当我点击打开 map ,或在 map 打开并显示空白 View 后点击 map 时,我会看到:
10-02 13:03:32.978: E/DatabaseUtils(15468): Writing exception to parcel 10-02 13:03:32.978:/DatabaseUtils(15468): java.lang.SecurityException: Permission Denial: get/set setting for user asks to run as user -2 but is calling from user 0; this requires android.permission.INTERACT_ACROSS_USERS_FULL
编辑#1
<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_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
编辑#2 此外,声明的包名称是 com.A.B.C( list );而我的项目的 Activity 具有 com.A.B. 的结构。
此后我更新了我的项目结构以匹配 list 的结构,但我仍然看到与以前相同的错误,没有任何变化。我真的在这里不知所措,因为我不明白这里可能出了什么问题。
如果您能帮助解决这个问题,我们将不胜感激,谢谢!
最佳答案
原来我在这里阅读了n-1个关于这个问题的问题。终于,经过不断的到处寻找,我偶然发现了答案here由@Jack 提供。
基本上,行:"HttpsURLConnection.setDefaultSSLSocketFactory(...)"
是我代码中的罪魁祸首。我将其注释掉,一切正常。
注意:我还没有尝试保留代码行并修改它以使 map 工作。如果我需要/这样做,我会发表评论。
关于android - Android 上的谷歌地图无法在应用程序上运行,但演示很好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26156165/