2010-12-07 5 views
6

問題はマップが表示されないことです。それはあなたが(例えば:)インターネット許可を持っていないときに示すグリッドです。ここで誰でも私はこのマップのアプリを動作させるのに役立つことができますか?

は私のJavaクラスです:

public class MapClass extends MapActivity { 

public void onCreate(Bundle icicle) { 
    super.onCreate(icicle); 
    setContentView(R.layout.maplayout); 

    MapView mapView = (MapView) findViewById(R.id.mapView); 
    mapView.setBuiltInZoomControls(true); 
    } 

@Override 
protected boolean isRouteDisplayed() { 
    // TODO Auto-generated method stub 
    return false; 
} 
} 

ここに私のXMLレイアウトファイル(マイナス地図キー)です:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.android.mapexample" android:versionCode="1" 
android:versionName="1.0" android:installLocation="internalOnly"> 

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

    <uses-library android:name="com.google.android.maps" /> 
    <activity android:name=".MapClass" android:label="@string/app_name" 
    android:theme="@android:style/Theme.NoTitleBar"> 

    <intent-filter> 

    <action android:name="android.intent.action.MAIN" /> 
    <category android:name="android.intent.category.LAUNCHER" /> 

    </intent-filter>> 

    </activity> 
</application> 

<uses-sdk android:minSdkVersion="1" /> 

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

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

</manifest> 
+1

APIキーが間違っていると思います。あなたはそれを正しく生成していますか? – blindstuff

+0

私もそれを考えました。私は約10回、複数のコンピュータでそれを生成しました。また、GoogleからMapView XMLコードを直接コピーして、キーを生成しました。ちょっとしたことがあった場合に備えてです。まだ何も。 – NotACleverMan

+1

エミュレータでテストしていますか?もしそうなら、あなたはすでに新しいADTに更新していますか? –

答えて

3

を確認してください:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/mainlayout" android:orientation="vertical" 
android:layout_width="fill_parent" android:layout_height="fill_parent"> 

<com.google.android.maps.MapView 
    android:id="@+id/mapView" android:layout_width="fill_parent" 
    android:enabled="true" android:layout_height="fill_parent" 
    android:clickable="true" android:apiKey="MY-API-KEY" /> 

</RelativeLayout> 

そしてここでは、私のマニフェストファイルですあなたのアプリはMap APIキーに関連付けられている署名キーで署名されています。私はあなたがデバッグしていると思われるので、アプリはデバッグキーストアで署名されています...あなたはそれのために別のMap APIキーを生成する必要があります。

マップAPIキーごとに1つずつ、2つのレイアウトを保持します。私はデバッグまたはリリースビルドで実行しているかどうかに基づいてレイアウトを動的に選択します。

+0

私はAPKを作成していないので私のアプリに署名していません。アプリに署名するには?キーでAPKを作成し、それを自分の電話にコピーしてインストールする方法はわかります。 – NotACleverMan

+0

Hmmm。APKを作成してから電話にコピーするのは奇妙です私はそれを持っていた昨年はエミュレータで作業していましたが、デバッグキーについて聞いたことがありません。 Thanks – NotACleverMan

+0

Eclipseからデバイス/エミュレータでアプリケーションを実行/デバッグすると、APKが生成され、デバッグ署名キーで署名されます。 Androidマーケットにアプリをデプロイする場合は、独自の署名キーを作成してAPKに署名する必要があります。 – shammer64

関連する問題