2013-03-21 144 views
0

我想我的APK上傳到Android的控制檯,但它給了我下面的消息:谷歌地圖網格只有安卓

您上傳的是在調試模式下籤署APK。您需要在發佈模式下籤署 APK。

我所做的只是:我從lib目錄獲取.apk,然後使用命令行對其進行zipalign。

這個失敗後,我嘗試過其他的態度如下:

(在Eclipse)Android的工具 - >出口簽名的應用項目 - >然後我做了所有需要完成新的創建apk文件。

然後我試着再次上傳.apk,我得到的一切都很好,但我的應用程序的大部分都是基於GoogleMapView,而MapView只能看到網格......所需要的是,如果我嘗試發送apk就像lib目錄中的那樣,到我的電子郵件,它也很好,並顯示地圖以及...所以問題不在於地圖關鍵,這是很好。

我真的嘗試了一切,但它似乎不工作,應該是什麼問題?

總之,這裏的清單:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="in.moshe.wakoslakos" 
    android:versionCode="6" 
    android:versionName="1.6" > 

    <uses-feature 
     android:glEsVersion="0x00020000" 
     android:required="true"/> 

    <uses-sdk 
     android:minSdkVersion="8" 
     android:targetSdkVersion="13" /> 

    <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"/> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> 
    <uses-permission android:name="android.permission.SEND_SMS"/> 
    <uses-permission android:name="android.permission.READ_CONTACTS"/> 

    <application 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@android:style/Theme.NoTitleBar" > 
     <uses-library android:name="com.google.android.maps" /> 

     <meta-data 
    android:name="com.google.android.maps.v2.API_KEY" 
    android:value="@string/maps_key"/> 

     <activity 
      android:name="in.wptrafficanalyzer.locationingooglemap.MainActivity" 
      android:screenOrientation="portrait" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity 
      android:name="in.wptrafficanalyzer.locationingooglemap.Settings" 
      android:label="@string/title_activity_setting" 
      android:theme="@style/AppTheme" 
      android:screenOrientation="portrait"> 
     </activity> 
    </application> 



</manifest> 

我真的絕望了,請幫我解決這個問題...感謝:-(

回答

3

的問題是與地圖鍵

當你做了Android tools --> export signed application project -->時,你的apk已經用一個新的密鑰庫進行了簽名。爲了使地圖工作,你需要像調試密鑰庫一樣獲取密鑰庫的MD5哈希值,並生成一個新的API密鑰,然後使用該API密鑰並在b之後再次簽署您的apk建立它。

+0

你能解釋一步一步嗎?因爲我沒有理解這些步驟......爲什麼我應該使用另一個鍵?如果MapView顯示罰款離線(月食)爲什麼它不在線(Play商店)? – Adam 2013-03-21 20:14:57

+0

@Adam由於Eclipse使用的調試密鑰對生產應用程序無效。它只持續一年。因此,您需要使用您自己的密鑰。獲取MD5的過程在[這裏](https://developers.google.com/maps/maps/documentation/android/v1/mapkey)中有描述 – 2013-03-21 20:34:11

+0

但是我在不到一年前創建了當前密鑰...所以每次你上傳一個MapView應用程序,你必須創建一個新的密鑰? – Adam 2013-03-21 21:06:10