【问题标题】:Issue with Intent.ACTION_SEND in Lotus Notes Traveler AppLotus Notes Traveler 应用程序中的 Intent.ACTION_SEND 问题
【发布时间】:2015-01-16 08:50:57
【问题描述】:

我正在开发一个使用 Intent.ACTION_SEND 发送电子邮件的 Android 应用程序。我正在发送 EXTRA_EMAIL、EXTRA_CC、EXTRA_BCC、EXTRA_SUBJECT。我注意到 Lotus 的问题是,上述参数没有在 Lotus Notes 中填充,而其他电子邮件客户端工作正常。

我知道在Android developers site 中,它明确指出

“或者,您可以为 Intent 设置一些标准附加内容:EXTRA_EMAIL、EXTRA_CC、EXTRA_BCC、EXTRA_SUBJECT。如果接收应用程序不是为使用它们而设计的,它会简单地忽略它们。” p>

但是我找不到任何证据来证明 Lotus Notes Traveler 就是其中之一。

如果有人能提供解决方案,那就太好了……

提前致谢,

嘿咻

【问题讨论】:

  • 看起来你已经证明了这一点。如果它不对这些额外内容做出反应,那么它就不是为了使用它们而设计的。如果 Lotus Notest 在任何地方都有记录,它可能会支持它自己的附加功能。

标签: android android-intent lotus-notes email-client


【解决方案1】:

如果您想测试任何应用程序是否响应特定的意图类型,那么您可以使用adb shell am 命令来完成此操作

例子:

  • 通过指定动作和数据uri发送intent和动作view

    adb shell am start -a "android.intent.action.VIEW" -d "http://developer.android.com"
    
  • 通过指定动作、mime 类型和额外字符串来发送带有动作 sendintent 和额外字符串

    adb shell am start -a "android.intent.action.SEND" --es "android.intent.extra.TEXT" "Hello Android" -t "text/plain"
    

尝试为所需的操作执行此操作并包含所需的附加内容。

【讨论】:

  • 感谢@Praveen 的及时回复。我已经对其进行了测试,并确保 Lotus Notes 侦听 Action_Send 意图。但我的实际问题是它没有预先填充 bcc 和 cc 字段,即使其他意图附加功能工作正常......
  • 如果您得到相同的结果,则使用 adb 从命令行发送密件抄送和抄送附加信息,那么这意味着您的应用程序运行良好,但这是 Lotus 应用程序的问题
【解决方案2】:

感谢您的宝贵时间。我得到了一个同样适用于 Lotus Notes Traveler 的解决方案。对于this stackoverflow 问题,我使用了 becomputer06 提供的解决方案。

在这里……

StringBuffer buffer = new StringBuffer();
    buffer.append("mailto:");
    buffer.append("stackoverflow@stackoverflow.com");
    buffer.append("?subject=");
    buffer.append("App Name");
    buffer.append("&body=");
    String uriString = buffer.toString().replace(" ", "%20");

    startActivity(Intent.createChooser(new Intent(Intent.ACTION_SENDTO, Uri.parse(uriString)), 

它使用 URI 方案来发送数据,并且所有字段都被填充...

感谢和问候,

嘿咻

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多