17688221408 发表于 2018-6-8 23:55:30

幻令 发表于 2018-6-8 16:54
可以直接放,只是修改我标注的那些参数

<?php
$appPath='http://193.112.169.XX/demo.apk';//原app路径
$sourceField='6';//设置来源字段
$appName='demo.apk';//下载时候的apk名字
$source=http://193.112.169.XX/demo.apk';//默认来源
if(isset($_GET[$sourceField])){
    $source=$_GET[$sourceField];
}
$invStr = '<source>' . $source . '</source>';//设置注释
$data = file_get_contents($appPath);//读取apk源数据
$pos = strpos($data, "\x50\x4b\x05\x06");//搜索标志位置(一般都是文件尾部,不考虑了)
$data = substr($data, 0, $pos + 20);//取出标志+20左边,等下直接从注释长度那块合成
$dec = dechex(strlen($invStr));//将长度转为十六进制,后面再将十六进制转为byte,只考虑一位,反正ff,255个长度也够了
$data .= hex2bin(strlen($dec) <= 1 ? ('0' . $dec) : $dec) . "\x00$invStr";//合成注释
header("Content-Type: application/octet-stream");
header("Accept-Ranges: bytes");
header("Accept-Length: " . strlen($data));
header("Content-Disposition: attachment; filename=".$appName);
echo $data;

这样也不行

幻令 发表于 2018-6-9 20:28:34

17688221408 发表于 2018-6-8 23:45


来源字段你还是填我原来的吧,如何你的连接就是 url?uid=xxxx

17688221408 发表于 2018-6-9 20:58:12

幻令 发表于 2018-6-9 20:28
来源字段你还是填我原来的吧,如何你的连接就是 url?uid=xxxx

留个联系方式吧 红包给你帮我看看远程吧 配置一天还这个B样

17688221408 发表于 2018-6-9 21:35:38

17688221408 发表于 2018-6-8 23:45


兄弟

17688221408 发表于 2018-6-9 21:35:56

17688221408 发表于 2018-6-9 21:35
兄弟

还是不行啊

shayu 发表于 2018-6-10 10:19:25

666666666666666

v10000 发表于 2018-6-11 21:36:49

v10000 发表于 2018-6-11 21:55:30

lichenghai20 发表于 2018-6-27 22:10:41

支持了哈!!!!

pc1234 发表于 2020-4-6 00:45:30

收藏~谢谢分享
页: 1 [2] 3
查看完整版本: 如意精准来源类库