1

そのため、ターミナルでこのコマンドを使用して、デバッグストアからMD5証明書のフィンガープリントを取得することでAPIキーを生成しました...

keytool -list -alias androiddebugkey -keystore <my_debug.keystore_location> -storepass android -keypass android

これは正常に生成され、オンラインでテキストボックスに入力し、[生成]をクリックして、APIキーを取得します。次に、このキーをxmlレイアウトに入力します。

<com.google.android.maps.MapView
    android:id="@+id/map_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:state_enabled="true"
    android:clickable="true"
android:apiKey="my_api_key/>

次に、AndroidManifest.xmlで、Applicationタグの前にインターネットのアクセス許可を追加し、applicateタグ内にライブラリ参照を配置しました。

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

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:hardwareAccelerated="true" >

    <uses-library android:name="com.google.android.maps"/>

    <activity
        android:name=".MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

私のAVDは、私のプロジェクトと同様に正しいAPIターゲットです。MapViewは表示されていますが、灰色のタイルのみが表示されています。ブラウザを使用して確認したので、エミュレータにもインターネットがあります。

どんな助けでも大歓迎です。

編集

私を見てOKLogCatそれは言う

接続ファクトリクライアントを取得できませんでした

だから私はそれが問題だと思いますか?これがに現れる前に、LogCatそれはまた言います

ネットワーク変更通知の処理:CONNECTED

4

1 に答える 1

0

最後に私は問題を見つけました。私が見つけたはずのさらに別の途方もなく単純な解決策。私の元の質問から取られた以下のコードを見ると、間違いを見つけることができるかもしれません.

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

とった?android.permissions.INTERNETする必要がありますandroid.permission.INTERNET。そうです... SINGULAR。

この後、まだうまくいきませんでした。ただし、.android フォルダーから debug.keystore と debug.keyset を削除してから、Eclipse を再起動し、それらを再生成するために新規インストールを行った後、新しい API キーを取得しました。

これが他の誰かの助けになり、これらの愚かな間違いを避けることができることを願っています.

また、Google Maps API を機能させる方法についてのウォークスルーも書いていますので、参考にしてください。

于 2012-07-10T11:44:05.207 に答える