php自定义apk安装包实例


Posted in PHP onOctober 20, 2014

本文实例讲述了php自定义apk安装包的方法,分享给大家供大家参考。具体实现方法如下:

众所周知,apk格式安装文件是android智能系统的安装文件,下面我们来看一个利用php实现自定义apk安装包实例。

一、需求:

需要实现对产品进行一次推荐好友安装的活动,每个会员下载自己的专属安装包(里面记录会员的相关信息)。

二、思路:

经过了解,发现apk安装包原来只是zip的一个马甲,使用php的ZipArchive类可以对文件进行操作。

三、实现代码:

// 源文件

$apk    = "gb.apk";

// 生成临时文件

$file   = tempnam("tmp", "zip");

// 复制文件

if(false===file_put_contents($file, file_get_contents($apk))){

    exit('copy faild!');

}

// 打开临时文件

$zip    = new ZipArchive();

$zip->open($file); 

// 添加文件

// 由于apk限定只能修改此目录内的文件,否则会报无效apk包

$zip->addFromString('META-INF/extends.json', json_encode(array('author'=>'deeka')));

// 关闭zip

$zip->close();

// 下载文件

header("Content-Type: application/zip"); 

header("Content-Length: " . filesize($file)); 

header("Content-Disposition: attachment; filename=\"{$apk}\""); 

// 输出二进制流

readfile($file);

// 删除临时文件

unlink($file);

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
PHP+.htaccess实现全站静态HTML文件GZIP压缩传输(一)
Feb 15 PHP
PHP5+UTF8多文件上传类
Oct 17 PHP
php中sql注入漏洞示例 sql注入漏洞修复
Jan 24 PHP
PHP5.3与5.5废弃与过期函数整理汇总
Jul 10 PHP
php筛选不存在的图片资源
Apr 28 PHP
PHP生成plist数据的方法
Jun 16 PHP
php实现的验证码文件类实例
Jun 18 PHP
php常用图片处理类
Mar 16 PHP
PHP记录和读取JSON格式日志文件
Jul 07 PHP
php版微信支付api.mch.weixin.qq.com域名解析慢原因与解决方法
Oct 12 PHP
浅析PHP7的多进程及实例源码
Apr 14 PHP
php-7.3.6 编译安装过程
Feb 11 PHP
php防止站外远程提交表单的方法
Oct 20 #PHP
php获取textarea的值并处理回车换行的方法
Oct 20 #PHP
php实现给图片加灰色半透明效果的方法
Oct 20 #PHP
PHP清除数组中所有字符串两端空格的方法
Oct 20 #PHP
PHP启动windows应用程序、执行bat批处理、执行cmd命令的方法(exec、system函数详解)
Oct 20 #PHP
php实现删除指定目录下相关文件的方法
Oct 20 #PHP
PHP中加密解密函数与DES加密解密实例
Oct 17 #PHP
You might like
BBS(php & mysql)完整版(四)
2006/10/09 PHP
php面象对象数据库操作类实例
2014/12/02 PHP
php读取csv数据保存到数组的方法
2015/01/03 PHP
php单例模式实现方法分析
2015/03/14 PHP
php多重接口的实现方法
2015/06/20 PHP
Thinkphp框架中D方法与M方法的区别
2016/12/23 PHP
解决laravel-admin 自己新建页面里 js 需要刷新一次的问题
2019/10/03 PHP
javascript Demo模态窗口
2009/12/06 Javascript
JavaScript中的匀速运动和变速(缓冲)运动详细介绍
2012/11/11 Javascript
js控制当再次点击按钮时的间隔时间
2014/06/03 Javascript
javascript中in运算符用法分析
2015/04/28 Javascript
基于JavaScript怎么实现让歌词滚动播放
2015/11/03 Javascript
JavaScript实现带缓冲效果的随屏滚动漂浮广告代码
2015/11/06 Javascript
JQuery中attr属性和jQuery.data()学习笔记【必看】
2016/05/18 Javascript
vue-router 学习快速入门
2017/03/01 Javascript
JS检测window.open打开的窗口是否关闭
2017/06/25 Javascript
总结js中的一些兼容性易错的问题
2017/12/18 Javascript
简单的Vue SSR的示例代码
2018/01/12 Javascript
详解Vue-axios 设置请求头问题
2018/12/06 Javascript
js实现京东秒杀倒计时功能
2019/01/21 Javascript
详解vue在项目中使用百度地图
2019/03/26 Javascript
教你使用vue-cli快速构建的小说阅读器
2019/05/13 Javascript
解决vue init webpack 下载依赖卡住不动的问题
2020/11/09 Javascript
Python实现数据库并行读取和写入实例
2017/06/09 Python
对Python实现累加函数的方法详解
2019/01/23 Python
python issubclass 和 isinstance函数
2019/07/25 Python
全球知名旅游社区巴西站点:TripAdvisor巴西
2016/07/21 全球购物
英国婚礼商城:Wedding Mall
2019/11/02 全球购物
乌克兰排名第一的在线旅游超市:Farvater.Travel
2020/01/02 全球购物
Tomcat Mysql datasource数据源配置
2015/12/28 面试题
一套带网友答案的.NET笔试题
2016/12/06 面试题
资产经营总监岗位职责
2013/12/04 职场文书
副护士长竞聘演讲稿
2014/04/30 职场文书
北京故宫的导游词
2015/01/31 职场文书
大学同学聚会感言
2015/07/30 职场文书
django上传文件的三种方式
2021/04/29 Python