Autore Topic: Crash mapActivity  (Letto 1303 volte)

Offline mark92g

  • Nuovo arrivato
  • *
  • Post: 12
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy next
  • Play Store ID:
    Shaze
Crash mapActivity
« il: 15 Giugno 2012, 16:41:01 CEST »
0
Ciao a tutti, mi sono appena messo nel mondo di android e gia iniziano i primi problemi...
Sto realizzando un applicazione che al click su un pulsante carica una mappa.
Appena clicco sul bottone però l'applicazione si chiude con un errore.
Il LogCat non so per quale assurdo motivo ma punta ad un altro progetto...
Spero che voi ci saltiate fuori....

Ho allegato l'intero progetto così chi vuole può scaricarlo.
Grazie in anticipo :-)

LOGCAT
06-18 10:29:49.169: I/ApplicationPackageManager(1986): cscCountry is not German : ITV
06-18 10:29:57.360: W/dalvikvm(1986): Class resolved by unexpected DEX: Lprova/gmaps/Mappa;(0x40518240):0x92c98 ref [Lcom/google/android/maps/MapActivity;] Lcom/google/android/maps/MapActivity;(0x40518240):0x92b10
06-18 10:29:57.360: W/dalvikvm(1986): (Lprova/gmaps/Mappa; had used a different Lcom/google/android/maps/MapActivity; during pre-verification)
06-18 10:29:57.360: W/dalvikvm(1986): Unable to resolve superclass of Lprova/gmaps/Mappa; (35)
06-18 10:29:57.360: W/dalvikvm(1986): Link of class 'Lprova/gmaps/Mappa;' failed
06-18 10:29:57.360: D/AndroidRuntime(1986): Shutting down VM
06-18 10:29:57.360: W/dalvikvm(1986): threadid=1: thread exiting with uncaught exception (group=0x40018578)
06-18 10:29:57.360: E/AndroidRuntime(1986): FATAL EXCEPTION: main
06-18 10:29:57.360: E/AndroidRuntime(1986): java.lang.NoClassDefFoundError: prova.gmaps.Mappa
06-18 10:29:57.360: E/AndroidRuntime(1986):    at prova.gmaps.Main$1.onClick(Main.java:23)
06-18 10:29:57.360: E/AndroidRuntime(1986):    at android.view.View.performClick(View.java:2485)
06-18 10:29:57.360: E/AndroidRuntime(1986):    at android.view.View$PerformClick.run(View.java:9080)
06-18 10:29:57.360: E/AndroidRuntime(1986):    at android.os.Handler.handleCallback(Handler.java:587)
06-18 10:29:57.360: E/AndroidRuntime(1986):    at android.os.Handler.dispatchMessage(Handler.java:92)
06-18 10:29:57.360: E/AndroidRuntime(1986):    at android.os.Looper.loop(Looper.java:130)
06-18 10:29:57.360: E/AndroidRuntime(1986):    at android.app.ActivityThread.main(ActivityThread.java:3687)
06-18 10:29:57.360: E/AndroidRuntime(1986):    at java.lang.reflect.Method.invokeNative(Native Method)
06-18 10:29:57.360: E/AndroidRuntime(1986):    at java.lang.reflect.Method.invoke(Method.java:507)
06-18 10:29:57.360: E/AndroidRuntime(1986):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
06-18 10:29:57.360: E/AndroidRuntime(1986):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625)
06-18 10:29:57.360: E/AndroidRuntime(1986):    at dalvik.system.NativeStart.main(Native Method)
06-18 10:29:57.360: E/AndroidRuntime(1986): Caused by: java.lang.IllegalAccessError: Class ref in pre-verified class resolved to unexpected implementation
06-18 10:29:57.360: E/AndroidRuntime(1986):    at dalvik.system.DexFile.defineClass(Native Method)
06-18 10:29:57.360: E/AndroidRuntime(1986):    at dalvik.system.DexFile.loadClassBinaryName(DexFile.java:207)
06-18 10:29:57.360: E/AndroidRuntime(1986):    at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:200)
06-18 10:29:57.360: E/AndroidRuntime(1986):    at java.lang.ClassLoader.loadClass(ClassLoader.java:551)
06-18 10:29:57.360: E/AndroidRuntime(1986):    at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
06-18 10:29:57.360: E/AndroidRuntime(1986):    ... 12 more

MAIN.JAVA
Codice (Java): [Seleziona]
package prova.gmaps;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class Main extends Activity {

        Button map;
       
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
       
        map = (Button) findViewById(R.id.button);
       
        map.setOnClickListener(new OnClickListener() {
                        public void onClick(View v) {
                                Intent intent = new Intent(getApplicationContext(), Mappa.class);
                                startActivity(intent);
                        }
                });
       
    }
   
   
}

MAPPA.JAVA
Codice (Java): [Seleziona]
package prova.gmaps;

import android.os.Bundle;

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

public class Mappa extends MapActivity {
       
        //Riferimento alla MapView
        private MapView mapView;

        //Riferimento al MapController
        MapController mapController;
       
        @Override
        protected void onCreate(Bundle savedInstanceState) {
                // TODO Auto-generated method stub
                super.onCreate(savedInstanceState);
                setContentView(R.layout.map);
               
                // Otteniamo il riferimento alla MapView
                mapView = (MapView)findViewById(R.id.mapView);
               
                // Otteniamo il riferimento al controller
                mapController = mapView.getController();
               
                // Rendiamo la mappa cliccabile e quindi ne permettiamo il pan
                mapView.setClickable(true);

                // Utiliziamo i controlli predefiniti per la gestione delle operazioni di zoom
                mapView.setBuiltInZoomControls(true);

                // Impostiamo la distanza dello Zoom a 12 (valori validi da 1 a 21).
                mapController.setZoom(12);
        }
       
        @Override
        protected boolean isRouteDisplayed() {
            return false;
        }

}

MANIFEST
Codice (XML): [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="prova.gmaps"
   android:versionCode="1"
   android:versionName="1.0" >

    <uses-sdk android:minSdkVersion="7" />
    <uses-permission android:name="android.permission.INTERNET" />
   
   
    <application
       android:icon="@drawable/ic_launcher"
       android:label="@string/app_name" >
       
        <uses-library android:name="com.google.android.maps" />
       
        <activity
           android:name=".Main"
           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:name=".Mappa"></activity>
       
    </application>

</manifest>

MAIN.XML
Codice (XML): [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:orientation="vertical" >

    <Button
       android:id="@+id/button"
       android:layout_width="fill_parent"
       android:layout_height="wrap_content"
       android:text="Mappa" />

</LinearLayout>

MAP.XML
Codice (XML): [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:orientation="vertical" >

    <com.google.android.maps.MapView
       android:id="@+id/mapView"
       android:layout_width="fill_parent"
       android:layout_height="fill_parent"
       android:apiKey="0xWyV9fybXdzFNh9KUQ1UqA1r_l-qe7N4y26Hjw" />
</LinearLayout>
« Ultima modifica: 18 Giugno 2012, 10:29:34 CEST da mark92g »

Offline eagledeveloper

  • Translate Team
  • Utente senior
  • ****
  • Post: 516
  • Respect: +37
    • Google+
    • 347516210
    • dark_pinz
    • @WandDStudios
    • Mostra profilo
    • W&D Studios
  • Dispositivo Android:
    HTC One X e HTC One
  • Play Store ID:
    W%26D+Studios
  • Sistema operativo:
    Ubuntu / Windows 7
Re:Crash mapActivity
« Risposta #1 il: 18 Giugno 2012, 07:46:34 CEST »
0
Dovresti mettere anche il logcat.

Comunuque prova a cambiare questo:

Codice (Java): [Seleziona]
getApplicationContext()
in questo:

Codice (Java): [Seleziona]
v.getContext()
Facci sapere. Saluti.
I numeri contano molto di più del seme.

Offline mark92g

  • Nuovo arrivato
  • *
  • Post: 12
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy next
  • Play Store ID:
    Shaze
Re:Crash mapActivity
« Risposta #2 il: 18 Giugno 2012, 10:09:08 CEST »
0
Citazione
Comunuque prova a cambiare questo:
getApplicationContext()
in questo:
v.getContext()

ho provato ma non funziona... da lo stesso errore...
Ho aggiunto il logcat se servono altre cose ditemi pure ;)

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:Crash mapActivity
« Risposta #3 il: 18 Giugno 2012, 10:19:37 CEST »
0
Metti il logcat completo.

Offline mark92g

  • Nuovo arrivato
  • *
  • Post: 12
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy next
  • Play Store ID:
    Shaze
Re:Crash mapActivity
« Risposta #4 il: 18 Giugno 2012, 10:32:07 CEST »
0
Citazione
Metti il logcat completo.

Ok fatto :)

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:Crash mapActivity
« Risposta #5 il: 18 Giugno 2012, 10:40:20 CEST »
0
Qual'è il target della tua applicazione? E dove la stai eseguendo? Emulatore o telefono?

Offline eagledeveloper

  • Translate Team
  • Utente senior
  • ****
  • Post: 516
  • Respect: +37
    • Google+
    • 347516210
    • dark_pinz
    • @WandDStudios
    • Mostra profilo
    • W&D Studios
  • Dispositivo Android:
    HTC One X e HTC One
  • Play Store ID:
    W%26D+Studios
  • Sistema operativo:
    Ubuntu / Windows 7
Re:Crash mapActivity
« Risposta #6 il: 18 Giugno 2012, 10:43:40 CEST »
0
L'emulatore deve avere le Google API.

Farei anche un clean del progetto.
I numeri contano molto di più del seme.

Offline mark92g

  • Nuovo arrivato
  • *
  • Post: 12
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy next
  • Play Store ID:
    Shaze
Re:Crash mapActivity
« Risposta #7 il: 18 Giugno 2012, 11:00:40 CEST »
0
Qual'è il target della tua applicazione? E dove la stai eseguendo? Emulatore o telefono?

Il target è l'api 15... L'ho provata sia sul telefono che sull'emulatore (api 10 e 15)... L'app dovrebbe funzionare fino alla api 7...

L'emulatore deve avere le Google API.

Farei anche un clean del progetto.

Gia provato ma non  è cambiato nulla...