php解析apk(PHP解析器配置文件名)
华为云服务器特价优惠火热进行中! 2核2G2兆仅需 38 元;4核4G3兆仅需 79 元。购买时间越长越优惠!更多配置及优惠价格请咨询客服。
合作流程: |
本篇文章给大家谈谈php解析apk,以及PHP解析器配置文件名对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
微信号:cloud7591如需了解更多,欢迎添加客服微信咨询。
复制微信号
本文目录一览:
- 1、php怎么获取apk的md5
- 2、怎么用php获取apk中的图标信息
- 3、PHP获取安卓apk包里的apk签名
- 4、php怎么判断是不是apk文件
- 5、php怎么获取apk的不同大小的icon
- 6、通过PHP怎样取到android系统下apk应用的包名,版本号等信息
php怎么获取apk的md5
由于需要判断上传的文件是否被修改过,需要记录上传文件的md5值,这里记录一下获取文件md5值的方法。
if(isset($_FILES['multimedia']) $_FILES['multimedia']['error']==0)
{
$file_name = $_FILES['multimedia']['name'];
$size = getimagesize($_FILES['multimedia']['tmp_name']);
$type = $_FILES['multimedia']['type'];
$original = $_FILES['multimedia']['tmp_name'];
$md5 = md5_file($original);
echo $md5;
}
md5_file()
md5_file() 函数计算文件的 MD5 散列。md5() 函数使用 RSA 数据安全,包括 MD5 报文摘译算法。如果成功,则返回所计算的 MD5 散列,如果失败,则返回 false。
语法:md5(string,raw)
参数string,必需。规定要计算的文件。
参数charlist,可选。规定十六进制或二进制输出格式:TRUE - 原始 16 字符二进制格式;FALSE - 默认。32 字符十六进制数。
?php
$filename = "test.txt";
$md5file = md5_file($filename);
echo $md5file;
?
存储 "test.txt" 文件的 MD5 散列:
?php
$md5file = md5_file("test.txt");
file_put_contents("md5file.txt",$md5file);
?
在本例中,我们将检测 "test.txt" 是否已被更改(即是否 MD5 散列已被更改):
?php
$md5file = file_get_contents("md5file.txt");
if (md5_file("test.txt") == $md5file)
{
echo "The file is ok.";
}
else
{
echo "The file has been changed.";
}
?
itjob网上有很多相关例子
输出:
The file is ok.
怎么用php获取apk中的图标信息
1 用aapt读取包信息
aapt dump badging ./xxx.apk
aapt包含在android sdk中的build-tools文件夹,可以把这个文件拷到服务器上单独使用,大小仅1.2M;需要注意的一点是,该程序是32位环境的程序,64位系统运行可能需要安装大概三个扩展包(如果本身没有的话),我服务器CentOS可以直接运行,就不细说了
该命令执行很快,瞬间. PHP实时返回数据没问题
这里返回的信息中就已经包含了包名\APP名称 及应用图标在apk包中的位置(类似res/drawable-mdpi/icon.png).
命令行返回的信息是纯文本,PHP不能直接用,我下面的PHP源码中会将其转为数组,以方便使用
2 用unzip直接提取需要的图标文件
#解压apk包中指定图片
unzip ./xxx.apk res/drawable-mdpi/icon.png -d /tmp
#将解压出来的图片移到我们需要的位置
mv /tmp/res/drawable-mdpi/icon.png /tmp/temp.png
因为apk本身就是zip文件重命名而已,所以无需改名,可以直接解压. 另unzip可以指定只解压压缩包中某文件,也省了很多资源.
3 最后就是在PHP中用exec执行这些命令

PHP获取安卓apk包里的apk签名
所需工具:aapt,Android SDK中的工具,只有一个exe,可以直接运行。
keytool,JDK中的工具,需要安装JDK环境。
需要提供目标应用的apk
1、获取包名
例如:aapt.exe dump badging C:\Users\Administrator\Desktop\demo-apk-1.0.1.8791.apk C:\Users\Administrator\Desktop\1.txt
获取到的包名是com.pakgname.swbg
2、获取签名
SHA1: 56:BD:02:6B:9D:53:D7:F5:32:B2:BC:BD:BB:34:5B:F1:CD:EF:7F:C0
这里借助github开源的类apkparser
在项目composer.json中执行下面命令或修改composer.json引入即可
方法二适用于没有JAVA环境的情况下,一般linux都会有openssl环境。
原理:通过分析方法一中,发现apk包解压之后,里面会有.rsa签名证书,此证书是一个符合pki体系的x509证书,通过openssl命令即可查看信息。
php怎么判断是不是apk文件
先从表index_cate_share 中找出share_id ,这个我写了:$sql = 'SELECT DISTINCT(sgi.share_id) FROM index_cate_share AS sgi ';如果gid"" 然后再结合 index_cate_share 表筛选出所有gid=“gid的 share_id 这两个表结合起来查询,同时满足两个条件该怎么写?????高手指点一下!!!!
解释的还算好,想要详细解释,建议楼主去后盾人那里学习因为他们正在搞什么实训班培训的活动,建议你可以去那里学习
php怎么获取apk的不同大小的icon
先前我采用的方法就是在服务器安装了java的扩展,通过解析apk得出默认icon路径,
我每个apk都有默认icon路径,其他大小的icon其实都是变了一个目录,目录一般都比较有规律,比如:drawable-hdpi,drawable-ldpi,drawable-mdpi这样的目录里,获取到默认icon后根据规律设计规则再解压icon,
或者更加目录的前缀“drawable”,当然这个可能会变,只要你依据java获取的默认icon路径来获取其他的就是没问题的,举个例子:比如获取到的默认icon路径是“test/drawable-hdpi/test.png”,那么其他的icon应该就是“test/drawable-mdpi/test.png”
通过PHP怎样取到android系统下apk应用的包名,版本号等信息
应用场景:1、在界面中显示应用程序的版本号;2、用户启动该应用,后台判断该应用是否是最新版本。上述情景都需要在程序中自动获取到应用的版本号。思路简介:在Android中,应用程序的版本号是在AndroidManifest.xml文件中进行配置的
关于php解析apk和PHP解析器配置文件名的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
