2016-11-22 104 views
-2

您好我已經建立了基於下列文件 https://developer.android.com/training/location/retrieve-current.html的Android:谷歌地圖是在模擬器可見不是在電話

我已經使用地圖活動小android應用。它將顯示當前的位置標記和Toast,它將顯示當前的經緯度

它在Android模擬器上工作得非常好。但是,當我安裝我的Android手機上籤署的apk,地圖是不可見的,即使它的祝酒詞位置的詳細信息

在電話

Android Phone

+1

看一看http://stackoverflow.com/questions/29468013/谷歌 - 地圖 - 不顯示上釋放,APK – rhari

回答

0

我按照下面的步驟來解決問題

我已經在this文檔中創建了一個密鑰存儲文件。現在我必須在API中使用我的密鑰庫文件的SHA1指紋來限制它(爲了發佈版本的安全原因,這是強制性的)

1)在Keytool.exe文件位置運行密鑰工具命令如下 C: \用戶{USERNAME} .AndroidStudio2.2 \ SYSTEM \重啓\ JRE \ BIN>

keytool -list -v -keystore {File path for Keystore you have created durning Signing} 

這會提示密碼,一旦你輸入密碼,它會給SHA1指紋

2)現在去到Google API管理器控制檯(https://console.developers.google.com/apis)並選擇您的MAP API

關鍵restricion字段選擇「Android應用程序」

輸入您的應用程序包名稱,然後輸入您已收到的SHA1指紋和保存

3)由於我們正在創建的發行版本,輸入在google_maps_api.xml API密鑰從發佈文件夾(應用程序的\ src \發佈\水庫\ valies \ google_maps_api.xml)

4)立即前往builld.gradle文件並創建下的Android

新sectction signingConfigs

android {

signingConfigs { 
     config { 
      keyAlias '{KeyAlias}' 
      keyPassword '{password}' 
      storeFile file('{Path of keystore file eg: c:/keystore.jks'}) 
      storePassword '{Store password}' 
     } 
    } 

} 在調試節點也可參考這些數值,釋放節點

buildTypes { 
    release { 
     minifyEnabled false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     signingConfig signingConfigs.config 
    } 
    debug { 
     signingConfig signingConfigs.config 
    } 
} 

4)創建帶簽名的APK