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不用正则采集速度探究总结
Mar 24 PHP
解析php5配置使用pdo
Jul 03 PHP
php 伪静态之IIS篇
Jun 02 PHP
PHP中使用数组指针函数操作数组示例
Nov 19 PHP
PDO预处理语句PDOStatement对象使用总结
Nov 20 PHP
PHP使用mysql_fetch_row查询获得数据行列表的方法
Mar 18 PHP
PHP日期函数date格式化UNIX时间的方法
Mar 19 PHP
php使用Image Magick将PDF文件转换为JPG文件的方法
Apr 01 PHP
利用PHP命令行模式采集股票趋势信息
Aug 09 PHP
PHP中类型转换 ,常量,系统常量,魔术常量的详解
Oct 26 PHP
基于Laravel-admin 后台的自定义页面用法详解
Sep 30 PHP
php实现简单四则运算器
Nov 29 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
php mysql_real_escape_string函数用法与实例教程
2013/09/30 PHP
PHP cURL初始化和执行方法入门级代码
2015/05/28 PHP
谈谈php对接芝麻信用踩的坑
2016/12/01 PHP
Laravel框架实现redis集群的方法分析
2017/09/14 PHP
Laravel学习教程之model validation的使用示例
2017/10/23 PHP
Yii2框架数据验证操作实例详解
2018/05/02 PHP
微信推送功能实现方式图文详解
2019/07/12 PHP
Laravel5.5 手动分页和自定义分页样式的简单实现
2019/10/15 PHP
JavaScript 代码压缩工具小结
2012/02/27 Javascript
浅谈JavaScript function函数种类
2014/12/29 Javascript
js倒计时显示实例
2016/12/11 Javascript
基于vue的fullpage.js单页滚动插件
2017/03/20 Javascript
AngularJS1.X学习笔记2-数据绑定详解
2017/04/01 Javascript
js简单实现网页换肤功能
2017/04/07 Javascript
基于iScroll实现下拉刷新和上滑加载效果
2017/07/18 Javascript
浅谈vue中慎用style的scoped属性
2017/11/28 Javascript
详解React中合并单元格的正确写法
2019/01/08 Javascript
js计时事件实现圆形时钟
2020/03/25 Javascript
node后端服务保活的实现
2019/11/10 Javascript
JS实现联想、自动补齐国家或地区名称的功能
2020/07/07 Javascript
JavaScript 异步时序问题
2020/11/20 Javascript
Python实现过滤单个Android程序日志脚本分享
2015/01/16 Python
详细讲解Python中的文件I/O操作
2015/05/24 Python
python如何求解两数的最大公约数
2018/09/27 Python
python 求一个列表中所有元素的乘积实例
2019/06/11 Python
Django之form组件自动校验数据实现
2020/01/14 Python
python怎么删除缓存文件
2020/07/19 Python
python操作redis数据库的三种方法
2020/09/10 Python
基于Python采集爬取微信公众号历史数据
2020/11/27 Python
pytorch 计算Parameter和FLOP的操作
2021/03/04 Python
ECCO爱步加拿大官网:北欧丹麦鞋履及皮具品牌
2017/07/08 全球购物
初三语文教学计划
2015/01/22 职场文书
小学德育工作总结2015
2015/05/12 职场文书
导游词之徐州-云龙山
2019/09/29 职场文书
七年级话题作文之执着
2019/11/19 职场文书
利用Sharding-Jdbc进行分库分表的操作代码
2022/01/22 Java/Android