【问题标题】:How to get last modified date from apk file on server如何从服务器上的 apk 文件中获取上次修改日期
【发布时间】:2016-04-07 08:58:03
【问题描述】:

我试图从我服务器上的 apk 文件中获取最后修改日期,一旦我尝试获取标头,它就会以某种方式失败。

我可以正常下载文件

try {
            HttpURLConnection.setFollowRedirects(false);
            HttpURLConnection con =  (HttpURLConnection) new URL(params[0]).openConnection();

            con.setRequestMethod("HEAD");
            return (con.getResponseCode() == HttpURLConnection.HTTP_OK);
        } // do some more not relevant

但是一旦我尝试从服务器获取标头,它就会失败

            URL obj = new URL(customURL);
            URLConnection conn = obj.openConnection();
            Map<String, List<String>> map = conn.getHeaderFields();
for (Map.Entry<String, List<String>> entry : map.entrySet()) {
                System.out.println("Key : " + entry.getKey()
                        + " ,Value : " + entry.getValue());
                Toast.makeText(getApplicationContext(),"Key: "+entry.getKey() + "Value: " + entry.getValue(),Toast.LENGTH_SHORT).show();
            }

我已经尝试过这个,但也使用已经存在的连接并只使用 con .. 但它都以某种方式失败了

任何帮助都会非常好

【问题讨论】:

  • 稍后在程序中我什至可以获取文件的大小。 totalSize = urlConnection.getContentLength();但我只想要修改日期

标签: android apk httpconnection


【解决方案1】:

试试这个可能会有帮助,

长日期 = con.getLastModified();

 HttpURLConnection.setFollowRedirects(false);
 HttpURLConnection con = (HttpURLConnection) new URL(fileUrl).openConnection();
 long date = con.getLastModified();

  if (date == 0)
    System.out.println("No last-modified information.");
  else
    System.out.println("Last-Modified: " + new Date(date));
return date

供参考, http://developer.android.com/reference/java/net/URLConnection.html#getLastModified%28%29

【讨论】:

  • 在我的 setrequestmethod 之前添加了这段代码。但我的程序仍然失败,然后返回 false。我已经检查了我的退货标题,他们确实这样做了。 (用邮递员测试)
【解决方案2】:

我发现我犯的错误是在异步任务中运行它,然后尝试在 Toast 中查看结果。

我将它放入 runOnUiThread 后它就开始运行

final long date = urlConnection.getLastModified();

        runOnUiThread(new Runnable() {
            public void run() {
                Toast.makeText(getApplicationContext(),"GGG"+ date,Toast.LENGTH_SHORT).show();
            }
        });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-21
    • 2020-09-30
    相关资源
    最近更新 更多