1

これに関連するすべてのスタックオーバーフローの質問に目を通しましたが、何も機能しませんでした。これがすでに尋ねられている場合は申し訳ありません。

アプリに Google マップ API を統合しましたが、開発中はすべて正常に動作します。debug.keystore ファイルに基づいてデバッグ API キーを取得しましたが、問題なく動作します。

次に、アプリの署名に使用するキーストア ファイルに基づいてリリース API キーを取得しました。しかし、灰色のタイルしか表示されず、マップが表示されません。マニフェストのapplication タグ内にuses -libraryタグがあります。マニフェストにはインターネットの許可とandroid:debuggable="false"があります(ただし、これは何も変更されていないようです)。

他に何が欠けている可能性がありますか?

4

3 に答える 3

0

別のリンクからリリース キーを作成する必要があります。デバッグキーとリリースキーは異なります。「デバッグ キーとリリース キーを別々に作成する方法」については、こちらを参照してください: http://chocotech.blogspot.com/2012/10/get-debug-key-and-release-key-for.html

于 2013-12-13T11:57:47.680 に答える
0

私も同じ問題を抱えていました。

私がそれを解決した方法:

デバッグ キーストア用に生成された古い API キーはリリース キーストアでは機能しないため、リリース キーストア用の新しい (!) API キーを作成することが重要です。これを行う手順は次のとおりです。 https://developers.google.com/maps/documentation/android/mapkey#getfingerprint

一言で言えば:

  1. たとえば、次のバッチ ファイルを使用して、キーストアのフィンガープリント (MD5) を作成します。

    @echo off "c:\Program Files\Java\jdk1.7.0\bin\keytool.exe" -v -list -keystore my-release-key.keystore > my-release-md5-fingerprint.txt

    ファイル my-release-md5-fingerprint.txt に保存されている Google API キー (md5) をエコーし​​ます。

    一時停止

  2. API が生成される Google サイトに移動します: http://code.google.com/android/maps-api-signup.html

そして、次のような MD5 フィンガープリントを適切なフィールドにコピー アンド ペーストします。スペースまたは追加の記号を使用できます)。

于 2012-10-10T19:35:46.560 に答える
-1

MapView で ApiKey を指定する必要があります。

<com.google.android.maps.MapView
    android:id="@+id/mapView"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:apiKey="@string/mapKey"
    android:layout_below="@+id/email"
    android:clickable="true"
    android:enabled="true" >
</com.google.android.maps.MapView>

mapKey は ApiKey です (ここでは文字列で定義しています)。

于 2012-05-22T00:15:11.357 に答える