Android.content.ActivityNotFoundException: Ninguna actividad encontrada para manejar Intent splash screen

Tengo un problema con la carga de una nueva intención después de mi pantalla de bienvenida. He mirado las preguntas relativas a esta excepción, pero todos parecen estar tratando con algo como google play o google maps no se hace referencia correctamente, este no es el caso para mí.

Estas son las preguntas relacionadas que he mirado

No se encontró actividad para manejar la intención?

Actividad no encontrada para manejar la intención

Ninguna actividad encontrada para manejar la intención

A continuación se muestra mi código de manifiesto

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.main" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="15" /> <uses-permission android:name="android.permission.INTERNET"/> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:name=".Splash" 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=".HomePage" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.HOMEPAGE" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> <activity android:name=".OrderPlaced" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.ORDERPLACED" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> </application> </manifest> 

Aquí está el código de la clase splash

 package com.android.main; import android.app.Activity; import android.content.Intent; import android.os.Bundle; public class Splash extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.splash); Thread timer = new Thread(){ public void run(){ try{ sleep(1000); }catch(InterruptedException e) { e.printStackTrace(); }finally{ Intent openStartingPoint = new Intent("com.android.main.HOMEPAGE"); startActivity(openStartingPoint); } } }; timer.start(); } @Override protected void onPause() { super.onPause(); finish(); } } 

Y aquí está la clase HomePage que estoy tratando de cargar después de la pantalla de bienvenida

 package com.android.main; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.CheckBox; import android.widget.EditText; import android.widget.Spinner; import android.widget.TextView; public class HomePage extends Activity { /** Called when the activity is first created. */ TextView name; EditText editName; TextView drinks; Spinner drinksSpinner; TextView message; CheckBox checkbox; Button createOrderButton; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); createOrder(); } public void createOrder(){ createOrderButton = (Button) findViewById(R.id.bCreateOrder); createOrderButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { postInformationtoAPI(); } private void postInformationtoAPI() { goToOrderCompleted(); } private void goToOrderCompleted() { Intent intent = new Intent(HomePage.this , OrderPlaced.class); HomePage.this.startActivity(intent); Log.i("onClick", "trying to start new activity to change layout"); } }); } } 

La aplicación se cierra después de cargar la pantalla de bienvenida y da la siguiente excepción

 03-14 22:32:33.553: E/AndroidRuntime(3166): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=com.android.main.HOMEPAGE } 

Cualquier ayuda con esto sería muy apreciada

Tienes que diferenciar el Constructor de la Intención,

  Intent openStartingPoint = new Intent("com.android.main.HOMEPAGE"); 

Que asumen com.android.main.HOMEPAGE como la acción de intención Filtrar . Lo cual no está disponible en el archivo android manifest.xml de su aplicación. Tienes

<action android:name="android.intent.action.HOMEPAGE" />

Que debe ser,

<action android:name="com.android.main.HOMEPAGE" />

O simplemente cambiarlo con,

 Intent openStartingPoint = new Intent(Splash.this, HOMEPAGE.class); 
  <activity android:label="@string/app_name" android:name=".SplashScreen" android:screenOrientation="landscape" android:theme="@android:style/Theme.NoTitleBar.Fullscreen" > <intent-filter > <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.android.main.HOMEPAGE" android:screenOrientation="landscape" android:theme="@android:style/Theme.NoTitleBar.Fullscreen" > <intent-filter > <action android:name="com.android.main.HOMEPAGE" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> 

También tendría una tarea de temporizador para mostrar la pantalla de bienvenida

 public class SplashScreen extends Activity{ Timer splashTimer; SplashTimerHandler splashTimerHandler; private boolean applicationPaused=false; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.main); this.setSplash(); } private void setSplash() { this.splashTimerHandler=new SplashTimerHandler(); this.splashTimer=new Timer(); this.splashTimer.schedule(this.splashTimerHandler, 0, 1000); } @Override public void onPause() { super.onPause(); this.applicationPaused=true; this.closeSplashTimer(); } @Override public void onResume() { super.onResume(); if(this.applicationPaused) { this.applicationPaused=false; this.closeSplashTimer(); this.setSplash(); } } public class SplashTimerHandler extends TimerTask{ int splashTimerCounter=0; @Override public void run() { splashTimerCounter++; if(splashTimerCounter>2) { runOnUiThread(splashTimeOver); } } private Runnable splashTimeOver=new Runnable() { @Override public void run() { closeSplashTimer(); startHomeScreen(); } }; } protected void closeSplashTimer() { if(this.splashTimer!=null) { this.splashTimer.cancel(); this.splashTimer=null; } } private void startHomeScreen() { this.closeSplashScreen(); startActivity(new Intent("com.android.main.HOMEPAGE")); } private void closeSplashScreen() { this.closeSplashTimer(); this.finish(); } @Override public boolean onKeyDown(int keycode, KeyEvent event) { if(keycode==KeyEvent.KEYCODE_BACK) { this.closeSplashScreen(); } return true; } } 
  • Presionando el botón de nuevo llama aCrear (Android)
  • Redirigir usuario a App Store en Android
  • ¿Cómo saber qué intención está seleccionada en Intent.ACTION_SEND?
  • Permiso de Android para limitar INSTALL_REFERRER para reproducir la tienda
  • ¿Por qué mi aplicación no está en la lista de aplicaciones para abrir el archivo txt?
  • Cómo utilizar putExtra () y getExtra () para los datos de cadena
  • Eliminar Contacto seleccionar opción formulario seleccionar opciones
  • Com.google.android.c2dm.intent.REGISTRATION está desaconsejado?
  • Receptor de radiodifusión en fragmento no recibe intención de servicio
  • Cómo borrar mediante programación la caché de nombres de Bluetooth en Android?
  • Android: problema de intención
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.