Ошибка Разбавление класса com.google.android.maps.MapView

Я просто следую простому учебнику по карте http://developer.android.com/resources/tutorials/views/hello-mapview.html, но получаю эту ошибку. Я новичок в android, я пытался следовать всем решениям, предоставляемым через Интернет, но пока не удалось. Пожалуйста, помогите мне. Мой основной .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="fill_parent" android:layout_height="fill_parent" android:clickable="true" android:apiKey="***" /> 

И файл манифеста – это

У меня была эта проблема и она была решена следующими двумя шагами:

1) Поместите следующую строку в элемент приложения (важный) в файле AndroidManifest.xml.

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

2) расширьте MapActivity вместо Activity.

наслаждаться!

Вы расширили основной класс как MapActivity?

 public class a extends MapActivity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } @Override protected boolean isRouteDisplayed() { // TODO Auto-generated method stub return false; } } 

У меня была та же проблема, и около 3 часов поиска это то, что я сделал, чтобы исправить это, все в манифесте.

1) В моем манифесте этот код не был в нужном месте

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

Он должен быть здесь, под

  <application> 

как это

  <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.package.name"> ... <application android:name="MyApplication" > <uses-library android:name="com.google.android.maps" /> ... </application> ... </manifest> 

2) Я потерял какой-то период в моем манифесте

  <activity android:name="MyClass" //*****should be android:name=".MyClass"*** android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MyClass /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> 

3) Я не указывал версию min sdk, которая подпадает под

  <manifest> 

код:

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

4), чтобы заставить карту работать через eclipse в режиме отладки, следуйте этим указаниям в своем cmd или терминале http://www.buzztouch.com/resources/Obtaining_a_Google_Maps_API_Key_v1.0.pdf

Я надеюсь, что это помогает кому-то

У меня была проблема. Просто расширяйте MapActivity вместо Activity.

В эмуляторе, на котором запущено приложение, нет баннера google map. Поэтому создайте эмулятор из Google API, запустив там свое приложение.

См. Изображение для создания эмулятора с API Google.

Введите описание изображения здесь

Вставьте это в объявление xml MapView

 xmlns:android="http://schemas.android.com/apk/res/android" 

Для работы с картами Google в дополнение к использованию тега

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

В теге, используйте другой тег

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

Внутри тега, и все готово.

Но помните, что вы должны запускать это приложение в AVD, совместимом с API Google Inc., но не с Android API.

Еще одна важная вещь: убедитесь, что вы используете ключ MD5 API вместо SHA1 или любой другой API-интерфейс протокола.

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

Я проверил все другие хорошие подсказки, но ни один из них не пропал в моем проекте.

Что, наконец, решило проблему для меня, было то, что я забыл объявить MapView в макете, включая полное имя пакета. Ни Eclipse, ни Lint не сказали мне об этом:

 <com.google.android.maps.MapView ... /> 

Получается это исключение, даже если все шаги, упомянутые выше, соблюдаются, но api-key не указан для MapView. Просто добавьте api-ключ, который вы получили из Google

 <com.google.android.maps.MapView android:id="@+id/mapview" android:layout_width="fill_parent" android:layout_height="fill_parent" android:clickable="true" android:apiKey = "api-key_goes_here" >