2012-03-25 2 views
1

Я пытаюсь добавить карту в свое приложение, я выполнил инструкции по учебнику HelloGoogleMaps разработчика Android, но моя карта просто закрывается, когда я запускаю опцию карт. Я получил мои ключевые апите регистрируемых разрешения манифестаСбой приложения Google map при запуске

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

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


    <application 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" android:debuggable="true" > 
     <activity 
      android:name=".MappingDemoActivity" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <uses-library android:name="com.google.android.maps" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 

     </activity> 
     <activity android:name=".ShowTheMap" android:label="Lat/Long Location"> </activity> 
     <activity android:name=".MapMe" android:label="Track Present Location"> </activity> 
     <uses-library android:name="com.google.android.maps" /> 
     <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" /> 
    </application> 

</manifest> 

Может кто-нибудь сказать, если нужна какая-либо вещи, чтобы быть сконфигурирована в дополнении для выполнения кода?

03-25 11:50:52.217: I/Process(687): Sending signal. PID: 687 SIG: 9 
03-25 11:51:00.557: D/AndroidRuntime(729): Shutting down VM 
03-25 11:51:00.567: W/dalvikvm(729): threadid=1: thread exiting with uncaught exception (group=0x40015560) 
03-25 11:51:00.627: E/AndroidRuntime(729): FATAL EXCEPTION: main 
03-25 11:51:00.627: E/AndroidRuntime(729): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.MappDemo.mymaps/com.MappDemo.mymaps.MappingDemoActivity}: java.lang.ClassCastException: com.MappDemo.mymaps.MappingDemoActivity 
03-25 11:51:00.627: E/AndroidRuntime(729): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647) 
03-25 11:51:00.627: E/AndroidRuntime(729): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663) 
03-25 11:51:00.627: E/AndroidRuntime(729): at android.app.ActivityThread.access$1500(ActivityThread.java:117) 
03-25 11:51:00.627: E/AndroidRuntime(729): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931) 
03-25 11:51:00.627: E/AndroidRuntime(729): at android.os.Handler.dispatchMessage(Handler.java:99) 
03-25 11:51:00.627: E/AndroidRuntime(729): at android.os.Looper.loop(Looper.java:123) 
03-25 11:51:00.627: E/AndroidRuntime(729): at android.app.ActivityThread.main(ActivityThread.java:3683) 
03-25 11:51:00.627: E/AndroidRuntime(729): at java.lang.reflect.Method.invokeNative(Native Method) 
03-25 11:51:00.627: E/AndroidRuntime(729): at java.lang.reflect.Method.invoke(Method.java:507) 
03-25 11:51:00.627: E/AndroidRuntime(729): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 
03-25 11:51:00.627: E/AndroidRuntime(729): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 
03-25 11:51:00.627: E/AndroidRuntime(729): at dalvik.system.NativeStart.main(Native Method) 
03-25 11:51:00.627: E/AndroidRuntime(729): Caused by: java.lang.ClassCastException: com.MappDemo.mymaps.MappingDemoActivity 
03-25 11:51:00.627: E/AndroidRuntime(729): at com.MappDemo.mymaps.MappingDemoActivity.onCreate(MappingDemoActivity.java:19) 
03-25 11:51:00.627: E/AndroidRuntime(729): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 
03-25 11:51:00.627: E/AndroidRuntime(729): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611) 
03-25 11:51:00.627: E/AndroidRuntime(729): ... 11 more 
03-25 11:51:10.013: I/Process(729): Sending signal. PID: 729 SIG: 9 
03-25 11:52:16.817: D/AndroidRuntime(782): Shutting down VM 
03-25 11:52:16.817: W/dalvikvm(782): threadid=1: thread exiting with uncaught exception (group=0x40015560) 
03-25 11:52:16.877: E/AndroidRuntime(782): FATAL EXCEPTION: main 
03-25 11:52:16.877: E/AndroidRuntime(782): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.MappDemo.mymaps/com.MappDemo.mymaps.MappingDemoActivity}: java.lang.ClassCastException: com.MappDemo.mymaps.MappingDemoActivity 
03-25 11:52:16.877: E/AndroidRuntime(782): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647) 
03-25 11:52:16.877: E/AndroidRuntime(782): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663) 
03-25 11:52:16.877: E/AndroidRuntime(782): at android.app.ActivityThread.access$1500(ActivityThread.java:117) 
03-25 11:52:16.877: E/AndroidRuntime(782): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931) 
03-25 11:52:16.877: E/AndroidRuntime(782): at android.os.Handler.dispatchMessage(Handler.java:99) 
03-25 11:52:16.877: E/AndroidRuntime(782): at android.os.Looper.loop(Looper.java:123) 
03-25 11:52:16.877: E/AndroidRuntime(782): at android.app.ActivityThread.main(ActivityThread.java:3683) 
03-25 11:52:16.877: E/AndroidRuntime(782): at java.lang.reflect.Method.invokeNative(Native Method) 
03-25 11:52:16.877: E/AndroidRuntime(782): at java.lang.reflect.Method.invoke(Method.java:507) 
03-25 11:52:16.877: E/AndroidRuntime(782): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 
03-25 11:52:16.877: E/AndroidRuntime(782): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 
03-25 11:52:16.877: E/AndroidRuntime(782): at dalvik.system.NativeStart.main(Native Method) 
03-25 11:52:16.877: E/AndroidRuntime(782): Caused by: java.lang.ClassCastException: com.MappDemo.mymaps.MappingDemoActivity 
03-25 11:52:16.877: E/AndroidRuntime(782): at com.MappDemo.mymaps.MappingDemoActivity.onCreate(MappingDemoActivity.java:19) 
03-25 11:52:16.877: E/AndroidRuntime(782): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 
03-25 11:52:16.877: E/AndroidRuntime(782): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611) 
03-25 11:52:16.877: E/AndroidRuntime(782): ... 11 more 

это то, что я могу видеть в LogCat .. это то, что я имею в mappingDemoActivity.java

public class MappingDemoActivity extends Activity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     //add listners for all buttons 
     View firstbutton= findViewById(R.id.geocode_button); 
     firstbutton.setOnClickListener((OnClickListener) this); 
     View secondButton = findViewById(R.id.latlong_button); 
     secondButton.setOnClickListener((OnClickListener) this); 
     View thirdButton = findViewById(R.id.presentLocation_button); 
     thirdButton.setOnClickListener((OnClickListener) this); 

    } 

    public void onClick(View v) 
    { 
     switch(v.getId()) 
     { 
     case R.id.geocode_button: 
      Log.i("Button","Button 1 pushed"); 
      Intent j = new Intent(this, ShowTheMap.class); 
      startActivity(j); 
     break; 

     case R.id.latlong_button: 
      Log.i("Button","Button 2 pushed"); 
      Intent k = new Intent(this, ShowTheMap.class); 
      startActivity(k); 
     break; 

     case R.id.presentLocation_button: 
      Log.i("Button","Button 3 pushed"); 
      Intent m = new Intent(this, MapMe.class); 
      startActivity(m); 
     break; 
     } 

    } 
+0

Вы можете добавить исключение, которое вы получаете в DDMS ... Так что мы можем получить представление о вашей проблеме. – Pavandroid

+0

Я поставил ошибку. Пожалуйста, дайте мне знать, где я на самом деле не так? –

+0

Вы используете Google API Simulator? – Pavandroid

ответ

0

<uses-permission> тег должен быть ребенком <manifest>, не <application>. Попробуйте изменить <uses-permission> положение, это может помочь.

+0

Я сделал это даже. но такая же проблема. –

0

Удалите этот код, который находится внутри <intent-filter>

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

Потому что это уже есть в Ниже котировке.

0

Посмотрите на Google MapsDemo, который входит в SDK мой путь:

C: \ Android-SDK \ дополнения \ аддон-google_apis-google_inc_-10 \ Samples \ MapsDemo

У меня была довольно неприятная проблема (MapActivity crashes on some devices), которая появлялась только на определенных (!) Устройствах Android, а также не в эмуляторе. Я сделал это, чтобы разбить рабочую демонстрацию до тех пор, пока она не будет похожа на мой основной пример. Затем выяснилось, что телефоны Samsung не принимают имена пакетов не начиная с com., в то время как другие устройства (HTC Flyer) делают! Но это не ваша проблема, так как вы используете com. название упаковки.

Возможно, еще одна вещь, которая приходит мне на ум. Вы не разместили свой файл main.xml. Если вы используете вложенный LinearLayout ниже MapView, это также приводит к сбою приложения. В дополнение к MapView он отлично работает. Поэтому, если вы используете что-то вроде:

<LinearLayout ... > 

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

    <LinearLayout ... > 
     <Button .../> 
    </LinearLayout> 

</LinearLayout> 

Это может вызвать проблемы. Это воспроизводимо и выбрасывается точно так же ошибка java.lang.ClassCastException.

быть Также убедитесь, что ваш < использует-разрешение> и < используют библиотеку> отчетности в нужном месте, как ребята говорили раньше. Первый должен быть прямым дочерним элементом < манифест> узел. Второй должен быть прямым потомком приложения <> узла.

Надеюсь, это вам поможет. Я сошел с ума от этого.

Бернд

Смежные вопросы