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 form 表单传参明细研究
Jul 17 PHP
在命令行下运行PHP脚本[带参数]的方法
Jan 22 PHP
关于php curl获取301或302转向的网址问题的解决方法
Jun 02 PHP
PHP实现根据浏览器跳转不同语言页面代码
Aug 02 PHP
两级联动select刷新后其值保持不变的实现方法
Jan 27 PHP
PHP轻量级数据库操作类Medoo增加、删除、修改、查询例子
Jul 04 PHP
PHP中的traits简单使用实例
May 13 PHP
Symfony2联合查询实现方法
Mar 18 PHP
php解析xml 的四种简单方法(附实例)
Jul 11 PHP
PHP实现多关键字加亮功能
Oct 21 PHP
PHP读取zip文件的方法示例
Nov 17 PHP
关于ThinkPhp 框架表单验证及ajax验证问题
Jul 19 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 生成WML页面方法详解
2009/08/09 PHP
在PHP中设置、使用、删除Cookie的解决方法
2013/05/06 PHP
php递归获取目录内文件(包含子目录)封装类分享
2013/12/25 PHP
ThinkPHP结合ajax、Mysql实现的客户端通信功能代码示例
2014/06/23 PHP
thinkphp备份数据库的方法分享
2015/01/04 PHP
php从字符串创建函数的方法
2015/03/16 PHP
Laravel5.7 数据库操作迁移的实现方法
2019/04/12 PHP
推荐自用 Javascript 缩图函数 (onDOMLoaded)……
2007/10/23 Javascript
该如何加载google-analytics(或其他第三方)的JS
2010/05/13 Javascript
javascript移出节点removeChild()使用介绍
2014/04/03 Javascript
jQuery实现多级下拉菜单jDropMenu的方法
2015/08/28 Javascript
JavaScript注入漏洞的原理及防范(详解)
2016/12/04 Javascript
JavaScript实现隐藏省略文字效果的方法
2017/04/27 Javascript
AngularJs定时器$interval 和 $timeout详解
2017/05/25 Javascript
JavaScript基础之this详解
2017/06/04 Javascript
javascript 判断用户有没有操作页面
2017/10/17 Javascript
Angular 如何使用第三方库的方法
2018/04/18 Javascript
使用 vue 实例更好的监听事件及vue实例的方法
2019/04/22 Javascript
JS实现的自定义map方法示例
2019/05/17 Javascript
vue 开发企业微信整合案例分析
2019/12/02 Javascript
js节流防抖应用场景,以及在vue中节流防抖的具体实现操作
2020/09/21 Javascript
python实现无证书加密解密实例
2014/10/27 Python
Python 3中print函数的使用方法总结
2017/08/08 Python
Python实现爬取百度贴吧帖子所有楼层图片的爬虫示例
2018/04/26 Python
Python numpy数组转置与轴变换
2019/11/15 Python
python 实现读取csv数据,分类求和 再写进 csv
2020/05/18 Python
Python实现打包成库供别的模块调用
2020/07/13 Python
利用Python过滤相似文本的简单方法示例
2021/02/03 Python
梅西百货澳大利亚:Macy’s Australia
2017/07/26 全球购物
Interhome丹麦:在线预订度假屋和公寓
2019/07/18 全球购物
新东网科技Java笔试题
2012/07/13 面试题
推广活动策划方案
2014/08/23 职场文书
创业计划书之韩国烧烤店
2019/09/19 职场文书
创业计划书之熟食店
2019/10/16 职场文书
Python Pandas知识点之缺失值处理详解
2021/05/11 Python
CSS实现切角+边框+投影+内容背景色渐变效果
2021/11/01 HTML / CSS