2016-03-16 2 views
-2

У меня проблема с моим приложением, которое я делаю на Android Studio. Я не знаю почему, но после экрана заставки приложение аварийно завершает работу. Я хочу, чтобы активность «Accueil» открывалась после экрана всплеска. На прошлой неделе он отлично работал, и теперь его больше нет. Я ничего не трогал. Я покажу вам манифест и файлы .java.Сбой приложения для Android Studio

Splashscreen.java:

import android.app.Activity; 
import android.content.Intent; 
import android.graphics.PixelFormat; 
import android.os.Bundle; 
import android.view.Window; 
import android.view.animation.Animation; 
import android.view.animation.AnimationUtils; 
import android.widget.ImageView; 
import android.widget.LinearLayout; 

public class Splashscreen extends Activity { 
    public void onAttachedToWindow() { 
     super.onAttachedToWindow(); 
     Window window = getWindow(); 
     window.setFormat(PixelFormat.RGBA_8888); 
    } 

    Thread splashTread; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_splashscreen); 
     StartAnimations(); 
     Thread loading = new Thread() { 
      public void run() { 
       try { 
        sleep(5000); 
        Intent main = new Intent(Splashscreen.this,Menu.class); 
        startActivity(main); 
        finish(); 
       } catch (Exception e) { 
        e.printStackTrace(); 
       } finally { 
        finish(); 
       } 
      } 
     }; 

     loading.start(); 
    } 

    private void StartAnimations() { 
     Animation anim = AnimationUtils.loadAnimation(this, R.anim.alpha); 
     anim.reset(); 
     LinearLayout l = (LinearLayout) findViewById(R.id.lin_lay); 
     l.clearAnimation(); 
     l.startAnimation(anim); 
     anim = AnimationUtils.loadAnimation(this, R.anim.rotate); 
     anim.reset(); 
     ImageView iv = (ImageView) findViewById(R.id.splash); 
     iv.clearAnimation(); 
     iv.startAnimation(anim); 
     splashTread = new Thread() { 
      @Override 
      public void run() { 
       try { 
        int waited = 0; 

        while (waited < 3500) { 
         sleep(100); 
         waited += 100; 
        } 

        Intent intent = new Intent(Splashscreen.this,Menu.class); 
        startActivity(intent); 
        finish(); 
       } catch (InterruptedException e) { 

       } 
      } 
     }; 
    } 
} 

Android Manifest:

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

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

     <activity android:name=".Splashscreen" 
      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=".Accueil" 
      android:label="@string/title_activity_accueil"/> 
    </application> 
</manifest> 

Accueil.java:

package com.example.thibaudmangeot.erdfapplicationsecurite; 

import android.content.Intent; 
import android.os.Bundle; 
import android.support.v7.app.ActionBarActivity; 
import android.widget.Button; 
import android.view.View; 

public class Accueil extends ActionBarActivity { 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_accueil); 

     Button buttonfis = (Button) findViewById(R.id.buttonfis); 

     buttonfis.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       goTosignin(); 
      } 
     }); 
    } 

    private void goTosignin() { 
     Intent intent = new Intent(this, Menu.class); 
     startActivity(intent); 
    } 
} 
+1

Пожалуйста, разместите ваш журнал аварий. – Rohit5k2

+0

Также не помещайте поток пользовательского интерфейса во сне. – Rohit5k2

ответ

0

ли это

Intent main = new Intent(Splashscreen.this, Accueil.class); 
        startActivity(main); 
        finish(); 

Вместо

Intent main = new Intent(Splashscreen.this, Menu.class); 
       startActivity(main); 
       finish(); 

Вы даже не упоминается деятельность меню в манифесте.

0

Это ваша ошибка:

Intent main = new Intent(Splashscreen.this,Menu.class); 

должно быть:

Intent main = new Intent(Splashscreen.this, Accueil.class); 
0

Я думаю, что ваше приложение сбой может быть по двум причинам

  1. Там нет активности по имени " Меню "
  2. Деятельность меню не указана в манифесте fi le

Если вы хотите открыть мероприятие «Accueil», напишите свое намерение следующим образом.

Intent openAccueil = new Intent(Splashscreen.this,Menu.class); 
startActivity(openAccueil); 
Смежные вопросы