J'ai une application Android qui veut lancer un email. Le code suivant fonctionne dans un émulateur niveau api 5, mais pas sur un émulateur de niveau 2 ou dispositif:Android: différence dans ACTION_SEND entre api niveau 2 et 5?
Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Email from MyApp");
emailIntent.setType("text/plain");
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT,
"This email was autogenerated by MyApp.");
try {
startActivity(emailIntent);
} catch (Exception e) {
Log.e(TAG,e.getMessage());
showDialog(DIALOG_CANTSENDMAIL);
}
L'exception jeté dit:
No Activity found to handle Intent { action=android.intent.action.SEND (has extras) }
Je peux envoyer manuellement par courrier électronique à partir de tous les appareils (émulé et réel) testé, et cela fonctionne dans le niveau 5 api. La documentation sur Intent.ACTION_SEND indique qu'il est actif depuis le niveau 1 de l'API.
Veuillez noter qu'il n'y a pas d'appareils «niveau 2 API» utilisés (0,3% selon http://developer.android.com/resources/dashboard/platform-versions.html). – CommonsWare