0

MapViewをAndroidで実行しようとしています。しかし、私は空のグリッドを取得します。

例外に従いましたが、「java.io.IOException:サーバーが返されました:3」というエラーが発生します。

debug.keystoreを数回削除し、再作成しました。毎回、APIコンソールを使用して新しいAPIキーを作成しました。

これが私のMapViewの宣言方法です。

<com.google.android.maps.MapView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/mapView"
    android:layout_width="match_parent"
    android:layout_height="184dp"
    android:layout_x="0dp"
    android:layout_y="0dp"
    android:apiKey="my api key"
    android:clickable="true" >
</com.google.android.maps.MapView>

また、Androidマニフェストファイルにいくつかの権限を追加しました。

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

<permission android:name="com.example.conti_lab6.permission.MAPS_RECEIVE" android:protectionLevel="signature"/>
<uses-permission android:name="com.example.conti_lab6.permission.ACCESS_COARSE_LOCATION"></uses-permission>
<uses-permission android:name="com.example.conti_lab6.permission.ACCESS_FINE_LOCATION"></uses-permission>
<uses-permission android:name="com.example.conti_lab6.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-feature android:glEsVersion="0x00020000" android:required="true"/>
<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"/>
<!-- The following two permissions are not required to use
     Google Maps Android API v2, but are recommended. -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

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

    <activity
        android:name="com.example.conti_lab6.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>
    <uses-library android:name="com.google.android.maps" /> 
</application>

私はこれについての考えがありません。エミュレーターをローカルで実行していますが、.androidファイルのdebug.keystoreを使用する必要があります。

4

1 に答える 1

1

したがって、ApiV2の場合

少し変更が必要です

レイアウト:

<?xml version="1.0" encoding="utf-8"?>
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:map="http://schemas.android.com/apk/res-auto"
  android:id="@+id/map"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
 class="com.google.android.gms.maps.SupportMapFragment"/>

そして、あなたは追加する必要がありますgoogle play library、そして The error which you are getting is generally occured when you are running your app Using v1 api key

また、キーの生成には、パッケージ名付きのSHA1証明書を使用できます。

詳細については、このリンクを確認してください

于 2013-03-26T13:34:56.397 に答える