2016-07-14 4 views
-3

Я добавил экран всплеска в свое приложение, но это привело к сбою моего приложения. Вот что показывает экран Splash, однако он не запускает мою MainActivity. Помогите парням. Смотрите мой Manifest ..Всплеск экрана, приводящий к сбою приложения

<?xml version="1.0" encoding="utf-8"?> 

<application 
    android:allowBackup="true" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    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.DEFAULT" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 

    <activity android:name=".Splash"> 
     <intent-filter> 
      <action android:name="com.example.billeazy.SPLASH" /> 

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

+3

Это всегда очень полезно, если у вас есть авария, чтобы НАСТОЯЩИМ СКАЗАТЬ США. –

+0

Ваша активность «Всплеск» должна быть «ОСНОВНОЙ». – Stanojkovic

+0

Эта практика не одобряется, так как правильный способ сделать заставку на Android см. Здесь: https://plus.google.com/+AndroidDevelopers/posts/Z1Wwainpjhd –

ответ

1

Ваша деятельность "Всплеск" должны быть MAIN LAUNCHER активность. Таким образом изменить AndroidManifest файл, как это ...

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

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

И Перейти к MainActivity через несколько секунд ..

Handler hadler=new Handler(); 
     hadler.postDelayed(new Runnable() { 
      @Override 
      public void run() { 
       finish(); 
       Intent i = new Intent(context, MainActivity.class); 
       startActivity(i); 
      } 
     }, 3000); 

здесь 3000 используется в течение 3 секунд. Автоматический запуск MainActivity через 3 секунды. Надеюсь, это поможет.

Смежные вопросы