我剛剛完成了我的第一個使用Maps API和Maps Fragment的應用程序。 一切工作正常與調試,所以我決定做一個簽名的apk。 要讓已簽名的apk與Maps API協同工作,我需要新的密鑰。這裏是我試了一下:Maps API發佈密鑰無效
1)生成APK簽署
2)創建一個新的密鑰存儲文件與此apk創建成功結束.jks
3)(此APK不還包含新的密鑰)
Configuration on demand is an incubating feature.
:app:preBuild
:app:preReleaseBuild
:app:checkReleaseManifest
:app:preDebugBuild
:app:prepareComAndroidSupportAppcompatV72100Library UP-TO-DATE
:app:prepareComAndroidSupportSupportV42100Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServices6171Library UP-TO-DATE
:app:prepareReleaseDependencies
:app:compileReleaseAidl
:app:compileReleaseRenderscript
:app:generateReleaseBuildConfig
:app:generateReleaseAssets UP-TO-DATE
:app:mergeReleaseAssets
:app:generateReleaseResValues UP-TO-DATE
:app:generateReleaseResources
:app:mergeReleaseResources
:app:processReleaseManifest
:app:processReleaseResources
:app:generateReleaseSources
:app:compileReleaseJava
:app:lintVitalRelease
:app:compileReleaseNdk
:app:preDexRelease
:app:dexRelease
:app:processReleaseJavaRes UP-TO-DATE
:app:validateExternalOverrideSigning
:app:packageRelease
:app:zipalignRelease
:app:assembleRelease
BUILD SUCCESSFUL
Total time: 1 mins 57.752 secs
4)我使用keytool從.jks密鑰庫文件
5)我去API網站收到SHA1和產生新的密鑰同一項目作爲一個我進入調試關鍵
6)我一鍵搞定
6.1)奇,它只是說,「關鍵Android應用程序」而不是「關鍵Android應用程序(帶證書)」因爲它是書面的地圖API
7)的文檔中,我把新鑰匙插入其中使用的調試關鍵坐
8場),我再次生成一個簽名的apk(與輸入密碼密鑰庫和別名)
8.1)相同的日誌輸出,無異常
9)我的設備
10)上安裝的apk的地圖瓦片不加載
我一再閱讀文檔,但我可以而她不知道我在哪裏做了一個錯誤
任何幫助是極大的讚賞
謝謝,但這就是我在第5步和第6步中所做的。我嘗試爲SHA1生成一個新密鑰,並嘗試將SHA1添加到允許的應用程序列表中,如剛剛描述的那樣,與調試版一起使用。 – user3443786 2014-11-03 02:29:43
您是否已將新密鑰添加到AndroidManifest? – kmdupr33 2014-11-03 12:20:56
我發現了什麼導致了錯誤。在Android Studio中自動創建的地圖活動中,Key從資源文件「values/google_maps_api.xml」中導入到清單中。當我替換它時,出於某種原因,我沒有將它導入發佈版本。我現在將密鑰硬編碼到清單中,現在它可以工作:-)非常感謝您的幫助 – user3443786 2014-11-03 13:48:23