Android MapView Anzeige leer
Manifest:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.yu.lbs"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<uses-permission android:name="android.permission.INTERNET" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<uses-library android:name="com.google.android.maps" />
<activity
android:name="com.yu.lbs.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>
</manifest>
main.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<com.google.android.maps.MapView
android:id="@+id/mapView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:apiKey=".........."
android:clickable="true"
android:enabled="true" />
</LinearLayout>
MainActivity.java:
import android.os.Bundle;
import android.view.Menu;
import com.google.android.maps.MapActivity;
public class MainActivity extends MapActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
@Override
protected boolean isRouteDisplayed() {
//TODO Auto-generated method stub
return false;
}
}
Die Aktivität gestartet werden kann. Aber in der MapView gibt es nichts. Die kleinen raster map zeigen, ich denke, dass kommt mit Kartenansicht, aber keine map geladen ist. Was könnte falsch sein? Ich bin mit Google API v3. Aber dieser code ist aus einem Buch mit API v1.
- Hat iU Wählen Sie "Google API" project Build Target? und fügen Sie diese <uses-permission android:name="android.die Genehmigung.ACCESS_FINE_LOCATION"/> <uses-permission android:name="android.die Genehmigung.ACCESS_COARSE_LOCATION"/>
- Yup ich habe die Google-APIs [Android 4.3] in meinem package-explorer unter mein Projekt.
- Haben Sie überprüft Ihre internet-Verbindung Geschwindigkeit?
- Die Geschwindigkeit ist in Ordnung. Ich kann sehen, Karten in Google Maps, aber nicht in meiner app.
- Ich habe es versucht, aber die Karte noch nicht zeigen..
- wie U erzeugt die android:apiKey ?
- bei der Google API-Konsole, drehte ich mich auf V2 und V3 und bekam die Schlüssel in der API-Zugriff unter Einfachen API-Zugriff
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dem Weg ich habe mir behoben, ich hatte, dies zu tun:
Wichtigen Teil, der mir fehlte ist, dass Sie rufen Sie die
onCreate()
- Methode vor dem AufrufgetMapAsync()
und sobald der Rückruf aufgerufen wird, müssen Sie rufen SieonResume()
auf dieMapView
Objekt.Vollkommen gelöst für mich.
Hier ist, was es Aussehen würde in Ihrer eigenen Klasse:
Hoffe, das hilft!
Ich denke, Sie sind ein Chaos von der version von Google Maps, die Sie versuchen, zu implementieren.
Der code, der verwendet wird, indem Sie es scheint, dass Sie versuchen, zu verwenden die Google Maps API V1.
Das problem mit diesem ist, dass Sie nicht produzieren können nun die Tage einen neuen API-key für Google-Map-API-V1, diese version ist veraltet und wird Google nicht bieten einen neuen Schlüssel für Sie.
ab in die Kommentare damit aussieht, dass in der API-Konsole, die Sie nicht aktiviert, die richtige API.
Werfen Sie einen Blick auf dieses blog-post, um eine Idee zu bekommen, wie ein API-Schlüssel für Google Map API V2 für Android:
Google Maps API V2 Key
Nächsten, gehen Sie über die folgende Anleitung zur Umsetzung dieser version bei Ihnen Anwendung:
Google Maps API V2
Use Map API V2 für google-Karte in android. Besuchen Sie diese link werden kann, hilft Sie.
Es ist besser als die alte version und auch leichter.