之前,我有设置类型“消息/ RFC822”的意图问题上安卓发送电子邮件与文件附件仿真器。我必须使用setType(“message/rfc822”),因为文件没有标准的MIME类型(sqlite数据库),我试图避免选择列表中的很多应用程序供用户选择。 对于所有的API之前的水平2.3.3我有一个错误:意图用的setType(“信息/ RFC822”)为Android API级别2.3.3
java.lang.RuntimeException:
Unable to start activity ComponentInfo{my.cashwatcher/my.cashwatcher.SendEmailActivity}:
android.content.ActivityNotFoundException:
No Activity found to handle Intent { act=android.intent.action.SEND typ=message/rfc822
(has extras) }
在API级别的情况下2.3.3代码工作正常和错误不会出现。这是一个Android模拟器或旧API的问题!?
代码:
Intent sendIntent = new Intent(Intent.ACTION_SEND);
sendIntent.setType("message/rfc822");
sendIntent.putExtra(Intent.EXTRA_EMAIL , new String[]{appPrefs.getEmail("email")});
sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(new File(Environment.getExternalStorageDirectory(), DATABASE_PATH)));
sendIntent.putExtra(Intent.EXTRA_TEXT, "body_of_email");
sendIntent.putExtra(Intent.EXTRA_SUBJECT, "APPLICATION_NAME");
startActivityForResult(sendIntent, EMAIL_SEND_RESULT);
对于“ACTION_SENDTO和mailto:Uri”提供一些示例,您是否如此善良: – isabsent
@isabsent:您是否善于使用位于此页面右上角的搜索框? – CommonsWare
在发布这个问题之前,我已经从SO和谷歌中读了很多。所有这些都不包含解决问题的办法。我意识到我可以将所有我想要的东西写入到我自己的Android设备操作系统中,但问这个问题的目的是要知道**是否已经存在适当的方式?** – isabsent