[OFFEN] App startet nicht...

Y

YouKnowNow

Neues Mitglied
0
Hallo leute
ich habe ein Problem undzwar startet die Appp auf meinem Handy nicht wenn ich sie auf dem Handy instaliere...
Könnt ihr mal bitte drüber schauen??
Xml Code
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#00FF00"
tools:context="com.example.abbas.soundboard.MainActivity">

<TextView
android:id="@+id/textView5"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="15dp"
android:text="Soundboard"
android:gravity="center"
android:textStyle="bold"
android:textSize="20dp"/>

<Button
android:id="@+id/button1"
android:layout_width="160dp"
android:layout_height="85dp"
android:text="Button1"
android:layout_marginLeft="15dp"
android:layout_marginTop="50dp"
android:background="@raw/roundbutton"/>

<Button
android:id="@+id/button2"
android:layout_width="160dp"
android:layout_height="85dp"
android:text="Button2"
android:layout_marginRight="15dp"
android:layout_marginTop="50dp"
android:layout_alignParentRight="true"
android:background="@raw/roundbutton"/>

<Button
android:id="@+id/button3"
android:layout_width="160dp"
android:layout_height="85dp"
android:text="Button3"
android:layout_marginLeft="15dp"
android:layout_marginTop="150dp"
android:background="@raw/roundbutton"/>

<Button
android:id="@+id/button4"
android:layout_width="160dp"
android:layout_height="85dp"
android:text="Button4"
android:layout_marginRight="15dp"
android:layout_marginTop="150dp"
android:layout_alignParentRight="true"
android:background="@raw/roundbutton"/>

<Button
android:id="@+id/button5"
android:layout_width="160dp"
android:layout_height="85dp"
android:text="Button5"
android:layout_marginLeft="15dp"
android:layout_marginTop="250dp"
android:background="@raw/roundbutton"/>

<Button
android:id="@+id/button6"
android:layout_width="160dp"
android:layout_height="85dp"
android:text="Button6"
android:layout_marginRight="15dp"
android:layout_marginTop="250dp"
android:layout_alignParentRight="true"
android:background="@raw/roundbutton"/>

<Button
android:id="@+id/button7"
android:layout_width="160dp"
android:layout_height="85dp"
android:text="Button7"
android:layout_marginLeft="15dp"
android:layout_marginTop="350dp"
android:background="@raw/roundbutton"/>

<Button
android:id="@+id/button8"
android:layout_width="160dp"
android:layout_height="85dp"
android:text="Button8"
android:layout_marginRight="15dp"
android:layout_marginTop="350dp"
android:layout_alignParentRight="true"
android:background="@raw/roundbutton"
/>



</RelativeLayout>

MainActivity.java:
package com.example.abbas.soundboard;

import android.media.MediaPlayer;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {

@override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

final MediaPlayer one = MediaPlayer.create(this, R.raw.one);
final Button buttonone = (Button) this.findViewById(R.id.button1);

buttonone.setOnClickListener(new View.OnClickListener() {
@override
public void onClick(View v) {
one.start();
}
});
}
}

Manifest;
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.abbas.soundboard">

<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>

Also es würde mich sehr freuen wenn jemand weiß was los ist..
Error codes gibt es auch keine...
 
Hallo You,

a) es wäre schon schön , wenn du dich mal zuerst über dein vorgestriges Problem & deren Hilfe äussern könntest.
Anstatt dessen schlägst du mit dem nächsten Problem auf, als würde dich das Letztere nicht mehr jucken .
Dann kann man sich auch die Mühe in Zukunft sparen.

Zu deinem Problem hier.

Woher hast du denn bitteschön das hier "kopiert" ?
final MediaPlayer one = MediaPlayer.create(this, R.raw.one);

Hier stimmt die Initialisierung nicht , zumal das start() auch falsch angewendet wurde .

Und so ganz nebenbei :
Diese Initialisierung hat dir zu 100% einen AS Fehler gegeben .
Schliesse mal dein Device via ADB an und debugge mal bitte
 
@swa00 hey swa00,
ich bezweifle, dass dieser Teil falsch ist, denn der hat in anderen Projekten funktioniert.
und wenn es wirklich zum Fehler führen sollte kannst du mal Bitte sagen wie es richtig aussehen soll??
und ich habe mein vorgestriges Problem umgangen... indem ich ein ganz neues Konzept erstellt hab

ps. ich habe den Code hiervon: Play sound on button click android

final MediaPlayer one = MediaPlayer.create(this, R.raw.one);
final Button buttonone = (Button) this.findViewById(R.id.button1);

buttonone.setOnClickListener(new View.OnClickListener() {
@override
public void onClick(View v) {
one.start();
 
final MediaPlayer one = MediaPlayer.create(this, R.raw.one);

Das wird zwar des Öfteren im Netz zu finden sein , richtig wäre aber der Weg

Bsp aus meinem Code

Code:
void startStandardPlayer (String url)
    {
     if ( mStandardPlayer == null)
     {
         mStandardPlayer = new android.media.MediaPlayer();
         mStandardPlayer.setWakeMode(mContext, PowerManager.PARTIAL_WAKE_LOCK);
         setEqualizer(mStandardPlayer.getAudioSessionId());

         mStandardPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
             @Override
             public void onPrepared(MediaPlayer mp) {

                 mp.seekTo((int)current_position);
                 mp.start();
            
                 for (OnStatusListener e : onStatusListener) e.onStatusChanged(STATUS_ISPLAYING);
             }
         });


         mStandardPlayer.setOnInfoListener(new MediaPlayer.OnInfoListener() {
             @Override
             public boolean onInfo(MediaPlayer mp, int what, int extra) {
                 //Log.d (TAG,"INTERNAL PLAYER INFO :"+what + " / " + extra);
                 return false;
             }
         });

         mStandardPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
             @Override
             public void onCompletion(MediaPlayer mp) {
                 //onStatusListener.onStatusChanged(STATUS_ISFINISHED);
                 //Log.d(TAG,"Standardplayer onCompletition");
                 for (OnStatusListener e : onStatusListener) e.onStatusChanged(STATUS_ISFINISHED);
             }

         });

         mStandardPlayer.setOnBufferingUpdateListener(new MediaPlayer.OnBufferingUpdateListener() {
             @Override
             public void onBufferingUpdate(MediaPlayer mp, int percent) {

             }
         });
     }

     try
     {
            mStandardPlayer.setDataSource(url);
            mStandardPlayer.prepare();
            mStandardPlayer.setVolume(0.7F,0.7F);

     }
     catch (IOException e) {}
     catch (IllegalStateException e1) {}

    }

Ergo , du solltest dir eine übergeordenete Variable erstellen und eher KEIN final

Wenn das dann damit nicht behoben ist , so hast du einen anderen Fehler , den man ohne ErrorLog nicht
erkennen kann , sondern müsste Rätseln
 
  • Danke
Reaktionen: markus.tullius
@swa00 Hey swa00,
sorry wenn ich störe, aber es startet nach wie vor nicht auf dem Handy...
Ich habe den Code verändert, aber wie gesag, ich bezweifle, dass es daran liegt...:
mediaPlayer = MediaPlayer.create(getApplicationContext(), R.raw.one);

mediaPlayer.start();

}

@override
protected void onPause() {
super.onPause();
mediaPlayer.stop();
mediaPlayer.release();

}

könntest du mit mir das Problem lösen??
 
Klammere doch mal bitte deine ganze Initialisierung des Mediaplayers aus , incl. start() release().
Und da schaust du mal, ob deine app auch noch abstürtzt.

Ausschlussverfahren ...
Hast du denn mal debugt ???
 
Zuletzt bearbeitet:
Hi,

mich stört schon der erste Satz:
YouKnowNow schrieb:
ich habe ein Problem undzwar startet die Appp auf meinem Handy nicht wenn ich sie auf dem Handy instaliere...

Eigentlich startet eine App immer, sie stürzt nur oft direkt ab, wenn etwas falsch in der MainActivity programmiert wurde.
Du sagst zwar, du hast keine Fehler, aber Android Studio müsste dich darauf aufmerksam machen, dass dein Package Name "com.example.xyz" nicht verwendet werden sollte.
 
  • Danke
Reaktionen: markus.tullius und swa00
Hallo @YouKnowNow,

da dein Code nicht funktioniert, muss es am Code liegen!!!! Leugnen ist zwecklos, da Geräte nicht Abstürzen, weil sie gerade mal keine Lust haben.

Warum du kein Logcat (in dem Fall die Fehlermeldung) kopieren kannst, und dann hier posten, verstehe ich nicht. Ohne diese Fehlermeldung macht das hier nicht viel Sinn.

Ich vermute @swa00 hat recht mit seiner Vermutung. Dein Mediaplayer wird die Quelle R.raw.one nicht lesen können, mich würde nicht wundern, wenn er sie nicht mal findet.

Noch ein Bemerkung zu Stackoverflow. Ich mag das Forum, aber nicht alle Lösungen, die dort gepostet werden, sollte man einfach kopieren. In dem Fall ist die Lösung einfach zu kurz gedacht, sie funktioniert irgendwie, ist aber sehr unsauber funktioniert. Der Code von @swa00 ist besser, weil er sich an die Doku von Googel hält.

Einfach kopieren funktioniert nicht, man sollte schon verstehen, was man da macht. Und sich ruhig ein bisschen Zeit mitnehmen. Eine Abkürzung beim Programmieren gibt es nicht.
 
  • Danke
Reaktionen: swa00

Ähnliche Themen

Manny87
  • Manny87
Antworten
11
Aufrufe
166
swa00
swa00
R
  • Robby1950
2
Antworten
23
Aufrufe
1.022
Robby1950
R
netfreak
  • netfreak
Antworten
10
Aufrufe
461
netfreak
netfreak
Zurück
Oben Unten