0

1 年前に Google マップ v1 を使用して Android アプリを実装しましたが、今はバグを修正する必要があります。問題は、ハードウェア デバイスで Eclipse からアプリを実行すると、マップが空白になることです。LogCat で次のエラーが表示されます。

04-26 14:07:30.754: W/System.err(2354):     at android_maps_conflict_avoidance.com.google.googlenav.map.BaseTileRequest.readResponseData(BaseTileRequest.java:115)

これは API キーのエラーだと思いますが、過去 2 日間にわたって Stack Overflow、Google、Maps SDK の Web サイトを検索しましたが、解決策が見つかりません。この問題は Stack Overflow で既に解決されていますが、どの解決策もうまくいきませんでした。うまくいけば、経験豊富な人が私を助けてくれるでしょう。

マップ v1 が非推奨であることはわかっています。v2 にアップグレードする予定です。しかし、今はこのバグを修正する必要があり、Google によれば、既存の API キーは引き続き機能するはずです。

注意すべきことの 1 つは、最近開発環境を PC から Mac に移動し、必ず同じdebug.keystoreファイルを使用するようにしたことです。これがニシンであるかどうかはわかりませんが、古い環境からコピーする必要がある設定またはファイルがある可能性があります。

私が試したこと:

  1. debug.keystore ファイルが古いコンピューターのものと同じであることを確認しました。
  2. Google API コンソールで API キーが正しいことを確認しようとしましたが、表示されなくなりました (おそらく廃止されたため)。
  3. Maps v2 の新しい API キーを登録し、使用してみました。
4

2 に答える 2

0

他にもいくつかの理由が考えられます。

1.) Java 1.7 以降を使用している場合は、通常は常に sh1 キーを返すため、md5 Print を別の方法で生成する必要があります。-v スイッチのように使用します。

C:\Program Files\Java\jdk1.7.0\bin>keytool -v -list -alias
androiddebugkey -keystore debug.keystore -storepass android -keypass android

2.) Android マニフェスト ファイルで必要なインターネット アクセス許可。

<uses-permission
     android:name="android.permission.INTERNET">
 </uses-permission>
 <uses-permission
     android:name="android.permission.ACCESS_FINE_LOCATION">
 </uses-permission>

3.) マニフェスト ファイルで次の権限を使用します。

 <!-- import the library com.google.android.maps!!! -->
 <uses-library android:name="com.google.android.maps" />
于 2013-04-26T12:40:29.570 に答える