Java/Android获取网络重定向文件的真实URL的示例代码

  

<强>前言:

  

今天在测试使用第三方提供的URL进行文件下载的时候,得到了一个被重定向的URL。很不幸的是这个URL对于我来说没办法进行文件下载。这时候就需要获得重定向文件的真实URL。

  

<强>问题分析:

  

其实Java使用HttpURLConnection下载的的时候,会自动下载重定向后的文件,但是我们无法获知目标文件的真实文件名,文件类型,用下面的方法可以得到真实的URL

  

<>强解决方案:

  

需要注意的是在Android 4.0之后网络请求不能在主线程执行

        新线程(新Runnable () {   @Override   公共空间run () {   字符串str=" http://118.31.73.173:8080/磁铁/play.m3u8& # 63;代码=4459 d2600da1379a9b06967edf518c05f0c9b43177cf28d9a70070264c228693e3888b2ab265521e01e6034c807bebdf02da4ebbf208065fd4b2d0062a3e3d83abe2c0659500dc168a9c0ba6a9098320ee4040ce57e7c57d9e1ec3f03900f631c84df0e6f38669d73ad6102fd0169b2907c3707cc2b71f5de6d789”;   网址URL=零;   尝试{   url=new url (str);   HttpURLConnection康涅狄格州=(HttpURLConnection) url.openConnection ();   conn.getResponseCode ();   最终字符串realUrl=conn.getURL () .toString ();   conn.disconnect ();   日志。e(“自闭症”、“真实URL:”+ realUrl);   }捕捉(MalformedURLException e) {   e.printStackTrace ();   }捕捉(IOException e) {   e.printStackTrace ();   }   }   }) .start ();      

最后不要忘了添加网络权限

        & lt; uses-permission android: name=" android.permission.INTERNET "/祝辞      

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

Java/Android获取网络重定向文件的真实URL的示例代码