programacion - mi app se detuvo android studio
Android: ¿No se encontró actividad para manejar el error de intención? Cómo se resolverá (4)
No se encontró actividad para manejar el error de intención? Cómo se resolverá
Preference customPref = (Preference) findPreference("DataEntryScreen");
customPref
.setOnPreferenceClickListener(new OnPreferenceClickListener() {
public boolean onPreferenceClick(Preference preference) {
Intent i = new Intent("com.scytec.datamobile.vd.gui.android.AppPreferenceActivity");
startActivity(i);
return true;
}
});
Agregue lo siguiente a su manifiesto:
<activity android:name=".AppPreferenceActivity" android:label="@string/app_name">
<intent-filter>
<action android:name="com.scytec.datamobile.vd.gui.android.AppPreferenceActivity" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
En general, para evitar este tipo de excepciones, deberá rodear su código intentándolo y atraparlo como este
try{
// your intent here
} catch (ActivityNotFoundException e) {
// show message to user
}
Intent intent = new Intent (String) se define para la tarea del parámetro, mientras que usted está pasando el parámetro componentname a este, use en su lugar:
Intent i = new Intent(Settings.this, com.scytec.datamobile.vd.gui.android.AppPreferenceActivity.class);
startActivity(i);
En esta declaración, reemplace ActivityName por Nombre de clase de actividad, este código reside en.
en mi caso, estaba seguro de que la acción era correcta, pero estaba pasando una URL incorrecta, pasé el enlace del sitio web sin el http: // en su inicio, por lo que causó el mismo problema, aquí está mi manifiesto (parte de él) )
<activity
android:name=".MyBrowser"
android:label="MyBrowser Activity" >
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<action android:name="com.dsociety.activities.MyBrowser" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="http" />
</intent-filter>
</activity>
cuando codigo lo siguiente, se lanza la misma excepción en tiempo de ejecución:
Intent intent = new Intent();
intent.setAction("com.dsociety.activities.MyBrowser");
intent.setData(Uri.parse("www.google.com")); // should be http://www.google.com
startActivity(intent);