android-从自己的Web服务器下载APK

我在从自己的网络服务器下载Android应用程序时遇到问题.

首先,我使用Java脚本发送了html内容,要求Android手机打开我的下载链接

<html>
    <head>
        <script>
            window.onload=function()
            {{
                window.location = "downloadURL";
            }}
        </script>
    </head>
</html>"

Android手机维修此Java脚本将打开downloadURL

在服务器端,我正在使用.Net ASP

我已经设置了MIME内容

Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.ContentType = "application/vnd.android.package-archive";
Response.AppendHeader("Content-disposition", "attachment; filename=" + "MyApp.apk");
Response.AppendHeader("Content-Length", "" + response.Application.Bytes.Length);
Response.BinaryWrite(response.Application.Bytes);

apk文件为MyApp.apk约为1.5MB

但是,当我使用Android模拟器下载该应用程序时,文件大小仅为4.25 KB,并且名称不是MyApp.apk.它包含我的下载链接名称.

当我使用Firefox下载我的应用程序时,Firefox成功下载了具有正确名称和大小的应用程序.

请帮帮我!!
谢谢

当我调试服务器时,服务器确实发送了应用字节

Response.BinaryWrite(response.Application.Bytes);

我不明白为什么,andorid仿真器无法接收,似乎从html内容创建了自己的apk文件.

解决方法:

终于我解决了问题.

假设Firefox根据我的下载链接发送了一个http请求.

但是Android模拟器会根据我的下载链接发送两个http请求

我必须忽略第一个请求.

我花了几个小时才弄清楚.

希望这些信息可以帮助其他人

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...