谷歌地图 API 密钥 Android 错误

4
我在使用GoogleMap API时遇到了问题,我认为我的应用程序找不到我的api_key(请参见日志),尽管我已经在代码中写了它。 MapView 在打开几秒钟后就崩溃了。在Google API网站上,我启用了地理编码API、适用于Android的Google地点和适用于Android的Google地图。

我的Manifest.xml

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="fr.mapeche.testnav1" >
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
    <!-- The ACCESS_COARSE/FINE_LOCATION permissions are not required to use Google Maps Android API v2, but are recommended.-->
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

    <application
    android:allowBackup="true"
    android:icon="@drawable/ic_prises"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >

    <activity
        android:name=".view.MainActivity"
        android:configChanges="keyboardHidden|orientation|screenSize"
        android:label="@string/app_name"
        android:uiOptions="splitActionBarWhenNarrow" >

        <!-- configChanges Permet de ne pas perdre les données lors de la rotation d'écran -->
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name=".MapsActivity"
        android:label="@string/title_activity_maps" >
    </activity>
    <meta-data
        android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version" />
    <meta-data
        android:name="com.google.android.maps.v2.API_KEY"
        android:value="@string/google_maps_key" />//The wright API_KEY
</application>

日志的一部分:

06-16 15:30:00.944  10741-10852/? E/MDM﹕ [24597] b.run: Couldn't connect to Google API client: ConnectionResult{statusCode=API_UNAVAILABLE, resolution=null}
06-16 15:30:00.986  10741-10855/? E/MDM﹕ [24598] b.run: Couldn't connect to Google API client: ConnectionResult{statusCode=API_UNAVAILABLE, resolution=null}
06-16 15:30:01.077  736-840/? E/WifiStateMachine﹕ WifiStateMachine CMD_START_SCAN source 10007 txSuccessRate=0,00 rxSuccessRate=0,00 targetRoamBSSID=00:23:69:93:39:66 RSSI=-69
06-16 15:30:01.105  736-840/? E/WifiStateMachine﹕ WifiStateMachine CMD_START_SCAN source 10007 txSuccessRate=0,00 rxSuccessRate=0,00 targetRoamBSSID=00:23:69:93:39:66 RSSI=-69
06-16 15:30:02.405  9811-9811/fr.mapeche.testnav1 E/DatabaseHelper﹕     SELECT * FROM fishing ORDER BY fishing_date DESC
06-16 15:30:07.538  11045-11154/? E/SQLiteLog﹕ (283) recovered 12 frames from WAL file /data/data/com.google.android.gms/databases/playlog.db-wal
06-16 15:30:09.162  11212-11212/? E/GmsWearableLS﹕ GoogleApiClient connection failed: ConnectionResult{statusCode=API_UNAVAILABLE, resolution=null}
06-16 15:30:09.177  11212-11296/? E/MDM﹕ [24645] b.run: Couldn't connect to Google API client: ConnectionResult{statusCode=API_UNAVAILABLE, resolution=null}
06-16 15:30:09.268  11212-11308/? E/MDM﹕ [24649] b.run: Couldn't connect to Google API client: ConnectionResult{statusCode=API_UNAVAILABLE, resolution=null}

1
你的问题似乎不在API上,而是与服务的连接有关。请检查您的互联网连接或Google项目中心以获取正确的权限。 - webo80
我已经在清单文件中使用权限检查了互联网连接,这是一个好的方式吗? - captain_rillette
当然,我的设备有互联网。 - captain_rillette
可能是API_UNAVAILABLE Google API client的重复问题。 - webo80
1
我已经看过这篇帖子并尝试了其中的问题,但我还有另一个问题。 - captain_rillette
显示剩余2条评论
1个回答

0

我曾经遇到过这个问题,后来发现连接是出了问题。你需要创建两个凭证(一个用于调试,另一个用于发布版本),并将它们放到适当的Google Maps API xml文件中,然后API就不会再是你的问题了。你需要检查连接或其他东西。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接