Android.content.ActivityNotFoundException: No se puede encontrar la clase de actividad explícita
Consigo este error:
06-06 10:45:19.685: E/AndroidRuntime(554): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.Android.myApp/com.Android.myApp.Facebook.Example}; have you declared this activity in your AndroidManifest.xml?
Pero lo he declarado en mi archivo de manifiesto. ¿Cuáles podrían ser las otras razones para tal excepción?
- Android - No se puede instanciar la actividad - ClassNotFound - Falla en un eclipse pero no en otro
- Java.lang.ClassNotFoundException: org.postgresql.Driver, Android
- NoClassDefFoundError para OkHttpClient
- Android: clase no encontrada excepción: android.support.v4.app.FragmentPager
- ClassNotFoundException durante el instrumento de prueba de Android
Mi manifiesto.xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.Android.myApp" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="4" /> <uses-feature android:name="android.hardware.camera" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.CAMERA" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@android:style/Theme.Light" > <activity android:name=".SignUpActivity" 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=".SignInActivity" android:label="@string/app_name" /> <activity android:name=".HomeActivity" android:label="@string/app_name" /> <activity android:name=".selectCityActivity" android:label="@string/app_name" /> <activity android:name=".FeedListViewActivity" android:label="@string/app_name" /> <activity android:name=".SearchActivity" android:label="@string/app_name" /> <activity android:name=".IWantActivity" android:label="@string/app_name" /> <activity android:name=".DateActivity" android:label="@string/app_name" /> <activity android:name=".ShareActivity" android:label="@string/app_name" /> <activity android:name=".ShareProductActivity" android:label="@string/app_name" /> <activity android:name=".SharePriceActivity" android:label="@string/app_name" /> <activity android:name=".ShareStoreActivity" android:label="@string/app_name" /> <activity android:name=".ProfileActivity" android:label="@string/app_name" /> <activity android:name=".ShowMapActivity" android:label="@string/app_name" /> <activity android:name=".ParticularEntryActivity" android:label="@string/app_name" /> <activity android:name=".MyLocationActivity" android:label="@string/app_name" /> <activity android:name=".MapMarkerActivity" android:label="@string/app_name" /> <activity android:name=".BarcodeActivity" android:label="@string/app_name" /> <activity android:name=".BarcodeResult" android:label="@string/app_name" /> <activity android:name=".FeedbackActivity" android:label="@string/app_name" /> <activity android:name=".SplashActivity" android:label="@string/app_name" /> <activity android:name=".Example" android:label="@string/app_name" /> <uses-library android:name="com.google.android.maps" /> </application> </manifest>
- Actividad de Android ClassNotFoundException - probado todo
- Android java.lang.ClassNotFoundException
- Java.lang.ClassNotFoundException: No encontró la clase en la ruta: DexPathList, después de actualizar sdk
- No se puede instanciar la actividad ... No encontró la clase WelcomeActivity en la ruta: DexPathList (con ejecución instantánea)
- El servicio de Android no se puede iniciar debido a un ClassNotFoundException de una clase que ya no existe
- ActionBarSherlock - SearchView es null?
- El marco de Android Annotations no parece generar nada
- IntelliJ y android.support.v7.widget.GridLayout
Usted declaró el nombre del paquete en el manifiesto como com.Android.myApp
y nombre de la .Example
. .Example
android lo buscará desde com.Android.myApp.Example
. Pero su actividad está residiendo en " com.Android.myApp/com.Android.myApp.Facebook.Example
". Así que el nombre de la actividad como .Facebook.Example
o camino completo como se indica a continuación En el manifiesto
<activity android:name="com.Android.myApp.Facebook.Example"> </activity>
también puedes usar
<activity android:name=".Facebook.Example" android:label="@string/app_name" />
Tengo una variación a este problema. Estaba lanzando una actividad llamada "Configuración" y obtener el mismo error y hacer todos los cambios sugeridos en el manifiesto no fueron la solución del problema.
La cosa es, en la actividad de llamada, también estaba usando / importando android.provider.Settings, así que por lo que puedo ver al intentar iniciar la actividad que se estaba confundiendo entre los dos. Así que cambié esto en el código en lugar del manifiesto para incluir la ruta completa:
Intent launchScr = new Intent(this, com.foo.bar.Settings.class);
Y funcionó. Por supuesto, la otra y mejor manera de resolver este problema en particular sería utilizar mejores nombres para mis actividades.
HTH cualquier persona con esta variante del problema.
De su excepción, que es su clase – Facebook
o Example
Porque, declaró en el paquete en el manifiesto como com.Android.myApp
Pero, para la actividad de facebook
que declaró com.android.myApp.Facebook.Example
Y,
Si el ejemplo es su actividad significa, usted debe declarar su actividad como com.Android.myApp.Facebook.Example
Porque, su de diverso paquete o su nombre de la actividad como Facebook.Example
Tan mejor usted puede declarar su actividad como abajo –
<activity android:name="com.Android.myApp.Facebook.Example" android:label="@string/app_name" />
Sólo asegúrate de que tu actividad esté decorada con este atributo:
[Activity(Label = "Your App Name", MainLauncher=true)]
Nota: Sólo configure MainLauncher si es necesario.
Esto funciona si tiene un objeto Activity (que debe iniciar):
intent.setClassName(CallingActivity.this, activityToLaunch.getComponentName().getClassName());
- Diferencia entre androide: orientación = "vertical" vs androide: orientación = "horizontal"
- Cómo agregar relleno entre los elementos del menú en android?