
1.用 UC 来下载安装,但这样就要求客户要用 UC 才可下载及安装我们的系统
2.叫用户自己在 android 在桌面上,打开文件夹, 则该 apk 点击时即可安装
问题:某些 android 自带浏览器 , 可能 对下载的 apk 安装进行了限制。 我想通过自己办法,例如修改 apk 或者加某些编译参数,能否解决这种安装的兼容问题
解决方法:(1). 在IIS服务器上,MIME类型中添加一个:
文件扩展名: .apk
MIME类型: application/vnd.android.package-archive
(2). 服务端部署在tomcat下,已经在tomcat的web.xml里面配置了mini type
<mime-mapping>
<extension>apk</extension>
<mime-type>application/vnd.android.package-archive</mime-type>
</mime-mapping>
按照以上方法,解决了三星手机的下载后,apk无法打开直接安装的问题,同时却发现华为的一款手机使用默认的浏览器下载后仍然无法打开安装,经过多番测试,发现在android的AndroidManifest.xml中,如果缺少targetSdkVersion,华为手机通过默认浏览器下载后无法安装,加上之后一切正常(可见对于不同的android系统是多么的让人纠结啊)
<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="8"/>
最后我PS一下:
如果的后台程序使用的是流处理的文件下载请求,则需要设置一下contentType为application/vnd.android.package-archive才行 ,否则依旧无法识别。
从tomcat下载文件的配置有几种,以下是常用的设置方式:
创建虚拟目录
首先停止Tomcat服务。打开tomcat里找到conf这个文件夹下的server.xml文件,在里面找到</Host>在上面 加上这样的一段:
<Context path="" docBase="d:/download" crossContext="false" debug="0" reloadable="true"></Context>
然后把tomcat启动一下就OK
在tomcat首页中显示根目录下的文件列表
是否显示文件列表,可以在tomcat/conf/web.xml里配置,把 <init-param>
<param-name>listings</param-name><param-value>false</param-value> </init-param>里的<param-value>false</param-value>改成<param-value>ture</param-value>即可显示。 默认的是false 。
增加新的文件类型
打开tomcat/conf/web.xml文件,添加.cfg和.Ini的文件类型。 <mime-mapping>
<extension>cfg</extension>
<mime-type>application/octet-stream</mime-type>
</mime-mapping> <mime-mapping>
<extension>ini</extension>
<mime-type>application/octet-stream</mime-type>
</mime-mapping>
以上内容都设置好后,重新启动tomcat服务 进入测试。
打开IE,在地址栏中输入http://localhost:你的tomcat端口,在IE中列出虚拟目录d:\download下的文件列表,双击某个文件或右键选择“目标另存为”就可以下载文件了。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)