Como alternativa a la respuesta de Dalmas, puede exportar un Activity
sin crear un <intent-filter>
(junto con la molestia de crear una acción personalizada).
En el Manifest
editar su etiqueta Activity
así:
<activity
android:name=".SomeActivity"
....
android:exported="true" />
La parte importante es android:exported="true"
, esta etiqueta export
determina "si la actividad puede ser lanzado por componentes de otras aplicaciones". Si su <activity>
contiene un <intent-filter>
, esta etiqueta se configura automáticamente en true
, si no está configurada en false
de forma predeterminada.
A continuación, para poner en marcha el Activity
hacer esto:
Intent i = new Intent();
i.setComponent(new ComponentName("package name", "fully-qualified name of activity"));
startActivity(i);
Por supuesto, con este método, necesitará saber el nombre exacto de la actividad que está tratando de poner en marcha.
Gracias, acabo de leer el Barcodescanner Manifest y descubrí lo mismo. :] – Force