Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 下载后安装应用程序:`有一个p‌;r‌;o‌;b&x200C;l‌;e&x200C;我正在分析这个包`_Android_Eclipse_Apk_Sign - Fatal编程技术网

Android 下载后安装应用程序:`有一个p‌;r‌;o‌;b&x200C;l‌;e&x200C;我正在分析这个包`

Android 下载后安装应用程序:`有一个p‌;r‌;o‌;b&x200C;l‌;e&x200C;我正在分析这个包`,android,eclipse,apk,sign,Android,Eclipse,Apk,Sign,我正在尝试从应用程序下载安装.apk文件。以下是三种不同的情况: 1。通过adb从Eclipse到平板电脑运行应用程序没有问题 2。从Eclipse签名并导出通过USB将.apk文件传输到平板电脑安装并运行应用程序无问题 3.从Eclipse签名并导出(与2中的文件相同)将.apk文件上载到服务器从应用程序下载.apk文件尝试安装“解析包时出现问题” 下载应用程序的代码: private class DownloadFile extends AsyncTask<String, Intege

我正在尝试从应用程序下载安装.apk文件。以下是三种不同的情况:

1。通过adb从Eclipse到平板电脑运行应用程序没有问题
2。从Eclipse签名并导出通过USB将.apk文件传输到平板电脑安装并运行应用程序无问题
3.从Eclipse签名并导出(与2中的文件相同)将.apk文件上载到服务器从应用程序下载.apk文件尝试安装“解析包时出现问题”

下载应用程序的代码:

private class DownloadFile extends AsyncTask<String, Integer, String> {
    @Override
    protected String doInBackground(String... sUrl) {
        try {
            URL url = new URL(sUrl[0]);
            URLConnection connection = url.openConnection();
            connection.connect();
            // this will be useful so that you can show a typical 0-100% progress bar
            int fileLength = connection.getContentLength();

            // download the file
            InputStream input = new BufferedInputStream(url.openStream());
            OutputStream output = new FileOutputStream(Environment.getExternalStorageDirectory() + File.separator + "Download" + File.separator + "Design102.apk");

            byte data[] = new byte[1024];
            long total = 0;
            int count;
            while ((count = input.read(data)) != -1) {
                total += count;
                // publishing the progress....
                publishProgress((int) (total * 100 / fileLength));
                output.write(data, 0, count);
            }
            output.flush();
            output.close();
            input.close();

        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
}
私有类下载文件扩展异步任务{
@凌驾
受保护的字符串背景(字符串…sUrl){
试一试{
URL=新URL(sUrl[0]);
URLConnection=url.openConnection();
connection.connect();
//这将非常有用,以便您可以显示典型的0-100%进度条
int fileLength=connection.getContentLength();
//下载该文件
InputStream输入=新的BufferedInputStream(url.openStream());
OutputStream output=新文件OutputStream(Environment.getExternalStorageDirectory()+File.separator+“Download”+File.separator+“Design102.apk”);
字节数据[]=新字节[1024];
长总计=0;
整数计数;
而((计数=输入。读取(数据))!=-1){
总数+=计数;
//发布进度。。。。
出版进度((整数)(总计*100/文件长度));
输出.写入(数据,0,计数);
}
output.flush();
output.close();
input.close();
}捕获(例外e){
e、 printStackTrace();
}
返回null;
}
}

下载相同的.apk文件后,为什么会出现“解析包时出现问题”错误?

以下小修改修复了我的问题:

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

如果卸载该应用程序,然后从市场上重新安装,会发生什么情况?它不在市场上。好的。下载完成后,当您试图安装它时,它是否已经安装?是的,我收到错误“解析包时出现问题”。但是,如果我通过USB传输相同的.apk文件而不是下载它,我可以安装它。在原始文件和下载的文件之间做一点区分。我有一种感觉,他们将不一样