PHP下载APK文件(代码如下)

    /**
* //这里不要随便打印文字,否则会影响输出的文件的
* (例如下载没问题,但是apk安装时候提醒解析安装包错误)
* @return array
*/
public function donwApkFile(){
//http://dc.lizhanqi.top/index/Apks/donwApkFile
$path = "E:/素玄文件/app历史版本/";
//$file_name = request()->param("filename");
$file_name = "素玄E.apk"; //下载文件名
//中文需要转码
$fileAdd = iconv('UTF-8', 'GB2312', $path . $file_name);
//检查文件是否存在
if (!file_exists($fileAdd) || !explode(".apks", $fileAdd) || !is_file($fileAdd)) {
Config::set("default_return_type", "json");
$rersout = ['Msg' => '文件不存在', 'code' => 100, 'Data' => ""];
return $rersout;
} else {
//告诉浏览器这是一个文件流格式的文件(app)
Header("Content-type: application/vnd.android.package-archive");
//用来告诉浏览器,文件是可以当做附件被下载,下载后的文件名称为$file_name该变量的值。
header('Content-disposition: attachment; filename=' . iconv('UTF-8', 'GB2312', $file_name)); //文件名
header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-Transfer-Encoding: binary"); //告诉浏览器,这是二进制文件
//这里会告诉请求方,文件大小
header('Content-Length: ' . filesize($fileAdd)); //告诉浏览器,文件大小
//读取文件内容并直接输出到浏览器
@readfile($fileAdd);
exit ();
}
}

PHP下载APK文件的更多相关文章

  1. 下载apk文件浏览器会直接打开并显示乱码的问题

    今天同事反映他的apk文件在自己的老项目中下载有问题:下载apk文件浏览器会直接打开并显示乱码,在别的项目中就没有问题. 后分析response的content-type发现,老项目的类型是text/ ...

  2. Android项目实战(三十一):异步下载apk文件并安装(非静默安装)

    前言: 实现异步下载apk文件 并 安装.(进度条对话框显示下载进度的展现方式) 涉及技术点: 1.ProgressDialog   进度条对话框  用于显示下载进度 2.AsyncTask     ...

  3. IIS不能下载.apk文件

    IIS服务器不能下载.apk文件的原因:iis的默认MIME类型中没有.apk文件,所以无法下载. 打开IIS服务管理器,找到服务器,右键-属性,打开IIS服务属性: 单击MIME类型下的“MIME类 ...

  4. IIS 服务器支持下载apk 文件

    前不久,在本地IIS文件下部署一个网站,可以下载apk文件,就是测试apk应用升级,发现访问不能下载,原因是IIS没有配置对这种apk文件的处理程序. 解决方案如下所示: 1.打开IIS, 找到MIM ...

  5. nginx转发tomcat请求转成https后页面不能下载apk文件而是直接打开

    访问域名下面的apk文件 https://xxxx/xxx.apk 浏览器没有下载而是直接打开了文件 没有找到问题原因,可能是https的原因,要是用http就可以下载,转发https就有问题 后来是 ...

  6. Debian Nginx 下载 .apk 文件时候报 403 错误 [1]

    一.版本介绍 Degian : 8 jessie Nginx  : 1.6.2 发生时间 : 2018-12-15 二.问题说明 客户浏览器访问Nginx的公开目录中放入了一个.apk文件,公开目录可 ...

  7. 微信浏览器无法下载APK文件的解决方案

    大家是不是经常会遇到微信内点击链接或扫描二维码无法打开指定网页的问题?只要你使用微信转发分享,相信你就一定会遇到,那么打不开的原因很简单了,就是被微信拦截了.这个问题我们只需要实现从微信内直接跳出到外 ...

  8. NetCore2.0无法下载apk文件 IIS设置

    把apk 文件放到网站的wwwroot目录 1.IIS设置MIME类型添加.apk, MIME类型:application/vnd.android.package-archive 2.然后StarUp ...

  9. PHP 下载apk文件

    方式一.public function downApkFile(){ $path = Env::get('root_path')."apk/"; //路径 $file_name = ...

随机推荐

  1. HUAS 1483 mex(莫队算法)

    考虑莫队算法,对于区间减小的情况,可以O(1)解决.对于区间增加的情况,可能需要O(n)解决.好在数据不卡莫队. 1200ms过了. 离线+线段树 760ms过了. # include <cst ...

  2. BZOJ2151 种树(贪心+堆+链表/wqs二分+动态规划)

    dp容易想到,但没法进一步优化了. 考虑贪心,每次选出价值最大的物品.但这显然是不对的因为会影响其他物品的选择. 于是考虑加上反悔操作.每次选出一个物品后,将其相邻两物品删除,再将原物品价值变为相邻两 ...

  3. 转:Conjugate prior-共轭先验的解释

    Conjugate prior-共轭先验的解释    原文:http://blog.csdn.net/polly_yang/article/details/8250161 一 问题来源: 看PRML第 ...

  4. PyTorch为何如此高效好用?

    C/C++中 Python 扩展对象的简介 你可能知道可以借助 C/C++扩展 Python,并开发所谓的「扩展」.PyTorch 的所有繁重工作由 C/C++实现,而不是纯 Python.为了定义 ...

  5. apply的理解和数组降维

    func.apply(thisObj, [argArray] ); apply方法用来改变函数执行时的this指向,后面的参数是一个类数组对象,可以是数组,arguments,甚至一个有length属 ...

  6. 【状压DP】【P2831】【NOIP2016D2T3】愤怒的小鸟

    传送门 Description Kiana 最近沉迷于一款神奇的游戏无法自拔. 简单来说,这款游戏是在一个平面上进行的. 有一架弹弓位于 $(0,0)$ 处,每次 Kiana 可以用它向第一象限发射一 ...

  7. [codeforces/edu4]总结(F)

    链接:http://codeforces.com/contest/612/ A题: 枚举切多少个p,看剩下的能否整除q. B题: 从1到n模拟一下,累加移动的距离. C题: 先用括号匹配的思路看是否有 ...

  8. [samba]samba设置指定用户权限

    步骤: 1.在系统中添加用户 批量添加用户和密码的方法(因为samba用户要求必须在系统中存在): for name in a b c d;do useradd $name ; echo " ...

  9. sql 语句 插入数据 返回值问题

    1. 主键ID 自增 ,插入数据后返回这条数据的ID值 insert into tableName() values() select @@identity 2.主键ID 使用GUID类型值 ,插入数 ...

  10. Kubernetes - Getting Started With Kubeadm

    In this scenario you'll learn how to bootstrap a Kubernetes cluster using Kubeadm. Kubeadm solves th ...