【发布时间】:2015-07-27 14:57:11
【问题描述】:
我已经阅读了所有类似的问题,并做了其中描述的所有事情,但没有帮助。
Google Maps API v2 已启用且 API 密钥正确
我只是在“新建项目”中选择了 GoogleMapsActivity,然后创建了一个 key.jks,通过 keytool 创建了 sha1,创建了公共 api 访问密钥,将我的 API 密钥放入清单中。
我试过了:
清理重建卸载应用程序安装
多次更新 api 密钥
使用新的 key.jks 创建一个新项目(然后重新开始)
删除并创建 api 密钥
这是我的清单:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.dandewine.user.thinkmobiletest" >
<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" />
<!--
不需要 ACCESS_COARSE/FINE_LOCATION 权限即可使用 Google Maps Android API v2,但推荐使用。 -->
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<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="AIza**************************" />
<activity
android:name=".ActivityMain"
android:label="@string/title_activity_activity_main" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
这是我的活动:
public class ActivityMain extends FragmentActivity implements OnMapReadyCallback {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.fragment_map);
SupportMapFragment mapFragment = (SupportMapFragment)getSupportFragmentManager().findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
}
@Override
public void onMapReady(GoogleMap googleMap) {
googleMap.addMarker(new MarkerOptions()
.position(new LatLng(0, 0))
.title("Marker"));
}
Logcat:
E/Google Maps Android API﹕ Authorization failure. Please see https://developers.google.com/maps/documentation/android/start for how to correctly set up the map.
07-27 14:52:37.551 25002-25035/com.dandewine.user.thinkmobiletest E/Google Maps Android API﹕ In the Google Developer Console (https://console.developers.google.com)
Ensure that the "Google Maps Android API v2" is enabled.
Ensure that the following Android Key exists:
API Key: AIza****************************
Android Application (<cert_fingerprint>;<package_name>): 8C:2B:4C:F7:CF:FB:EC:D5:DC:D7:D0:5D:6E:30:49:74:97:18:57:88;com.dandewine.user.thinkmobiletest
更新:我在 google dev 中有不同的 SHA1 指纹。控制台和日志中,如何处理?
任何人都可以提供建议。
【问题讨论】:
-
你有什么异常吗?
-
@Aakash 哦,是的,抱歉忘记发帖,看看更新
-
您的指纹/包裹是否与您的日志中显示的完全相同?此外,您不应发布您的 API 密钥或完整指纹。
-
@DanielNugent,谢谢!错了,SHA1 指纹不一样,但我不知道哪里出错了
-
@DanielNugent,你能告诉我应该用不同的 sha1 做什么,从哪里 IDE 会过时 sha1
标签: android google-maps