【问题标题】:Is READ_GSERVICES permission still required for Google Maps?Google 地图是否仍需要 READ_GSERVICES 权限?
【发布时间】:2014-07-07 19:59:37
【问题描述】:

要将 Google 地图添加到您的 android 应用程序,您需要包含一些权限:

<!-- Required -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<!-- Optional -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

但是,通过再次检查 Google Maps Android API v2 文档,我注意到了

com.google.android.providers.gsf.permission.READ_GSERVICES

不再需要。我通过从AndroidManifest.xml 中删除它来测试它,并且地图加载正常,没有任何问题。

所以,我的问题是..READ_GSERVICES 许可的目的是什么?

注意:尽管它已从 Google Maps Android API v2 文档中删除,但可以在 Google Maps API for Business 文档中找到。

【问题讨论】:

    标签: android google-maps google-play-services


    【解决方案1】:

    Google Maps Android API are in the docs 所需的所有权限:

    您还必须请求 android.permission.WRITE_EXTERNAL_STORAGE 权限。

    注意:如果您的目标是 Android M SDK (23) 和最新版本的 Google Play 服务 SDK (8.1),则不再需要 WRITE_EXTERNAL_STORAGE。

    从 Google Play 服务 SDK 的下一个版本开始,对 WRITE_EXTERNAL_STORAGE 权限的要求将从 Google Maps Android API 中完全删除。

    所以答案是否定的,如果您使用当前最新的 GPS,即 8.1.0,则不需要它。

    【讨论】:

    • user2896182 是关于 com.google.android.providers.gsf.permission.READ_GSERVICES 的,而您回答了关于 WRITE_EXTERNAL_STORAGE 的问题。
    • user2896182 在他的描述中也问了一个与标题中指定的问题不同的问题。这个问题没有回答,这可能是张的意思。编辑:这个问题显然是以前问过的:android.stackexchange.com/questions/98330/…
    【解决方案2】:

    不,Google MAP API V2 不再需要此柿子

        <permission
                     android:name="phonelocation.example.asuss550c.phonelocation.permission.MAPS_RECEIVE"
                     android:protectionLevel="signature" />  
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
    

    您只需要添加

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

    你的应用程序标签中还有这个元数据

       <meta-data
                android:name="com.google.android.geo.API_KEY"
                android:value="@string/google_maps_key" />
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-11-28
      • 2016-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-24
      • 1970-01-01
      • 2013-04-09
      相关资源
      最近更新 更多