Autore Topic: L'Applicazione Si chiude prima di partire...  (Letto 1588 volte)

Offline Maschiaccio

  • Nuovo arrivato
  • *
  • Post: 7
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S2 - Sony Tablet S
  • Sistema operativo:
    Wndows7 - Netbeans
L'Applicazione Si chiude prima di partire...
« il: 25 Novembre 2012, 03:48:37 CET »
0
Salve ragazzi, ho un problema che non riesco a risolvere!
Premetto che, nonostante sia sviluppatore di vecchia data (con VB),  ho cominciato a sviluppare in Java/Android da meno di una settimana...   cmq... il problema è il seguente:
Ho creato una applicazione (dapprima con una unica activity/xml) che faceva semplici calcoli...
ho deciso di inserirvi delle tabs (TabHost/TabWidget) con degli intent seguendo vari esempi trovati in rete.
Visto che l'app è pensata per funzionare con SDK Android 2.2, ho dovuto aggiungere la libreria di compatibilità Android Support v4.
Compilo... e Netbeans compila correttamente...  ma appena parte l'app sull'AVD mi si chiude istantaneamente.
Provo in debug mettendo un breakpoint sulla prima riga della main activity (eredita da TabActivity!)
( super.onCreate(savedInstanceState); )
...non ci arriva!!!!! -.-
a questo punto... senza errori nella compilazione...  cosa potrebbe essere???? Sospettate qualcosa?
grazie mille dell'aiuto che vorrete darmi!

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
R: L'Applicazione Si chiude prima di partire...
« Risposta #1 il: 25 Novembre 2012, 10:20:47 CET »
0
Posta il logcat.

Inviato dal mio Galaxy Nexus con Tapatalk 2


Offline Maschiaccio

  • Nuovo arrivato
  • *
  • Post: 7
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S2 - Sony Tablet S
  • Sistema operativo:
    Wndows7 - Netbeans
Re: L'Applicazione Si chiude prima di partire...
« Risposta #2 il: 25 Novembre 2012, 10:31:46 CET »
0
ehmmmm.... Scusa l'ignoranza :P dove lo trovo? :D

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:L'Applicazione Si chiude prima di partire...
« Risposta #3 il: 25 Novembre 2012, 10:41:42 CET »
0
ehmmmm.... Scusa l'ignoranza :P dove lo trovo? :D

Su netbeans non ne ho idea.
Cerca se c'è una qualche schermata "DDMS" oppure eventualmente cerca il programma ddms dentro la cartella platform-tools dell'sdk.

Offline Maschiaccio

  • Nuovo arrivato
  • *
  • Post: 7
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S2 - Sony Tablet S
  • Sistema operativo:
    Wndows7 - Netbeans
Re:L'Applicazione Si chiude prima di partire...
« Risposta #4 il: 25 Novembre 2012, 11:38:02 CET »
0
suppongo sia questo! ;)

03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime   FATAL EXCEPTION: main
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime   java.lang.RuntimeException: Unable to start activity ComponentInfo{TravianCalculator.com/TravianCalculator.com.MainActivity}: java.lang.RuntimeException: Your content must have a TabHost whose id attribute is 'android.R.id.tabhost'
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.ActivityThread.access$2300(ActivityThread.java:125)
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       at android.os.Handler.dispatchMessage(Handler.java:99)
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       at android.os.Looper.loop(Looper.java:123)
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.ActivityThread.main(ActivityThread.java:4627)
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       at java.lang.reflect.Method.invokeNative(Native Method)
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       at java.lang.reflect.Method.invoke(Method.java:521)
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       at dalvik.system.NativeStart.main(Native Method)
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime   Caused by: java.lang.RuntimeException: Your content must have a TabHost whose id attribute is 'android.R.id.tabhost'
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.TabActivity.onContentChanged(TabActivity.java:105)
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:201)
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.Activity.setContentView(Activity.java:1647)
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       at TravianCalculator.com.MainActivity.onCreate(MainActivity.java:16)
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime       ... 11 more

vedo che parla di R.id.TabHost...     ti allego anche main.xlm

<?xml version="1.0" encoding="utf-8"?>
<TabHost
    android:id="@+id/TabHost"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    xmlns:android="http://schemas.android.com/apk/res/android">
    <LinearLayout
        android:id="@+id/LayoutMain"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:isScrollContainer="true">
        <TabWidget
            android:id="@android:id/tabs"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" />
        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"/>
    </LinearLayout>f
</TabHost>


grazie, ciao :)

Offline cioppy

  • Nuovo arrivato
  • *
  • Post: 35
  • Respect: +3
    • giancarlo985
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S Plus
  • Play Store ID:
    Team Android
  • Sistema operativo:
    Linux Mint 12 - 64bit
Re:L'Applicazione Si chiude prima di partire...
« Risposta #5 il: 25 Novembre 2012, 11:42:14 CET »
0
Ciao.
Il problema è qui :
TravianCalculator.com.MainActivity.onCreate(MainActivity.java:16)

Come si evince dai file di log, "Your content must have a TabHost whose id attribute is 'android.R.id.tabhost'" probabilmente c'è un errore nell'id che hai dato al TabHost.

Se posti per favore le prime 16 righe della classe MainActivity.java, vediamo meglio qual è il problema !!! :-)

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:L'Applicazione Si chiude prima di partire...
« Risposta #6 il: 25 Novembre 2012, 11:59:38 CET »
0
Codice: [Seleziona]
03:00:22.368   491   TravianCalculator.com   ERROR   AndroidRuntime   Caused by: java.lang.RuntimeException: Your content must have a TabHost whose id attribute is 'android.R.id.tabhost'
Devi dare al tuo TabHost android:id="@android:id/tabhost"

Offline Maschiaccio

  • Nuovo arrivato
  • *
  • Post: 7
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S2 - Sony Tablet S
  • Sistema operativo:
    Wndows7 - Netbeans
Re:L'Applicazione Si chiude prima di partire...
« Risposta #7 il: 25 Novembre 2012, 16:09:55 CET »
0
Citazione
Come si evince dai file di log, "Your content must have a TabHost whose id attribute is 'android.R.id.tabhost'" probabilmente c'è un errore nell'id che hai dato al TabHost.

Se posti per favore le prime 16 righe della classe MainActivity.java, vediamo meglio qual è il problema !!! :-)

--------------------------------------------------------------------------------------------------------------------------------------------
package TravianCalculator.com;

import android.app.TabActivity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TabHost;
import android.widget.TabHost.TabSpec;


public class MainActivity extends TabActivity {

    @Override
    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        TabHost tabs = (TabHost)findViewById(R.id.tabhost);

 --------------------------------------------------------------------------------------------------------------------------------------------

nel main.xml la riga è:

    android:id="@+id/tabhost"




altra prova che ho fatto (seguendo il consiglio di Ricky)  è stato:
sostituire nell'xml   "@+id/tabhost"  con "@android:id/tabhost"
nell'ActivityMain, ho dovuto sostituire anche:
        TabHost tabs = (TabHost)findViewById(R.id.tabhost);
con
        TabHost tabs = (TabHost)findViewById(Android.R.id.tabhost);
perchè tabhost me lo segnalava come risorsa non trovata nell'ìxml! (bohhh!!!!)

l'errore sul logcat è cambiato a seguito della modifica (nonostante la compilazione come sempre va a buon fine)...

07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime   FATAL EXCEPTION: main
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime   java.lang.RuntimeException: Unable to start activity ComponentInfo{TravianCalculator.com/TravianCalculator.com.MainActivity}: android.content.ActivityNotFoundException: Unable to find explicit activity class {TravianCalculator.com/TravianCalculator.com.ActivityFalangiata}; have you declared this activity in your AndroidManifest.xml?
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.ActivityThread.access$2300(ActivityThread.java:125)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at android.os.Handler.dispatchMessage(Handler.java:99)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at android.os.Looper.loop(Looper.java:123)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.ActivityThread.main(ActivityThread.java:4627)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at java.lang.reflect.Method.invokeNative(Native Method)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at java.lang.reflect.Method.invoke(Method.java:521)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at dalvik.system.NativeStart.main(Native Method)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime   Caused by: android.content.ActivityNotFoundException: Unable to find explicit activity class {TravianCalculator.com/TravianCalculator.com.ActivityFalangiata}; have you declared this activity in your AndroidManifest.xml?
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1404)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.ActivityThread.resolveActivityInfo(ActivityThread.java:2473)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.LocalActivityManager.startActivity(LocalActivityManager.java:277)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at android.widget.TabHost$IntentContentStrategy.getContentView(TabHost.java:651)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at android.widget.TabHost.setCurrentTab(TabHost.java:323)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at android.widget.TabHost.addTab(TabHost.java:213)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at TravianCalculator.com.MainActivity.onCreate(MainActivity.java:33)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
07:26:40.047   575   TravianCalculator.com   ERROR   AndroidRuntime       ... 11 more

....allegasi anche il manifest!!! :P

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="TravianCalculator.com"
      android:versionCode="1"
      android:versionName="1.0">
    <application android:label="@string/app_name" >
        <activity android:name="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>
    </application>
</manifest>

mmmm...   a sto punto.. la sparo li da ignorante...  trattandosi di un progetto che usa la compatibility support v4.... 
potrebbe essere che la mancanza nel manifest dell'android:minSdkVersion / android:maxSdkVersion fa incasinare il tutto?????

P.S.  l'ADV su cui sto debuggando è Android 2.2

Offline Maschiaccio

  • Nuovo arrivato
  • *
  • Post: 7
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S2 - Sony Tablet S
  • Sistema operativo:
    Wndows7 - Netbeans
Re:L'Applicazione Si chiude prima di partire...
« Risposta #8 il: 25 Novembre 2012, 16:14:34 CET »
0
vi posto altro elemento utile:
facendo la "validazione" del main.xml mi viene fuori questo errore:

XML validation started.
Checking file:/F:/android/NetBeansProjects/TravianCalculator/res/layout/main.xml...
cvc-elt.1: impossibile trovare la dichiarazione dell'elemento "TabHost". [6]
XML validation finished.

Dichiarazione di TabHost???  Comincio a non capire :(


Offline DarnellNajanReed

  • Utente normale
  • ***
  • Post: 359
  • Respect: +49
    • Google+
    • Mostra profilo
  • Dispositivo Android:
    LG Optimus One, Acer Iconia A500/501, Asus Transformer Prime, Galaxy ACE, Galaxy S Plus, Galaxy S Advance P, Galaxy Tab 2 7.0, Google Nexus 7
  • Play Store ID:
    Luigi Notaro
  • Sistema operativo:
    OS X 10.8.3
Re:L'Applicazione Si chiude prima di partire...
« Risposta #9 il: 26 Novembre 2012, 10:48:41 CET »
0
Citazione
ComponentInfo{TravianCalculator.com/TravianCalculator.com.MainActivity}: android.content.ActivityNotFoundException: Unable to find explicit activity class {TravianCalculator.com/TravianCalculator.com.ActivityFalangiata}; have you declared this activity in your AndroidManifest.xml?

Credo che il LogCat stia cercando di attirare la tua attenzione su un problema diverso....

Offline Maschiaccio

  • Nuovo arrivato
  • *
  • Post: 7
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S2 - Sony Tablet S
  • Sistema operativo:
    Wndows7 - Netbeans
Re: L'Applicazione Si chiude prima di partire...
« Risposta #10 il: 26 Novembre 2012, 10:57:32 CET »
0
ehmmmm... che sarebbe???