【发布时间】:2014-12-12 15:38:06
【问题描述】:
这是我用来验证 URL 是否存在于服务器上的代码,但总是不存在但链接仍然存在
我在代码中出错的地方,为什么我总是得到“不存在!”
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String customURL = "http://www.desicomments.com/dc3/08/273858/273858.jpg";
boolean bResponse = exists(customURL);
if (bResponse==true)
{
Toast.makeText(MainActivity.this, "File exists!", Toast.LENGTH_SHORT).show();
}
else
{
Toast.makeText(MainActivity.this, "File does not exist!", Toast.LENGTH_SHORT).show();
}
}
public static boolean exists(String URLName){
try {
HttpURLConnection.setFollowRedirects(false);
HttpURLConnection con = (HttpURLConnection) new URL(URLName).openConnection();
con.setRequestMethod("HEAD");
return (con.getResponseCode() == HttpURLConnection.HTTP_OK);
}
catch (Exception e) {
e.printStackTrace();
return false;
}
}
}
【问题讨论】:
-
@NaveenTamrakar 尝试仍然得到“不存在!”
-
在exist function HttpURLConnection.setFollowRedirects(false)中去掉这个;
-
只需添加
con.connect()aboutreturn声明.. -
@ashutiwari4 尚未完成
标签: android url android-asynctask thread-safety file-exists