Autore Topic: Problema interruzione imprevista  (Letto 1933 volte)

Offline droidmaniac90

  • Nuovo arrivato
  • *
  • Post: 26
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Nexus One
  • Sistema operativo:
    Windows 7,Xp,Ubuntu
Problema interruzione imprevista
« il: 31 Ottobre 2011, 14:43:21 CET »
0
Ho creato questa applicazione con il grindview non mi da errori ma quando vado a provarla sul simulatore con eclipse o sul device mi da l'errore dell'interruzione. Vate spiegazioni soluzioni? qualcuno può corregerla? Grazie in anticipo
ecco il progetto:
livello 8 android 2.2
« Ultima modifica: 31 Ottobre 2011, 15:17:34 CET da droidmaniac90 »

Offline Qlimax

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 757
  • Respect: +202
    • Google+
    • _Qlimax
    • Mostra profilo
    • www.egsolutions.ch
  • Dispositivo Android:
    Galaxy Nexus - Nexus One - Wildfire - Magic
  • Play Store ID:
    egsolutions.ch
  • Sistema operativo:
    Ubuntu 12.04, Windows 7
Re:Problema interruzione imprevista
« Risposta #1 il: 31 Ottobre 2011, 15:10:46 CET »
+1

Offline droidmaniac90

  • Nuovo arrivato
  • *
  • Post: 26
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Nexus One
  • Sistema operativo:
    Windows 7,Xp,Ubuntu
Re:Problema interruzione imprevista
« Risposta #2 il: 31 Ottobre 2011, 15:16:58 CET »
0
So come funziona un forum, ho cercato non ho trovato nulla di simile e poi non so in che file da poblemi quindi ho preso tutto il progetto ...sorry

Offline Luigi.Arena

  • Utente senior
  • ****
  • Post: 616
  • DACIA DUSTER 4X4 SUPER
  • Respect: +56
    • Mostra profilo
    • ArenaWebTest
  • Dispositivo Android:
    epad m009
  • Play Store ID:
    Luigi Arena
  • Sistema operativo:
    Windows 7
Re:Problema interruzione imprevista
« Risposta #3 il: 31 Ottobre 2011, 15:25:41 CET »
0
Posta il logcat dell'errore  ;-)
Non puoi pensare che qualcuno ti sistemi il tutto e poi ti rimanda il progetto funzionante, a che ti serve ?
Se domani devi lavorarci su come fai ? :-(
È stata trovata una soluzione al tuo problema?Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato .

Offline droidmaniac90

  • Nuovo arrivato
  • *
  • Post: 26
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Nexus One
  • Sistema operativo:
    Windows 7,Xp,Ubuntu
Re:Problema interruzione imprevista
« Risposta #4 il: 31 Ottobre 2011, 15:29:57 CET »
0
Perfettamente ragione, il codice è scritto quindi ...credo sia un problema che va aldilà di saper programmare...almeno credo. il logcat può essere fatto su eclipse? non ho ben capito come si esegue

Offline Luigi.Arena

  • Utente senior
  • ****
  • Post: 616
  • DACIA DUSTER 4X4 SUPER
  • Respect: +56
    • Mostra profilo
    • ArenaWebTest
  • Dispositivo Android:
    epad m009
  • Play Store ID:
    Luigi Arena
  • Sistema operativo:
    Windows 7
Re:Problema interruzione imprevista
« Risposta #5 il: 31 Ottobre 2011, 15:36:41 CET »
0
Bene.
Qui c'è un link dove trovi informazioni sul logcat:

http://www.anddev.it/index.php/topic,3190.msg20310.html#msg20310
È stata trovata una soluzione al tuo problema?Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato .

Offline droidmaniac90

  • Nuovo arrivato
  • *
  • Post: 26
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Nexus One
  • Sistema operativo:
    Windows 7,Xp,Ubuntu
Re:Problema interruzione imprevista
« Risposta #6 il: 31 Ottobre 2011, 15:41:52 CET »
0
Ok trovato ecco il logCat
« Ultima modifica: 31 Ottobre 2011, 15:48:27 CET da droidmaniac90 »

Offline Qlimax

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 757
  • Respect: +202
    • Google+
    • _Qlimax
    • Mostra profilo
    • www.egsolutions.ch
  • Dispositivo Android:
    Galaxy Nexus - Nexus One - Wildfire - Magic
  • Play Store ID:
    egsolutions.ch
  • Sistema operativo:
    Ubuntu 12.04, Windows 7
Re:Problema interruzione imprevista
« Risposta #7 il: 31 Ottobre 2011, 16:14:03 CET »
0
Ok trovato ecco il logCat
I log che hai allegato non dicono molto, devi evidenziare tutte le righe in rosso(ad esempio http://fullroom.com/_blog/LogCatStep3.png) copiare ed incollarle nel post (non allegarle in txt)
 O:-)

Offline droidmaniac90

  • Nuovo arrivato
  • *
  • Post: 26
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Nexus One
  • Sistema operativo:
    Windows 7,Xp,Ubuntu
Re:Problema interruzione imprevista
« Risposta #8 il: 31 Ottobre 2011, 16:33:46 CET »
0
Ok vediamo se stavolta sono riuscito :D :
10-31 15:32:42.486: D/AndroidRuntime(307): Shutting down VM
10-31 15:32:42.486: W/dalvikvm(307): threadid=1: thread exiting with uncaught exception (group=0x4001d800)
10-31 15:32:42.566: E/AndroidRuntime(307): FATAL EXCEPTION: main
10-31 15:32:42.566: E/AndroidRuntime(307): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.orarioandroid/com.example.orarioandroid.OrarioActivity}: java.lang.NullPointerException
10-31 15:32:42.566: E/AndroidRuntime(307):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
10-31 15:32:42.566: E/AndroidRuntime(307):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
10-31 15:32:42.566: E/AndroidRuntime(307):    at android.app.ActivityThread.access$2300(ActivityThread.java:125)
10-31 15:32:42.566: E/AndroidRuntime(307):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
10-31 15:32:42.566: E/AndroidRuntime(307):    at android.os.Handler.dispatchMessage(Handler.java:99)
10-31 15:32:42.566: E/AndroidRuntime(307):    at android.os.Looper.loop(Looper.java:123)
10-31 15:32:42.566: E/AndroidRuntime(307):    at android.app.ActivityThread.main(ActivityThread.java:4627)
10-31 15:32:42.566: E/AndroidRuntime(307):    at java.lang.reflect.Method.invokeNative(Native Method)
10-31 15:32:42.566: E/AndroidRuntime(307):    at java.lang.reflect.Method.invoke(Method.java:521)
10-31 15:32:42.566: E/AndroidRuntime(307):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
10-31 15:32:42.566: E/AndroidRuntime(307):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
10-31 15:32:42.566: E/AndroidRuntime(307):    at dalvik.system.NativeStart.main(Native Method)
10-31 15:32:42.566: E/AndroidRuntime(307): Caused by: java.lang.NullPointerException
10-31 15:32:42.566: E/AndroidRuntime(307):    at com.example.orarioandroid.OrarioActivity.aggiornaMaterie(OrarioActivity.java:43)
10-31 15:32:42.566: E/AndroidRuntime(307):    at com.example.orarioandroid.OrarioActivity.onCreate(OrarioActivity.java:23)
10-31 15:32:42.566: E/AndroidRuntime(307):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
10-31 15:32:42.566: E/AndroidRuntime(307):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
10-31 15:32:42.566: E/AndroidRuntime(307):    ... 11 more
10-31 15:32:50.836: I/Process(307): Sending signal. PID: 307 SIG: 9
dalla seconda riga alla pen'ultima sono in rosso

Offline Luigi.Arena

  • Utente senior
  • ****
  • Post: 616
  • DACIA DUSTER 4X4 SUPER
  • Respect: +56
    • Mostra profilo
    • ArenaWebTest
  • Dispositivo Android:
    epad m009
  • Play Store ID:
    Luigi Arena
  • Sistema operativo:
    Windows 7
Re:Problema interruzione imprevista
« Risposta #9 il: 31 Ottobre 2011, 16:40:29 CET »
0
ok.
Sembra che non hai dichiarato qualche oggetto , perciò hai un eccezione di NullPointerException.
Prima cosa assicurati di avere inserito nel manifest tutte le activity del progetto.
Posta ora il codice che effettua l'oncreate così vediamo cosa c'è che non va.
È stata trovata una soluzione al tuo problema?Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato .

Offline Qlimax

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 757
  • Respect: +202
    • Google+
    • _Qlimax
    • Mostra profilo
    • www.egsolutions.ch
  • Dispositivo Android:
    Galaxy Nexus - Nexus One - Wildfire - Magic
  • Play Store ID:
    egsolutions.ch
  • Sistema operativo:
    Ubuntu 12.04, Windows 7
Re:Problema interruzione imprevista
« Risposta #10 il: 31 Ottobre 2011, 16:43:35 CET »
0
Caused by: java.lang.NullPointerException
10-31 15:32:42.566: E/AndroidRuntime(307):    at com.example.orarioandroid.OrarioActivity.aggiornaMaterie(OrarioActivity.java:43)

C'è qualcosa che non va alla linea 43 di OrarioActivity.java

Offline droidmaniac90

  • Nuovo arrivato
  • *
  • Post: 26
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Nexus One
  • Sistema operativo:
    Windows 7,Xp,Ubuntu
Re:Problema interruzione imprevista
« Risposta #11 il: 31 Ottobre 2011, 16:52:01 CET »
0
la linea 43 è    grid.setAdapter(new SimpleAdapter(this, Materia.getData(giorno), R.layout.cell, new String[]

posto cmq sia il file OrarioActivity.java
che il manifest...
nel manifest c'è orario Activity ma manca l'altro file .java cioè Materia.java

ho provato ad inserire Materia.Java nel manifest ma mi da errore

Offline Qlimax

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 757
  • Respect: +202
    • Google+
    • _Qlimax
    • Mostra profilo
    • www.egsolutions.ch
  • Dispositivo Android:
    Galaxy Nexus - Nexus One - Wildfire - Magic
  • Play Store ID:
    egsolutions.ch
  • Sistema operativo:
    Ubuntu 12.04, Windows 7
Re:Problema interruzione imprevista
« Risposta #12 il: 31 Ottobre 2011, 17:09:18 CET »
0
Puoi mettere il codice java nell apposito tag

Offline droidmaniac90

  • Nuovo arrivato
  • *
  • Post: 26
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Nexus One
  • Sistema operativo:
    Windows 7,Xp,Ubuntu
Re:Problema interruzione imprevista
« Risposta #13 il: 31 Ottobre 2011, 17:11:20 CET »
0
Codice (Java): [Seleziona]
package com.example.orarioandroid;


import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.GridView;
import android.widget.SimpleAdapter;
import android.widget.Spinner;
import android.widget.AdapterView.OnItemSelectedListener;

public class OrarioActivity extends Activity {
    private GridView grid;

        /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        aggiornaMaterie(Materia.TUTTE_LE_MATERIE);
        Spinner spinner = (Spinner) findViewById(R.id.spinner1);
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, Materia.getGiorni());
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                spinner.setAdapter(adapter);
                spinner.setOnItemSelectedListener(new OnItemSelectedListener()
                {
                        public void onItemSelected(AdapterView<?> adapter, View v, int pos, long id)
                        {
                                aggiornaMaterie((String) adapter.getItemAtPosition(pos));
                        }
                        public void onNothingSelected(AdapterView<?> arg0)
                        {
                                aggiornaMaterie(Materia.TUTTE_LE_MATERIE);
                        }
                });
        }

        protected void aggiornaMaterie(String giorno)
        {
                grid.setAdapter(new SimpleAdapter(this, Materia.getData(giorno), R.layout.cell, new String[]
                { Materia.CODICE, Materia.NOME }, new int[]
                { R.id.codice, R.id.nome }));
        }
}

OrarioActivity.java

Codice (Java): [Seleziona]
package com.example.orarioandroid;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.TreeSet;

public class Materia
{
        public static final String TUTTE_LE_MATERIE = "Tutte le materie";

        public static final String NOME = "NOME";

        public static final String CODICE = "CODICE";

        public static final String GIORNO = "GIORNO";

        private String nome;

        private String codice;

        private String giorno;

        public Materia(String nome, String codice, String giorno)
        {
                super();
                this.nome = nome;
                this.codice = codice;
                this.giorno = giorno;
        }

        public String getNome()
        {
                return nome;
        }

        public String getCodice()
        {
                return codice;
        }

        public String getGiorno()
        {
                return giorno;
        }

        @Override
        public String toString()
        {
                return nome + " " + codice;
        }

       

        public static final Materia[] DB = new Materia[]
        { new Materia("Laboratori di Calcolatori", "10-13 D42", "Lunedì"), };

        private static ArrayList<String> giorni;

        public static List<Map<String, String>> getData()
        {
                List<Map<String, String>> ret = new ArrayList<Map<String, String>>();
                for (Materia materia : DB)
                {
                        ret.add(materia.getMap());
                }
                return ret;
        }

        public static List<Map<String, String>> getData(String giorno)
        {
                List<Map<String, String>> ret = new ArrayList<Map<String, String>>();
                for (Materia materia : DB)
                {
                        if (giorno.equals(TUTTE_LE_MATERIE) || giorno.equals(materia.getGiorno()))
                        {
                                ret.add(materia.getMap());
                        }
                }
                return ret;
        }

        private Map<String, String> getMap()
        {
                HashMap<String, String> map = new HashMap<String, String>();
                map.put(NOME, nome);
                map.put(CODICE, codice);
                map.put(GIORNO, giorno);
                return map;
        }

        @SuppressWarnings("static-access")
        public static ArrayList<String> getGiorni()
        {
                if (giorni == null)
                {
                        TreeSet<String> set = new TreeSet<String>();
                        for (Materia materia : DB)
                        {
                                set.addAll(materia.getGiorni());
                        }
                        giorni = new ArrayList<String>();
                        giorni.add(TUTTE_LE_MATERIE);
                        giorni.addAll(set);
                }
                return giorni;
        }
}
Materia.java
Codice (XML): [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.example.orarioandroid"
   android:versionCode="1"
   android:versionName="1.0" >

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

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

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>
Manifest.xml

Offline Qlimax

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 757
  • Respect: +202
    • Google+
    • _Qlimax
    • Mostra profilo
    • www.egsolutions.ch
  • Dispositivo Android:
    Galaxy Nexus - Nexus One - Wildfire - Magic
  • Play Store ID:
    egsolutions.ch
  • Sistema operativo:
    Ubuntu 12.04, Windows 7
Re:Problema interruzione imprevista
« Risposta #14 il: 31 Ottobre 2011, 17:24:39 CET »
0
grid è null

nell'onCreate devi assegnare grid alla GridView presente nel tuo main.xml

Codice (Java): [Seleziona]
grid=(GridView)findViewById(R.id.idTuaGridView);