/ / Google maps API v2 nefunguje na zariadení - android, google-maps

Aplikácia Google Maps API v2 nefunguje na zariadení - android, google-maps

Momentálne pracujem na Mapách Google a preže som postupoval podľa všetkých pokynov na stránke vývojárov systému Android. Ale nemôžem načítať mapu do svojho zariadenia, ale dokážem ukazovať rôzne miesta a všetky. Podporuje moje zariadenie rozhranie Google API V2? Existuje nejaký spôsob, ako zobraziť mapu na mojom zariadení? Moja verzia zariadenia je 2.3.3.

odpovede:

1 pre odpoveď č. 1

Mám funkčnú aplikáciu GoogleMaps v2 aSpočiatku som mal rovnaké problémy ako ty. Problém v mojom prípade bol v tom, že kľúč API, ktorý som použil, sa nezhodoval s certifikátom, ktorý som použil na podpísanie aplikácie (debug / dev pre vývojovú fázu a vydanie pre uvoľnenú aplikáciu Play). Aplikácia pracuje na všetkých verziách systému Android od 10 a viac (takže pracuje na 2.3.3). Z chyby protokolu vyplýva, že pravdepodobne máte problém s pripojením. Vyhlásili ste príslušné oprávnenia na používanie? To by malo byť:

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

Tu je krátky útržok hlavného kódu mapy:

public class LocationActivity extends MapActivity {


private MapController mapController;
private MapView mapView;
private LocationManager locationManager;
private MyLocationOverlay myLocationOverlay;

public void onCreate(Bundle bundle) {
super.onCreate(bundle);
if(Utils.isRelease(getApplicationContext())) {
setContentView(R.layout.location_activity_release); // bind the layout to the activity
} else {
setContentView(R.layout.location_activity); // bind the layout to the activity
}

// Configure the Map
mapView = (MapView) findViewById(R.id.mapview);
mapView.setBuiltInZoomControls(true);
mapView.setSatellite(false);
mapController = mapView.getController();
mapController.setZoom(15); // Zoon 1 is world view

myLocationOverlay = new MyLocationOverlay(this, mapView);
mapView.getOverlays().add(myLocationOverlay);
// More map configurations follow...

A rozloženia (všimnite si rozdiel v kľúči API rozhrania máp): location_activity.xml

<?xml version="1.0" encoding="utf-8"?>
<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="match_parent"
android:apiKey="@string/google_maps_v1_api_key"
android:clickable="true" />

A (location_activity_release.xml):

<?xml version="1.0" encoding="utf-8"?>
<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="match_parent"
android:apiKey="@string/google_maps_v1_api_key_release"
android:clickable="true" />