Android 检查Uri是否以“开始”;http://quot;或;https://quot;

Android 检查Uri是否以“开始”;http://quot;或;https://quot;,android,uri,startswith,Android,Uri,Startswith,我正在检查字符串是否以“http://”或“https://”开头。我想在开头添加“http://”,因为它们不是。但是, String str = "www.stackoverflow.com" str = "http://" + str; 会导致 str = "http//stackoverflow.com" “”:“中间”不见了。我该怎么办 String str = "www.stackoverflow.com" str = "http://" + str; 上述结果仅与预期一致,即

我正在检查字符串是否以“http://”或“https://”开头。我想在开头添加“http://”,因为它们不是。但是,

String str = "www.stackoverflow.com"
str = "http://" + str;
会导致

str = "http//stackoverflow.com"
“”:“中间”不见了。我该怎么办

String str = "www.stackoverflow.com"
str = "http://" + str;
上述结果仅与预期一致,即“ 你能把你的密码发出来吗?你在那里干什么

我使用“android.webkit.URLUtil”类检查Url。但它也有自己的局限性

我检测到它允许在URL中使用空格

// if url contains http://

 if(url.contains("http://")){
    // Validate URL
    if (!URLUtil.isValidUrl(url)) {

        Toast.makeText(getActivity(),"Invalid URL specified", Toast.LENGTH_SHORT).show();

        return;

         }else{ 

         // Your URL is Ready   

        }                       
         }else{// if url does not contains http://

        url = "http://" + url;  //add it to yur url 

         // Validate URL
        if (!URLUtil.isValidUrl(url)) { 
         Toast.makeText(getActivity(),"Invalid URL specified", Toast.LENGTH_SHORT).show();
             return;
            }else{ 
                    // Your link is ready   

                    }               
        }


我不明白
是怎么丢失的?它不应该。您是否正在尝试剥离www并添加http?
if (URLUtil.isNetworkUrl(requestUrl)) {
           // it means url start with http or https
        }else{
      // do relevant action
     }