相关疑难解决方法(0)

发送电子邮件意图

Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/html");
intent.putExtra(Intent.EXTRA_EMAIL, "emailaddress@emailaddress.com");
intent.putExtra(Intent.EXTRA_SUBJECT, "Subject");
intent.putExtra(Intent.EXTRA_TEXT, "I'm email body.");

startActivity(Intent.createChooser(intent, "Send Email"));
Run Code Online (Sandbox Code Playgroud)

上面的代码打开一个对话框,显示以下应用程序: - 蓝牙,Google Docs,Yahoo Mail,Gmail,Orkut,Skype等.

实际上,我想过滤这些列表选项.我想只显示与电子邮件相关的应用程序,例如Gmail,Yahoo Mail.怎么做?

我在"Android Market"应用程序上看到了这样的例子.

  1. 打开Android Market应用
  2. 打开开发人员指定其电子邮件地址的任何应用程序.(如果你找不到这样的应用程序只需打开我的应用程序: - market:// details?id = com.becomputer06.vehicle.diary.free,或者通过'Vehicle Diary'搜索)
  3. 向下滚动到'DEVELOPER'
  4. 点击"发送电子邮件"

该对话框仅显示电子邮件应用程序,例如Gmail,Yahoo Mail等.它不显示蓝牙,Orkut等.什么代码产生这样的对话?

email android android-intent

549
推荐指数
20
解决办法
36万
查看次数

intent.setType(type)可能的intent类型是什么?

我正在搜索如何从我的应用程序发送电子邮件,我遇到了这个主题:

如何从我的Android应用程序发送电子邮件

它解决了在他的动作发送中添加类型的问题:

i.setType("message/rfc822");
Run Code Online (Sandbox Code Playgroud)

这对我也有用,我可以发送我的电子邮件,这很棒.我只是想知道我还能在那里设置什么.

我知道,如果我没有设置任何内容,它将显示包含所有可用选项的列表.我想强制用户使用我选择的任何选项来共享它.我可以探索这个以迫使用户以我想要的方式分享吗?

android android-intent

55
推荐指数
2
解决办法
7万
查看次数

Android Intent Chooser仅显示电子邮件选项

我的应用程序集成了电子邮件,用户可以直接从应用程序提交错误报告,反馈等.我正在使用application/octet-stream作为Intent的SetType.当您提交电子邮件时,您将获得内容选择器,并显示来自Evernote,Facebook,电子邮件等的各种项目.

如何让此选择器仅显示电子邮件,以免将用户与适合内容选择器类型的所有其他项目混淆?

谢谢.

android android-intent xamarin.android

24
推荐指数
3
解决办法
3万
查看次数

如何直接从Android应用程序发送电子邮件而不显示设备的默认电子邮件形式?

我正在构建一个从Android应用程序发送电子邮件的表单,我使用Intents发送电子邮件,即:

Intent sendIntent;
sendIntent = new Intent(Intent.ACTION_SEND);
Run Code Online (Sandbox Code Playgroud)

我的要求是我希望电子邮件立即发送,目前应用程序显示我已安装的电子邮件应用程序在设备中我可以在发送前重新编写电子邮件,我想直接发送邮件而不显示已安装的应用程序.

谢谢

email android

22
推荐指数
1
解决办法
6万
查看次数

单击按钮时从Android应用程序发送电子邮件

我需要为用户提供功能,用户可以通过发送电子邮件来共享某些数据.我使用下面的代码.

    Intent email = new Intent(android.content.Intent.ACTION_SENDTO);
    email.setType("message/rfc822");
    email.putExtra(Intent.EXTRA_EMAIL, new String[] { to });
    email.putExtra(Intent.EXTRA_SUBJECT, subject);
    email.putExtra(Intent.EXTRA_TEXT, message);
    startActivity(Intent.createChooser(email,"Choose an Email client :"));
Run Code Online (Sandbox Code Playgroud)

这显示了Email,gmail,Skype和蓝牙发送供用户选择.我不希望用户显示Skype,在此列表中通过蓝牙发送.我需要做什么 ?我的手机中有WhatsApp,它做同样的事情,但没有在列表中显示电子邮件,蓝牙(设置 - >帮助 - >联系人 - > ...).只显示列表中的电子邮件和Gmail.我需要做同样的事情.

email android android-intent

22
推荐指数
1
解决办法
3万
查看次数

Android Studio mailto Intent 不显示主题和邮件正文

我正在尝试从我的 Android 应用程序发送电子邮件。单击一个按钮,gmail 应该会打开并显示一封包含我之前定义的收件人、主题和电子邮件正文的新电子邮件。到目前为止,我已经尝试发送 Intent.ACTION_VIEW 和 Intent.ACTION_SENDTO。两者都只向收件人显示我的草稿。主题和信息都受到压制。奇怪的是当使用模拟器时,它工作得很好。还试图锁定android错误日志。好像没有权限 这真的是权限问题还是其他原因?我真的很感激任何帮助

这是我的代码:

  • 通过 ACTION_VIEW 发送电子邮件
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("mailto:" + to));
intent.putExtra(intent.EXTRA_SUBJECT, subject);
intent.putExtra(intent.EXTRA_TEXT, message);
mainActivity.startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
  • 通过 ACTION_SENDTO 发送电子邮件
Intent email = new Intent(Intent.ACTION_SENDTO);
email.setType("message/rfc822");
email.putExtra(Intent.EXTRA_EMAIL, new String[]{to});
email.putExtra(Intent.EXTRA_SUBJECT, subject);
email.putExtra(Intent.EXTRA_TEXT, message);
mainActivity.startActivity(Intent.createChooser(email, "Choose an Email client :"));
Run Code Online (Sandbox Code Playgroud)
  • 来自 logcat 的错误消息
2019-12-13 01:30:35.172 29268-29268/? E//system/bin/webview_zygote32: failed to make and chown /acct/uid_99044: Permission denied
2019-12-13 01:30:35.172 29268-29268/? E/Zygote: createProcessGroup(99044, 0) failed: Permission denied
2019-12-13 01:30:35.206 29289-29289/? E/asset: setgid: Operation not permitted
2019-12-13 …
Run Code Online (Sandbox Code Playgroud)

java email error-handling android android-intent

19
推荐指数
4
解决办法
6843
查看次数

如何使用android studio编写代码来发送电子邮件

我打算使用android studio开发一个Android移动应用程序,用户可以在其中提供电子邮件地址和密码.然后该密码应发送到提到的电子邮件地址.任何机构都可以共享任何代码片段来执行此操作吗?

android

12
推荐指数
2
解决办法
6万
查看次数

如何检查设备上是否安装了电子邮件客户端

我需要检查是否在设备上安装了电子邮件客户端.我使用了以下代码,但它对我不起作用.

public boolean isIntentAvailable() {
    final PackageManager packageManager = getApplicationContext().getPackageManager();
    final Intent intent = new Intent(Intent.ACTION_SEND);
    intent.putExtra(Intent.EXTRA_EMAIL, "vin@gmail.com");
    List<ResolveInfo> list = packageManager.queryIntentActivities(intent, PackageManager.GET_META_DATA);
    return list.size() > 0;
} 
Run Code Online (Sandbox Code Playgroud)

android

6
推荐指数
2
解决办法
3056
查看次数

使用设备的已登录Google帐户发送电子邮件

有什么方法可以使用设备的已登录Google帐户发送电子邮件?

较早前曾提出类似的问题,但没有得到足够的答案,或者很久以前,现在已经有许多新的API可用。

以前,我一直Intent.createChooser在提示用户选择邮件客户端并手动发送邮件。但是这次,我希望整个过程能够在没有任何用户交互的情况下完成。我什至不想让用户提供一次性SMTP帐户详细信息或在此过程中使用我自己的帐户。

我知道,我可以访问AccountManager以获得有关登录帐户的信息,但是它可以帮助我发送电子邮件而无需任何用户交互(例如,以编程方式发送电子邮件)。

android accountmanager

5
推荐指数
1
解决办法
1123
查看次数

如何在Android中发送电子邮件?

如何在Android上以代码形式发送简单的电子邮件?

email android

4
推荐指数
1
解决办法
2万
查看次数

电子邮件意图不再适用于Android Lollipop

我一直在使用以下代码Intent在Android中启动发送电子邮件.在Android Lollipop(API级别21)之前,这个工作正常.不幸的是,在Android Lollipop中,这会引发"不支持的操作"错误.

Intent intent = new Intent(Intent.ACTION_SENDTO);
intent.setType("message/rfc822");
intent.setData(Uri.parse("mailto:" + email));
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

它非常基本,它只是通过电子邮件地址,让用户选择使用哪个应用程序.

我应该如何调整我的代码以使其在api级别上工作?我的最低API级别是16(JellyBean).

编辑 我已根据评论和答案包含MIME类型.

android android-intent android-5.0-lollipop

2
推荐指数
1
解决办法
1620
查看次数