我需要通过程序下载一个.apk文件然后启动它的活动。

我使用的代码如下

private String downloadFile(String sourceURL, String destinationPath)

{

try {

URL url = new URL(sourceURL);

URLConnection connection = url.openConnection();

connection.connect();

// download the file

InputStream input = new BufferedInputStream(url.openStream());

OutputStream output = new FileOutputStream(destinationPath);

byte data[] = new byte[1024];

int count;

while ((count = input.read(data)) > 0) {

output.write(data, 0, count);

}

output.flush();

output.close();

input.close();// EDITED here:制作文件rw,否则apk文件将不会被安装

Runtime.getRuntime()。exec(“chmod 666”+ destinationPath);

message = "OK";

}

catch (MalformedURLException e) {

message = "Malformed URL error: " + e.getMessage();

}

catch (ProtocolException e) {

message = "Protocol exception error: " + e.getMessage();

}

catch (FileNotFoundException e) {

message = "File not found error: " + e.getMessage();

}

catch (IOException e) {

e.printStackTrace();

message = "Failed to download the file : " + e.getMessage();

}

return message;

}我提到我先为文本文件调用方法,然后再调用apk文件。因此,每次我在本地处理文件时,我都知道发生了什么问题。通过这种方式,我知道文本文件已正确下载。但.apk文件已损坏。因为我在本地开发,可以访问DDMS和本地主机(IP:10.0.2.2),所以我可以坚信罪魁祸首就是上面的代码。当我通过DDMS与原始.apk文件人为地替换“下载”文件时,所有后续处理都是OK。另外,当我比较原始文件和下载的.apk文件时,我遇到了不同之处。

我究竟做错了什么?

谢谢

PS:搜索,我意识到,虽然是一个流行的问题,但没有一致的答案。就我而言,我将其确定为纯粹的下载方法问题。

android开发下载文件损坏解决方法,Android中已下载的.apk文件已损坏相关推荐

  1. 微信 android 闪退问题怎么解决方法,Android里微信分享时BUG,微信界面闪退

    只是Android版有问题,苹果版可正常分享,帮忙找下原因,谢谢! 微信界面刚加载,就闪退 Android离线打包运行,检测错误如下: 03-13 22:31:01.921: W/System.err ...

  2. android系统锁屏锁怎么解决方法,Android 屏幕锁 - WakeLock

    Android 屏幕锁 - WakeLock Android,powermanager,wakelock,屏幕, PowerManager android.os.PowerManager PowerM ...

  3. android 微信乱码问题怎么解决方法,Android 微信登录昵称乱码问题,及获取微信用户信息...

    微信第三方登录时昵称,username乱码问题解决方法如下: /** * 获取微信用户信息 * @param access_token 调用凭证 * @param openid 普通用户的标识,对当前 ...

  4. PSV、PS4下载慢的解决方法(可以加速下载的DNS)

    谷歌DNS: 8.8.8.8 8.8.4.4 香港DNS: 202.14.67.4 202.14.67.14 韩国DNS: 168.126.63.1 168.126.63.2

  5. Android SDK下载失败的解决方法

    Android SDK下载失败的解决方法 图1 在下载过程中,Android SDK Manager Log中出现下面出错信息: Preparing toinstall archives Downlo ...

  6. 计算机里的文件丢失6,u盘修复后文件丢失解决方法

    相信有很多朋友都遇到过u盘修复后文件丢失的情况,那么修复u盘后文件丢失的话我们要如何解决呢?说实话小编早就在研究修复u盘后文件丢失的问题了!下面win7之家小编就给大家带来u盘修复后文件丢失的解决方法 ...

  7. RAC环境创建本地数据文件的解决方法

    RAC环境创建本地数据文件的解决方法: 思路如下: 1.数据文件 offline 2.通过RMAN 将数据文件拷贝到存储 3.alter database  rename  file 将本地文件路径修 ...

  8. 文件正由另一进程使用,该进程无法访问该文件,解决方法

    文件正由另一进程使用,该进程无法访问该文件,解决方法 参考文章: (1)文件正由另一进程使用,该进程无法访问该文件,解决方法 (2)https://www.cnblogs.com/enjoyprogr ...

  9. vs code下载慢的解决方法

    在官网Visual Studio Code下载时会出现下载缓慢, 解决方法: 复制以上下载链接,将域名(红色框内)修改为vscode.cdn.azure.cn,这样会变成使用国内的镜像,再次访问新地址 ...

  10. linux找不到镜像文件,为什么启动u盘找不到镜像文件_u盘启动找不到映像文件的解决方法...

    现在很多人都喜欢用u盘装系统,可是却有人发现u盘启动找不到iso镜像文件,pe装系统找不到镜像文件是怎么回事呢?相信很多人都遇到过这种情况,那么为什么启动u盘找不到镜像文件呢?其实这是因为U盘只是制作 ...

最新文章

  1. android 请求方式有哪些,Android中的几种网络请求方式详解
  2. 妈呀!GitChat 发布 1.9 版本更新公告,这个红色简直亮瞎了我的眼...
  3. linux文件的定义变量的值,linux $变量含义($0,$1,$2,$#,$@) ----linux 基础
  4. python 3.8.2 / 内置的数据结构 / list (类似于 STL 中的 vector)
  5. linuxHacks中记载的一些小技巧
  6. Bootstrap HTML编码规范之属性顺序
  7. ubuntu 配置ip地址命令
  8. 数据库死锁,导致CPU异常增长
  9. carbon----代码美化工具
  10. gmoj 6841. 【2020.11.5提高组模拟】淘淘蓝蓝之树林
  11. 【Python游戏】Python各大游戏合集(5):塔防游戏、飞机大战、连连看、打地鼠、记忆翻牌 | 附带源码
  12. IDRAC 固件升级操:
  13. 以flv.js框架为基础,替换flv格式视频
  14. 职业讨债人要失业了?人工智能就是这样让人乖乖还钱的…
  15. python ip地址转换_Python实现将IP地址转换为数字
  16. Win10 DISM 清理 C盘的 WinSXS 文件夹
  17. [角谷猜想 || 冰雹猜想]的一些瞎想
  18. 红米k40关闭广告方法分享(图文)
  19. [C#] C#深入浅出4th Edition [2]
  20. itextpdf 怎么下划线_java – 带有粗体和下划线的Itext新字体

热门文章

  1. Tuxedo中间件开发和管理
  2. Cadence Allegro交换元件位置图文教程及视频演示
  3. 《Excel VBA实战技巧精粹》终于登场了
  4. 计算机安装系统说明,电脑操作系统安装方法-详细图解说明-简单安装Windows系统...
  5. 在线小说阅读器app
  6. mysql下载安装安装包_mysql下载安装包及安装步骤
  7. linux手机刷机包制作工具_安卓10刷机包
  8. JavaScript入门到精通,需要掌握的技能盘点
  9. 【工具】VirtualBox装VBoxGuestAdditions增强工具失败解决方法和共享文件夹设置
  10. 《概率论与数理统计》(浙大第四版)第一章总结笔记(纯手写)