3

我在 android 原生消息传递中得到什么,每当我们向某人发送消息并且在文本中有一个 url 时,android 会识别它并在其下划线将其显示为链接,它对许多域都这样做,例如 .us、.uk ,.dk,.ch 和所有其他有效。即使我们发送 jhjh.us 时没有“www”或“http”,它也会将其识别为链接。如果域是错误的,它不会做任何事情。

我想要同样的东西,我尝试使用模式

(((https?|ftp|file)://)|(www\\.))"+ "[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]

它做得很好,但在域中它没有帮助。也试过使用URLUtil.isValidUrl()但没用,谁能给我一些关于这个的想法。

4

2 回答 2

2

你可以试试这个

public boolean isURL(String url)
{
        try {
            new URL(url);
            return true;
        } catch (MalformedURLException e) {
            return false;
        }
}
于 2013-01-29T07:22:44.473 回答
2

考虑到您正在使用Class UrlValidator,您可以使用 Use UrlValidator 来验证 URL

 UrlValidator urlValidator = new UrlValidator();
 urlValidator.isValid("http://Test Link!");

您可以设置几个属性来控制此类的行为方式,默认情况下httphttps, 和ftp被接受。

于 2013-01-29T07:26:51.640 回答