android – 从应用程序发送电子邮件时,ActivityNotFoundException异常

前端之家收集整理的这篇文章主要介绍了android – 从应用程序发送电子邮件时,ActivityNotFoundException异常前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我写了一个代码,我允许用户通过电子邮件向供应商[ShopOwner]发送订单,以及他们的个人和购物车项目详细信息,但在这里我得到一个

错误:遗憾的是应用程序已停止

logcat的:

01-30 17:56:14.605: E/AndroidRuntime(951): FATAL EXCEPTION: main
01-30 17:56:14.605: E/AndroidRuntime(951): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.SEND typ=text/html flg=0x1 (has clip) (has extras) }
01-30 17:56:14.605: E/AndroidRuntime(951):  at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1622)
01-30 17:56:14.605: E/AndroidRuntime(951):  at android.app.Instrumentation.execStartActivity(Instrumentation.java:1417)
01-30 17:56:14.605: E/AndroidRuntime(951):  at android.app.Activity.startActivityForResult(Activity.java:3370)
01-30 17:56:14.605: E/AndroidRuntime(951):  at android.app.Activity.startActivityForResult(Activity.java:3331)
01-30 17:56:14.605: E/AndroidRuntime(951):  at android.app.Activity.startActivity(Activity.java:3566)
01-30 17:56:14.605: E/AndroidRuntime(951):  at android.app.Activity.startActivity(Activity.java:3534)
01-30 17:56:14.605: E/AndroidRuntime(951):  at com.version.bajrang.january.menu.ArrowsActivity$1.onClick(ArrowsActivity.java:105)
01-30 17:56:14.605: E/AndroidRuntime(951):  at android.view.View.performClick(View.java:4202)
01-30 17:56:14.605: E/AndroidRuntime(951):  at android.view.View$PerformClick.run(View.java:17340)
01-30 17:56:14.605: E/AndroidRuntime(951):  at android.os.Handler.handleCallback(Handler.java:725)
01-30 17:56:14.605: E/AndroidRuntime(951):  at android.os.Handler.dispatchMessage(Handler.java:92)
01-30 17:56:14.605: E/AndroidRuntime(951):  at android.os.Looper.loop(Looper.java:137)
01-30 17:56:14.605: E/AndroidRuntime(951):  at android.app.ActivityThread.main(ActivityThread.java:5039)
01-30 17:56:14.605: E/AndroidRuntime(951):  at java.lang.reflect.Method.invokeNative(Native Method)
01-30 17:56:14.605: E/AndroidRuntime(951):  at java.lang.reflect.Method.invoke(Method.java:511)
01-30 17:56:14.605: E/AndroidRuntime(951):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
01-30 17:56:14.605: E/AndroidRuntime(951):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
01-30 17:56:14.605: E/AndroidRuntime(951):  at dalvik.system.NativeStart.main(Native Method)

码:

Intent messageIntent = new Intent(android.content.Intent.ACTION_SEND);
String aEmailList[] = { "rakesh@rocketmail.com" };   
messageIntent.putExtra(android.content.Intent.EXTRA_EMAIL,aEmailList);
messageIntent.putExtra(android.content.Intent.EXTRA_SUBJECT,subject);
messageIntent.setType("text/html");
messageIntent.putExtra(android.content.Intent.EXTRA_TEXT,Html.fromHtml(body.toString()));
startActivity(messageIntent);

最后用SahilMahajanMj的帮助,我用这个代码几乎没有变化:

Intent i = new Intent(Intent.ACTION_SEND);
 i.putExtra(Intent.EXTRA_EMAIL,new String[]{"rakesh@rocketmail.com"});
 i.putExtra(Intent.EXTRA_SUBJECT,subject);
 i.setType("message/rfc822");
 i.putExtra(Intent.EXTRA_TEXT,Html.fromHtml(body.toString()));

try {
    startActivity(Intent.createChooser(i,"Send email via :"));
    Toast.makeText(ArrowsActivity.this,"Email Sent.",Toast.LENGTH_SHORT).show();
} catch (android.content.ActivityNotFoundException ex) {
    Toast.makeText(ArrowsActivity.this,"There are no email applications installed.",Toast.LENGTH_SHORT).show();
}

在ViewCartActivity.java

public void onClick(View v) {
    // TODO Auto-generated method stub

        Intent mViewCartIntent = new Intent(ViewCartActivity.this,com.version.bajrang.january.menu.ArrowsActivity.class);
        mViewCartIntent.putExtra("name",myTextVeiwGrandTotal.getText().toString());
        startActivity(mViewCartIntent);

            }
        });

在ArrowsActivity.java中:

TextView txtName = (TextView) findViewById(R.id.total);
Intent i = getIntent();
String name = i.getStringExtra("name");
txtName.setText(name);

我正在使用上面的代码获取购物车中的总产品数量,我可以得到和显示,但是这里总共的商品数量我也想在购物车选项卡上显示

https://play.google.com/store/apps/details?id=com.queppelin.tastykhana

他们已经显示2红色…

解决方法

错误消息显示

ActivityNotFoundException: No Activity found to handle Intent {
act=android.intent.action.SEND typ=text/html flg=0x1 (has clip) (has
extras) }

这意味着Android系统没有发现任何电子邮件发送活动来处理您创建的意图.确保您的设备中安装了电子邮件应用程序.

还可以使用以下代码发送电子邮件,

Intent i = new Intent(Intent.ACTION_SEND);
i.setType("message/rfc822");
i.putExtra(Intent.EXTRA_EMAIL,new String[]{"recipient@example.com"});
i.putExtra(Intent.EXTRA_SUBJECT,"subject of email");
i.putExtra(Intent.EXTRA_TEXT,"body of email");
try {
    startActivity(Intent.createChooser(i,"Send mail"));
} catch (android.content.ActivityNotFoundException ex) {
    Toast.makeText(MyActivity.this,Toast.LENGTH_SHORT).show();
}
原文链接:https://www.f2er.com/android/313151.html

猜你在找的Android相关文章