从服务器下载APK并将其安装到设备 [英] Downloading APK from server and installing it to device

查看:165
本文介绍了从服务器下载APK并将其安装到设备的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在从服务器以字符串格式下载APK,将其转换为字节数组并在SD卡中创建apk文件.到目前为止没有任何问题,如果我尝试安装相同的apk,则会显示类似

I'm downloading APK from server in string format, converting that to byte array and creating apk file in SD card. There is no issues upto this, if i try to install the same apk it showing an alert (parse error) message like

解析程序包时出现问题.

There is a problem parsing the package.

和logcat

01-13 12:06:51.562:W/PackageParser(4364):无法读取/mnt/sdcard/example.apk的AndroidManifest.xml.
01-13 12:06:51.562:W/PackageParser(4364):java.io.FileNotFoundException:AndroidManifest.xml
01-13 12:06:51.562:W/PackageParser(4364):在android.content.res.AssetManager.openXmlAssetNative(本机方法)
01-13 12:06:51.562:W/PackageParser(4364):位于android.content.res.AssetManager.openXmlBlockAsset(AssetManager.java:486)
01-13 12:06:51.562:W/PackageParser(4364):位于android.content.res.AssetManager.openXmlResourceParser(AssetManager.java:454)
01-13 12:06:51.562:W/PackageParser(4364):位于android.content.pm.PackageParser.parsePackage(PackageParser.java:401)
................................................... ...........
01-13 12:06:51.562:W/PackageParser(4364):在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
01-13 12:06:51.562:W/PackageParser(4364):在dalvik.system.NativeStart.main(本机方法)
01-13 12:06:51.562:W/PackageInstaller(4364):解析清单时解析错误停止安装

01-13 12:06:51.562: W/PackageParser(4364): Unable to read AndroidManifest.xml of /mnt/sdcard/example.apk
01-13 12:06:51.562: W/PackageParser(4364): java.io.FileNotFoundException: AndroidManifest.xml
01-13 12:06:51.562: W/PackageParser(4364): at android.content.res.AssetManager.openXmlAssetNative(Native Method)
01-13 12:06:51.562: W/PackageParser(4364): at android.content.res.AssetManager.openXmlBlockAsset(AssetManager.java:486)
01-13 12:06:51.562: W/PackageParser(4364): at android.content.res.AssetManager.openXmlResourceParser(AssetManager.java:454)
01-13 12:06:51.562: W/PackageParser(4364): at android.content.pm.PackageParser.parsePackage(PackageParser.java:401)
.............................................................
01-13 12:06:51.562: W/PackageParser(4364): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
01-13 12:06:51.562: W/PackageParser(4364): at dalvik.system.NativeStart.main(Native Method)
01-13 12:06:51.562: W/PackageInstaller(4364): Parse error when parsing manifest. Discontinuing installation

任何想法,我做错了什么,或任何其他方法来解决这个问题.

any idea what i did wrong, or any other method to solve this.

推荐答案

如果您使用的是API级别9或更高级别,我认为最好使用

If you are using API level 9 or more, I think it is better to use DownloadManager to download your apk . So that Android will take care of downloading the file for you.

这篇关于从服务器下载APK并将其安装到设备的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆