# App schließt nach Start.



## brilzi89 (6. Jul 2017)

Hallo zusammen,

ich (neuling) hab mit Hilfe von Youtube videos versucht, eine Quiz App zu schreiben.
Jedesmal wenn ich versuche die App auf meinem Smartphone zu öffnen, schließt diese sofort wieder. Android studio zeigt keine Fehler in der App und ich selber sehe auch keine. Könnt Ihr mir helfen.

Hier der Script:

```
[SIZE=2]import android.content.DialogInterface;
import android.content.Intent;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

import java.util.Random;

public class MainActivity extends AppCompatActivity {

    Button antwort1, antwort2, antwort3, antwort4;
    TextView Score, Frage;

    private Frage mFrage = new Frage();

    private String mrichtigeAntwort;
    private int mScore = 0;
    private int mFrageLenght = mFrage.mFrage.length;

    Random r;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        r = new Random();


        antwort1 = (Button) findViewById(R.id.antwort1);
        antwort2 = (Button) findViewById(R.id.antwort2);
        antwort3 = (Button) findViewById(R.id.antwort3);
        antwort4 = (Button) findViewById(R.id.antwort4);

        Score = (TextView) findViewById(R.id.Score);
        Frage = (TextView) findViewById(R.id.Frage);

        Score.setText("Score:" + mScore);

        updateFrage(r.nextInt(mFrageLenght));


        antwort1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
if (antwort1.getText() == mrichtigeAntwort){
    mScore ++;
    Score.setText("Score:" + mScore);
    updateFrage(r.nextInt(mFrageLenght));
}else {
    gameOver();
}
            }
        });
        antwort2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (antwort2.getText() == mrichtigeAntwort){
                    mScore ++;
                    Score.setText("Score:" + mScore);
                    updateFrage(r.nextInt(mFrageLenght));
                }else {
                    gameOver();
                }
            }
        });
        antwort3.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                    if (antwort3.getText() == mrichtigeAntwort){
                        mScore ++;
                        Score.setText("Score:" + mScore);
                        updateFrage(r.nextInt(mFrageLenght));
                    }else {
                        gameOver();
                    }
            }
        });
        antwort4.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (antwort4.getText() == mrichtigeAntwort) {
                    mScore++;
                    Score.setText("Score:" + mScore);
                    updateFrage(r.nextInt(mFrageLenght));
                } else {
                    gameOver();
                }
            }

        });
    }

    private void updateFrage(int num) {
        Frage.setText(mFrage.getFrage(num));
antwort1.setText(mFrage.getAuswahl1(num));
        antwort2.setText(mFrage.getAuswahl2(num));

        mrichtigeAntwort =mFrage.getrichtigeAntwort(num);
    }

private void gameOver(){
    AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(MainActivity.this);
    alertDialogBuilder
            .setMessage("Game over du hast  " + mScore + "Punkte")
            .setCancelable(false)
            .setPositiveButton("New Game",
                    new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
startActivity(new Intent(getApplicationContext(), MainActivity.class));
                        }

})

            .setNegativeButton("Exit",
                                       new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {
                            finish();
        }

});

}
}
```



```
public class Frage {


    public String mFrage[] = {
            "Welches Tier ist das Beste",
            "Wie alt bin ich",

    };

    public String mAuswahl[][] = {
            {"Katze", "Hund", "Affe", "Tiger"},
            {"18", "28", "17", "30"},
    };

    public String mrichtigeAntwort[] = {"Katze", "28"};

    public String getFrage(int a) {
        String Frage = mFrage[a];
        return Frage;

    }

    public String getAuswahl1(int a) {
        String auswahl = mAuswahl[a][0];
        return auswahl;


    }

    public String getAuswahl2(int a) {
        String auswahl = mAuswahl[a][1];
        return auswahl;

    }

    public String getAuswahl3(int a) {
        String auswahl = mAuswahl[a][2];
        return auswahl;
    }

    public String getAuswahl4(int a) {
        String auswahl = mAuswahl[a][3];
        return auswahl;

    }

public String getrichtigeAntwort (int a){
    String antwort = mrichtigeAntwort[a];
return antwort;
}
}
```

danke schon mal im vorraus[/SIZE]


----------



## Robat (6. Jul 2017)

brilzi89 hat gesagt.:


> Android studio zeigt keine Fehler in der App


Bist du dir da sicher? Auch nicht im LogCat?

Wie sieht deine Manifest aus? Ist deine Activity dort als Launcher-Activity eingetragen?


----------



## brilzi89 (14. Jul 2017)

Hallo Robat,
im LogCat wird auch kein Fehler angezeigt :/
im Manifest ist meine Activity als Launcher Activity eingetragen :/ 
weis nich mehr weiter....


----------



## brilzi89 (14. Jul 2017)

hier aber der code vom Manifest

```
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="knowpo.knowpo.spas.de.knowpo">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity

            android:name="MainActivity">

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

</manifest>
```


----------



## Robat (15. Jul 2017)

Benutzt du irgendwelche externen Frameworks die das Abstürzen der App erklären könnten?
Hast du den Jack-Compiler aktiviert?
Mach mal im Logcat alle Filter raus und schau noch mal nach auffälligen Warnungen / Errors. (Wenn die App abstürzt den Dialog nicht wegdrücken sondern erst nach Fehlern schauen).
Gibt es sonst noch relevante Dateien die deine App beinhaltet? Eventuell die Layout-XML Datei, fehlerhafte Value-Dateien?


----------



## walex (15. Jul 2017)

Ich würde sagen, vor "MainActivity" gehört ein Punkt... Dann findet er auch die activity



brilzi89 hat gesagt.:


> ```
> <activity
> 
> android:name="MainActivity"> <-- Hier
> ...


walex


----------



## Robat (15. Jul 2017)

walex hat gesagt.:


> Ich würde sagen, vor "MainActivity" gehört ein Punkt... Dann findet er auch die activity



Solange im Name der Activity kein Punkt enthalten ist , ist es nicht nötig einen Punkt vorne dran zu schreiben


----------



## brilzi89 (15. Jul 2017)

Robat hat gesagt.:


> Benutzt du irgendwelche externen Frameworks die das Abstürzen der App erklären könnten?
> Hast du den Jack-Compiler aktiviert?
> Mach mal im Logcat alle Filter raus und schau noch mal nach auffälligen Warnungen / Errors. (Wenn die App abstürzt den Dialog nicht wegdrücken sondern erst nach Fehlern schauen).
> Gibt es sonst noch relevante Dateien die deine App beinhaltet? Eventuell die Layout-XML Datei, fehlerhafte Value-Dateien?


Da ich neu in der Welt von Java und Android Studio bin , sagt mir das mit dem Frameworks und dem Jack Compiler nichts XD. Vll kannst du mich aufklären?


----------



## Robat (16. Jul 2017)

Wenn du nichts explizit eingestellt hast dann nutzt du auch nichts von dem oben genannten.


----------



## brilzi89 (16. Jul 2017)

wie meinst du das? :/


----------



## Robat (16. Jul 2017)

Das die Wahrscheinlichkeit recht gering ist das der Fehler daher kommt.
Hast du meine Hinweise / Fragen aus den anderen Post


Robat hat gesagt.:


> ...
> Mach mal im Logcat alle Filter raus und schau noch mal nach auffälligen Warnungen / Errors. (Wenn die App abstürzt den Dialog nicht wegdrücken sondern erst nach Fehlern schauen).
> Gibt es sonst noch relevante Dateien die deine App beinhaltet? Eventuell die Layout-XML Datei, fehlerhafte Value-Dateien?



mal angeschaut?


----------



## brilzi89 (16. Jul 2017)

ja hab im Logcat alle Filter raus und hab die  App mal gestartet, aber konnte mit den Hinweisen nix anfangen, google hat auch nicht wirklich weitergeholfen :/


----------



## looparda (17. Jul 2017)

Du musst den Stacktrace mit uns teilen. Damit kann man schnell auf die Ursache schließen.


----------

