1)创建了新项目。
2)创建了选定的谷歌地图。
3)调试google_maps_api.xml步骤。
创建了Google开发者控制台API密钥。
<string name="google_maps_key" templateMergeStrategy="preserve" translatable="false">
AIzaSyDRuMUTElAoXoK2y2rXSqtpvdQSZ12z_dk
</string>
4)发布google_maps_api.xml步骤。
developers.google.com/maps/documentation/android/signup steps。
keytool -list -keystore your_keystore_name
keytool -list -v -keystore your_keystore_name -alias your_alias_name
SHA1::0D::74:D3::E1:43::71::62:90: :A1:66:6E:__:5D:75添加
创建了Google开发者控制台API密钥。
<string name="google_maps_key" templateMergeStrategy="preserve"
translatable="false">
AIzaSyB3d_usre_Joj_TrgP3aKtdkrSt_tTeqGI
</string>
添加了不同的发布密钥。
5)AndroidManifest.xml
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="@string/google_maps_key" />
<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.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
6)生成签名的APK创建,Build Type发布版本。
7)在Play商店发布测试版。
8)Google地图屏幕空白。
9)但是本地运行应用程序谷歌地图工作正常。
10)在Google开发者控制台上正确添加了所有包名称。
答案 0 :(得分:1)
您正在cmd中生成SHA-1。有时cmd返回本地SHA-1而非管理员。所以尝试从Android工作室创建SHA-1。 按照步骤生成SHA-1:
Preview
(Project name
选项显示的工作室的右侧面板)Task
android
signingReport
@Umbraco.Field('lokation') @Umbraco.Field('aPIKey')
生成SHA-1,复制此SHA-1并粘贴到谷歌控制台。
答案 1 :(得分:1)
我认为您仍然在发布版本中使用SHA1 for debug.keystore ...尝试在您的发布密钥库中获取SHA1。
Windows终端
keytool -list -v -keystore "{PATH OF YOUR RELEASE KEYSTORE}" -alias {ALIAS} -storepass {StorePassword} -keypass {KeyPassword}
OSX终端
keytool -list -v -keystore {PATH OF YOUR RELEASE KEYSTORE} -alias {ALIAS -{STORE PASS} android -keypass {KEYPASS}
获取您的SHA1并在您的Google API控制台上注册它。
希望它有所帮助。 。
答案 2 :(得分:0)
问题是我的包名....我在一个文件夹中创建了 MapActivity...所以 android studio 自动将我的包名设置为 com.example.myappname.myfoldename 而不是 com.example.myappname在 google_api.xml 中,因此也在 google 控制台中。
我强烈建议您尝试此解决方案...生成一个新的 api 密钥并检查您的包名称。