android – 发现电子邮件时没有找到处理Intent的Activity

android – 发现电子邮件时没有找到处理Intent的Activity,第1张

概述我试图通过电子邮件发送通过我的应用程序点击的图片作为附件.单击图片并且我正确地获取路径但是应用程序抛出了运行时异常..“没有找到处理Intent的活动”.我正在我的设备上测试这个,我配置了我的Gmail帐户.我不知道如何解决这个问题.请帮忙. 这是我的代码: public static void sendEmail(Context context, String[] recipientList, 我试图通过电子邮件发送通过我的应用程序点击的图片作为附件.单击图片并且我正确地获取路径但是应用程序抛出了运行时异常..“没有找到处理Intent的活动”.我正在我的设备上测试这个,我配置了我的Gmail帐户.我不知道如何解决这个问题.请帮忙.

这是我的代码:

public static voID sendEmail(Context context,String[] recipIEntList,String Title,String subject,String body) {Intent intent = new Intent(Intent.ACTION_SENDTO,Uri.parse("mailto:someone@example.com"));        intent.setType("plain/text");        intent.putExtra(androID.content.Intent.EXTRA_EMAIL,recipIEntList);        intent.putExtra(androID.content.Intent.EXTRA_SUBJECT,subject);        intent.putExtra(androID.content.Intent.EXTRA_TEXT,body);        intent.putExtra(Intent.EXTRA_STREAM,capturedImagefilePath);        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);        context.startActivity(intent);}

这是日志:

01-15 11:26:04.455: E/AndroIDRuntime(9904): FATAL EXCEPTION: main01-15 11:26:04.455: E/AndroIDRuntime(9904): androID.content.ActivityNotFoundException: No Activity found to handle Intent { act=androID.intent.action.SENDTO typ=plain/text flg=0x10000000 (has extras) }01-15 11:26:04.455: E/AndroIDRuntime(9904):     at androID.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1512)01-15 11:26:04.455: E/AndroIDRuntime(9904):     at androID.app.Instrumentation.execStartActivity(Instrumentation.java:1384)01-15 11:26:04.455: E/AndroIDRuntime(9904):     at androID.app.ContextImpl.startActivity(ContextImpl.java:852)01-15 11:26:04.455: E/AndroIDRuntime(9904):     at androID.content.Contextwrapper.startActivity(Contextwrapper.java:276)01-15 11:26:04.455: E/AndroIDRuntime(9904):     at com.example.attachmail.AttchmentActivity.sendEmail(AttchmentActivity.java:133)01-15 11:26:04.455: E/AndroIDRuntime(9904):     at com.example.attachmail.AttchmentActivity.onClick(AttchmentActivity.java:93)
解决方法 我有一个更相似的问题,我已经传递了一个函数的参数,该函数发送带有意图的电子邮件.
但是我注意到我需要使用行intent.setData(Uri uri),如果email参数只是电子邮件,那么它需要使用“mailto:”文本
例:
intent.setData(Uri.parse("mailto:"+email));

像这儿:

Intent intent = new Intent(Intent.ACTION_SENDTO);                    intent.setType("message/rfc822");                    intent.putExtra(Intent.EXTRA_EMAIL,email);                    intent.setData(Uri.parse("mailto:"+email));                    intent.putExtra(Intent.EXTRA_SUBJECT,emailSubject);                    intent.putExtra(Intent.EXTRA_TEXT,emailContent);                    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);                    intent.addFlags(Intent.FLAG_FROM_BACKGROUND);                try {                    startActivity(intent);                } catch (androID.content.ActivityNotFoundException e) {                    // Todo auto-generated catch block                    e.printstacktrace();                    Log.d("Email error:",e.toString());                }

如果您在模拟器上进行测试,可能会出现“共享”未配置的应用程序的问题,因此要么确保在模拟器上进行设置,要么在实际设备上进行测试.

总结

以上是内存溢出为你收集整理的android – 发现电子邮件时没有找到处理Intent的Activity全部内容,希望文章能够帮你解决android – 发现电子邮件时没有找到处理Intent的Activity所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1132813.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存