【问题标题】:Email link not working on Android电子邮件链接在 Android 上不起作用
【发布时间】:2013-08-05 10:03:08
【问题描述】:

我有 HTML 格式的点击电子邮件链接的代码,它在我的电脑上运行良好,但在移动设备上无法运行(我只有 Android,所以我不知道问题是仅在 Android 上还是在所有移动设备)。当我按下链接时,浏览器会说:

网页不可用。 "mailto:ar1speed@yahoo.com?subject=Mileage%20%20%20&body="Todays%20date:%0D%0ABusiness%20Mileage:%0D%0ADid%20you%20have%20a%20business%20passenger?%0D%0AAdditional %20details:" 可能暂时关闭或已永久移至新网址。

谁能告诉我如何解决这个问题,点击发送电子邮件链接的工作至关重要。

我的代码如下:

<p>
   <a href="mailto:ar1speed@yahoo.com?subject=Mileage&body="Todays date:%0D%0ABusiness Mileage:%0D%0ADid you have a business passenger%0D%0AAdditional details:">
       Click to send email
   </a>
</p>

【问题讨论】:

    标签: android html email hyperlink


    【解决方案1】:

    您的应用程序需要访问与邮件相关的应用程序。这可以实现 通过在

    中添加以下代码

    config.xml

    <access origin="mailto://*" launch-external="true" /> 
    

    然后就可以了

    【讨论】:

      【解决方案2】:

      使用此代码在移动设备中调用邮件应用程序并设置电子邮件的主题和正文。

      Intent emailIntent = new Intent(Intent.ACTION_SENDTO);
      emailIntent.setData(Uri.parse("mailto:yourmailid@somedomain.com"));
      emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Subject");
      emailIntent.putExtra(Intent.EXTRA_TEXT, "Body");
      
                      try {
                          startActivity(emailIntent);
                      } catch (ActivityNotFoundException e) {
                          Toast.makeText("No email client found",
                                  Toast.LENGTH_LONG).show();
                      }
      

      参考Send Email Intent 举例

      【讨论】:

        【解决方案3】:

        那是issue with Android OS:

        问题 63538:Mailto 链接解析不正确,完全输入到地址字段中

        已确认设备:Nexus 4(测试了两台设备)
        Android 版本:仅限 4.4.2(在 4.3 和 4.4.0 中测试)

        错误详情:

        Mailto 链接完全输入到地址字段中,而不是被解析为地址、主题和正文。附上显示问题的屏幕截图。

        【讨论】:

          【解决方案4】:

          这是一个mailto 的示例,它在移动设备上运行良好,所以您一定只是错误地形成了您的网址(检查您的“”)。

          MAILTO Link in email to start a new email

          【讨论】:

          • 我必须从链接中更改它吗?另外,我是否只需将其粘贴到我的代码中代替我的电子邮件链接代码以使其正常工作?
          • 换个按钮可能更简单,只需将上面的代码放在OnClick()方法中即可。
          • @user2627595 等等,我误会了。更新了答案。
          • @user2627595 我的旧代码假设您是从 Android 应用程序内部执行此操作(我的错误)。
          猜你喜欢
          • 1970-01-01
          • 2022-01-09
          • 2014-06-11
          • 1970-01-01
          • 2013-07-12
          • 2011-03-26
          • 2016-12-04
          • 1970-01-01
          • 2019-05-29
          相关资源
          最近更新 更多