Карты Google не загружают карту в моем приложении

Вопрос:

Прежде чем я начну, я очень новичок в использовании java, я обычно создаю приложение со вспышкой, но кто-то сказал мне, что затмение лучше, поэтому я новичок, когда дело доходит до eclipse и android.

Я пытаюсь создать базовое приложение стиля навигации с помощью карт Google. Я следил за бесчисленными учебниками и часами работал в Интернете, чтобы попытаться решить мою проблему, но я ничего не нашел.

Проблема в том, что карта не загружается, а просто отображает сетку серого прямоугольника. Я сам не вижу ошибок, но не знаю, где искать. Я создал ключ API для карт google для моего сертификата и отладочного хранилища, так как здесь предлагаются многочисленные руководства и темы. Ссылка 1

Я использовал этот метод для ключа SHA1. Я попытался отладить это в эмуляторе, на устройстве и экспортировать файл apk и установить прямо на свое устройство.

Вот мой файл манифеста:

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

<uses-sdk
android:minSdkVersion="11"
android:targetSdkVersion="17" />
<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_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION"/>

<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
<uses-library android:name="com.google.android.maps"/>
<activity
android:name="com.route1designs.tenttom.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>
<activity android:label="mainmenu" android:name="MainMenu"></activity>
<activity android:label="settings" android:name="Settings"></activity>

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

<meta-data
android:name="com.route1designs.tenttom.AIzaSyCAL-boLUdqDM_fLwlewYKNWHReXYVoEdU"
android:value="AIzaSyCAL-boLUdqDM_fLwlewYKNWHReXYVoEdU"/>

</application>

</manifest>

мой mainMenu (деятельность на карте):

package com.route1designs.tenttom;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.location.LocationListener;
import android.location.LocationManager;
import android.net.ConnectivityManager;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;

import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapController;
import com.google.android.maps.MapView;


import com.route1designs.dbfunctions.DatabaseHandler;
import com.route1designs.dbfunctions.Location;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import  android.database.sqlite.SQLiteOpenHelper;

import java.util.List;

import org.w3c.dom.Text;

import android.util.Log;
import android.widget.TextView;

public class MainMenu extends MapActivity {

//adds page vars for default page
private MapView mapView;
private MapController mc;


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

setContentView(R.layout.main_menu);
mapView = (MapView) findViewById(R.id.start_map);

mc = mapView.getController();

String coordinates[] = {"30", "71"};
double lat = Double.parseDouble(coordinates[0]);
double lng = Double.parseDouble(coordinates[1]);

GeoPoint p = new GeoPoint(
(int) (lat * 1E6),
(int) (lng * 1E6));

mc.animateTo(p);
mc.setZoom(7);
mapView.invalidate();


//build vars
currentLocBG = findViewById(R.id.currentLoc);
currentLoc = (TextView) findViewById(R.id.currentLocText);

}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
//getMenuInflater().inflate(R.menu.main, menu);
onMenuPressed();
return true;

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

}

И это мой XML файл:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<com.google.android.maps.MapView
android:id="@+id/start_map"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginTop="53dp"
android:clickable="true"
android:enabled="true"
android:orientation="vertical"
android:apiKey="AIzaSyBp9PQhSJxHiJcRm6wETHbZr-eXcICanvI"/>
</RelativeLayout>

Любая помощь будет очень признательна, поскольку я полностью застрял. Если ничего не может быть сделано, проще включить карты google в flash-профессионал или строитель.

Лучший ответ:

Вы работаете на эмуляторе или на реальном устройстве? API Google Maps v2 не будет запущен в эмуляторе, который был создан с помощью целевых «API Google», это известная проблема. См. Запуск Google Maps v2 в эмуляторе Android для обхода

Оцените статью
TechArks.Ru
Добавить комментарий