下载Android程序时候apk程序包后缀被修改成zip的解决方法
2011-12-26 16:00
399 查看
参考 http://hi.baidu.com/zdz8207/blog/item/3d8e3929774997e798250a03.html
APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,Dex是Dalvik VM executes的全称,即Android Dalvik执行程序,并非Java ME的字节码而是Dalvik字节码。
由于APK文件本身就是压缩包,如果用户的电脑上装了WinRAR(85%的装机量),用IE下载APK文件,扩展名就会被自动改为“.zip”。
如果你的下载服务器为Nginx服务器,那么,在Nginx安装目录下的conf/mime.types文件的对应位置,加上以下一行语句,指定APK文件的MIME类型为 application/vnd.android.package-archive 即可:
application/vnd.android.package-archive apk;
注意:上面的配置只是在nginx那层好了,但如果你是用nginx+tomcat的方式,在ie下还是会变成zip的
还需要在tomcat里面配置conf/web.xml 里指定了apk类型
<mime-mapping>
<extension>apk</extension>
<mime-type>application/vnd.android.package-archive</mime-type>
</mime-mapping>
注意:重新测试的时候必须关闭ie浏览器 重新启动一个才能生效(关闭tab标签栏的不起作用)
=================================================
很多用户反映,网站上提供的Android手机应用程序文件“xxx.apk”,用IE浏览器下载,扩展名就被自动被重命名成了“xxx.zip”,拷贝到手机上无法安装。我发现,由于APK文件本身就是压缩包,如果用户的电脑上装了WinRAR(85%的装机量),用IE下载APK文件,扩展名就会被自动改为“.zip”。
如果你的下载服务器为Nginx服务器,那么,在Nginx安装目录下的conf/mime.types文件的对应位置,加上以下一行语句,指定APK文件的MIME类型为 application/vnd.android.package-archive 即可:
application/vnd.android.package-archive apk;
截至本文发布时,存在“xxx.apk”下载时被自动重命名为“xxx.zip”问题的网站很多,其中不乏一些提供 Android 程序下载的知名网站,例如:新浪微博、街旁网。
新浪微博官方 Android 手机客户端下载页:http://t.sina.com.cn/mobile/android.php
下面是各种文件名后缀在nginx的mime.types中的配置:
text/vnd.sun.j2me.app-descriptor jad;
application/java-archive jar war ear;
application/x-java-archive-diff jardiff;
application/vnd.android.package-archive apk;
application/vnd.ms-cab-compressed cab;
application/octet-stream bin exe dll;
application/vnd.symbian.install sis;
x-epoc/x-sisx-app sisx;
application/iphone pxl ipa;
application/vnd.palm prc pdb;
application/vnd.webos.ipk ipk;
application/vnd.rim.cod cod;
application/mrp mrp;
x-nokia-widget wgz;
application/octet-stream deb;
另外公司会有isa防火墙,如果在这个防火墙后面下载,目前测试情况下来还是会被修改为zip包的
APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,Dex是Dalvik VM executes的全称,即Android Dalvik执行程序,并非Java ME的字节码而是Dalvik字节码。
由于APK文件本身就是压缩包,如果用户的电脑上装了WinRAR(85%的装机量),用IE下载APK文件,扩展名就会被自动改为“.zip”。
如果你的下载服务器为Nginx服务器,那么,在Nginx安装目录下的conf/mime.types文件的对应位置,加上以下一行语句,指定APK文件的MIME类型为 application/vnd.android.package-archive 即可:
application/vnd.android.package-archive apk;
注意:上面的配置只是在nginx那层好了,但如果你是用nginx+tomcat的方式,在ie下还是会变成zip的
还需要在tomcat里面配置conf/web.xml 里指定了apk类型
<mime-mapping>
<extension>apk</extension>
<mime-type>application/vnd.android.package-archive</mime-type>
</mime-mapping>
注意:重新测试的时候必须关闭ie浏览器 重新启动一个才能生效(关闭tab标签栏的不起作用)
=================================================
很多用户反映,网站上提供的Android手机应用程序文件“xxx.apk”,用IE浏览器下载,扩展名就被自动被重命名成了“xxx.zip”,拷贝到手机上无法安装。我发现,由于APK文件本身就是压缩包,如果用户的电脑上装了WinRAR(85%的装机量),用IE下载APK文件,扩展名就会被自动改为“.zip”。
如果你的下载服务器为Nginx服务器,那么,在Nginx安装目录下的conf/mime.types文件的对应位置,加上以下一行语句,指定APK文件的MIME类型为 application/vnd.android.package-archive 即可:
application/vnd.android.package-archive apk;
截至本文发布时,存在“xxx.apk”下载时被自动重命名为“xxx.zip”问题的网站很多,其中不乏一些提供 Android 程序下载的知名网站,例如:新浪微博、街旁网。
新浪微博官方 Android 手机客户端下载页:http://t.sina.com.cn/mobile/android.php
下面是各种文件名后缀在nginx的mime.types中的配置:
text/vnd.sun.j2me.app-descriptor jad;
application/java-archive jar war ear;
application/x-java-archive-diff jardiff;
application/vnd.android.package-archive apk;
application/vnd.ms-cab-compressed cab;
application/octet-stream bin exe dll;
application/vnd.symbian.install sis;
x-epoc/x-sisx-app sisx;
application/iphone pxl ipa;
application/vnd.palm prc pdb;
application/vnd.webos.ipk ipk;
application/vnd.rim.cod cod;
application/mrp mrp;
x-nokia-widget wgz;
application/octet-stream deb;
另外公司会有isa防火墙,如果在这个防火墙后面下载,目前测试情况下来还是会被修改为zip包的
相关文章推荐
- 解决IE下载 apk/ipa 变成zip:Android 手机应用程序文件下载服务器 配置解决方法
- 解决IE apk变成zip:Android 手机应用程序文件下载服务器Nginx+Tomcat配置解决方法
- android 打包 apk的时候发生"xxx" is not translated in "zh" 的解决方法
- nginx服务器在IE下载时,apk,ipa文件变成zip的解决方法
- android 中向手机端安装apk 的时候报出 INSTALL_FAILED_INSUFFICIENT_STORAGE 错误的解决方法
- nginx建立的网站客户端点击下载docx的文档的时候能.zip的文件的解决方法
- 解决IE浏览器下下载apk文件变成zip的方法
- 解决Android安装文件apk下载变成zip文件
- android 中向手机端安装apk 的时候报出 INSTALL_FAILED_INSUFFICIENT_STORAGE 错误的解决方法
- 解决ie下载apk后更改后缀名为.zip的问题
- 解决IE apk变成zip:Android 手机应用程序文件下载服务器 配置解决方法
- Android 打包APK或运行时DexPathList[zip file"system"]的时候遇到解决办法
- android 退出程序关闭死循环线程的一种方法(开源中国客户端下载APK疑问总结)
- 解决ie下载apk后更改后缀名为.zip的问题
- android 中向手机端安装apk 的时候报出 INSTALL_FAILED_INSUFFICIENT_STORAGE 错误的解决方法
- nginx服务器在IE下载时,apk文件变成zip的解决方法(转)
- android 开发 程序中下载安装APK文件 问题汇总 解析程序包时出现问题
- 解决Android安装文件apk下载变成zip文件
- 允许IIS下载无后缀文件及“请求的内容似乎是脚本,因而将无法由静态文件处理程序来处理。”的解决方法
- android做应用更新时,apk放到服务器,但无法下载的解决方法