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扩展函数
Oct 09 PHP
使用php+xslt在windows平台上
Oct 09 PHP
用cookies来跟踪识别用户
Oct 09 PHP
php中的boolean(布尔)类型详解
Oct 28 PHP
ThinkPHP中的三大自动简介
Aug 22 PHP
php中session_id()函数详细介绍,会话id生成过程及session id长度
Sep 23 PHP
php用户注册信息验证正则表达式
Nov 12 PHP
yii2使用ajax返回json的实现方法
May 14 PHP
iOS自定义提示弹出框实现类似UIAlertView的效果
Nov 16 PHP
PHP封装的XML简单操作类完整实例
Nov 13 PHP
PHP迭代器接口Iterator用法分析
Dec 28 PHP
Laravel使用消息队列需要注意的一些问题
Dec 13 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
mysql+php分页类(已测)
2008/03/31 PHP
ThinkPHP中url隐藏入口文件后接收alipay传值的方法
2014/12/09 PHP
WordPress过滤垃圾评论的几种主要方法小结
2016/07/11 PHP
ThinkPHP实现生成和校验验证码功能
2017/04/28 PHP
js实现简单模态窗口,背景灰显
2008/11/14 Javascript
百度留言本js 大家可以参考下
2009/10/13 Javascript
js 返回时间戳所对应的具体时间
2010/07/20 Javascript
JS自动缩小超出大小的图片
2012/10/12 Javascript
使用js操作css实现js改变背景图片示例
2014/03/10 Javascript
node.js中的fs.createReadStream方法使用说明
2014/12/17 Javascript
使用jspdf生成pdf报表
2015/07/03 Javascript
基于jquery实现在线选座订座之影院篇
2015/08/24 Javascript
javascript创建对象的3种方法
2016/11/02 Javascript
vue轮播图插件vue-awesome-swiper的使用代码实例
2017/07/10 Javascript
weex slider实现滑动底部导航功能
2017/08/28 Javascript
AngularJS实现自定义指令及指令配置项的方法
2017/11/20 Javascript
使用vue-cli+webpack搭建vue开发环境的方法
2017/12/22 Javascript
快速了解Node中的Stream流是什么
2019/02/13 Javascript
详解小程序开发经验:多页面数据同步
2019/05/18 Javascript
深入学习js函数的隐式参数 arguments 和 this
2019/06/24 Javascript
layui点击数据表格添加或删除一行的例子
2019/09/12 Javascript
jQuery设置下拉框显示与隐藏效果的方法分析
2019/09/15 jQuery
利用PHP实现递归删除链表元素的方法示例
2020/10/23 Javascript
Python中返回字典键的值的values()方法使用
2015/05/22 Python
Python操作MongoDB数据库的方法示例
2018/01/04 Python
python多线程使用方法实例详解
2019/12/30 Python
世界第一冲浪品牌:O’Neill
2016/08/30 全球购物
匈牙利墨盒和碳粉购买网站:CDRmarket
2018/04/14 全球购物
Sunglass Hut巴西网上商店:男女太阳镜
2020/10/04 全球购物
七年级政治教学反思
2014/02/03 职场文书
水毁工程实施方案
2014/04/01 职场文书
篝火晚会策划方案
2014/05/16 职场文书
班级口号大全
2014/06/09 职场文书
一行代码python实现文件共享服务器
2021/04/22 Python
微信小程序scroll-view不能左右滑动问题的解决方法
2021/07/09 Javascript
python代码实现扫码关注公众号登录的实战
2021/11/01 Python