微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java – 如何发送电子邮件与链接打开Android应用程序

我已经创建了一些代码,将html电子邮件发送给给定的地址.电子邮件包含以下链接
<a href="crystalcloud://android?4567">Click to validate account</a>

我通过将其发送到我的Gmail帐户进行测试.由于某些原因,当我收到电子邮件,它不会让我点击链接.如果我将此链接放在网页中,我的应用程序启动正常.

有没有什么特别的事情要让这个链接显示一个电子邮件,或者gmail只是阻止这些链接?有没有办法在Gmail中解决这个问题?

编辑:添加我的代码片段

代码发送链接

MimeMessage message = new MimeMessage(session);
    message.setFrom(new InternetAddress(from));
    message.addRecipient(Message.RecipientType.TO,new InternetAddress(emailAddress));
    message.setSubject("New Crystal Cloud User");
    message.setContent("Thank you for creating a new Crystal Cloud account!<br><a href=\"crystalcloud://android?4567">Click to validate account</a>","text/html; charset=utf-8");
    Transport transport = session.getTransport("smtp");
    transport.connect(host,from,pass);
    transport.sendMessage(message,message.getAllRecipients());
    transport.close();

Android代码回应意图:

<intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.broWSABLE" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:scheme="crystalcloud" />
        </intent-filter>

解决方法

这是Android电子邮件客户端的问题,除非是http或https,否则他们不会将链接显示为可点击.

我的解决方案是使用http方案打开我的应用程序:

<data android:scheme="http" android:host="com.company.app" android:port="3513" />

这样做有效,但令人讨厌,因为它提示用户在浏览器或应用程序中打开应用程序.另一个解决方案是链接到网站,然后对您的应用程序进行JavaScript重定向,但这可能会导致更多问题.

原文地址:https://www.jb51.cc/android/123633.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐