1,首先要获取用户唯一识别码udid,代码如下:
//获取UDID
public function get_udid()
{
$data = file_get_contents(‘php://input’);
//file_put_contents('./udid.txt', $data);
$plistBegin = '<?xml version="1.0"';
$plistEnd = '</plist>';
$pos1 = strpos($data, $plistBegin);
$pos2 = strpos($data, $plistEnd);
$data2 = substr($data, $pos1, $pos2 - $pos1);
$xml = xml_parser_create();
xml_parse_into_struct($xml, $data2, $vs);
xml_parser_free($xml);
$UDID = "";
$CHALLENGE = "";
$DEVICE_NAME = "";
$DEVICE_PRODUCT = "";
$DEVICE_VERSION = "";
$iterator = 0;
$arrayCleaned = array();
foreach ($vs as $v) {
if ($v['level'] == 3 && $v['type'] == 'complete') {
$arrayCleaned[] = $v;
}
$iterator++;
}
$data = "";
$iterator = 0;
foreach ($arrayCleaned as $elem) {
$data .= "\n==" . $elem['tag'] . " -> " . $elem['value'] . "<br/>";
switch ($elem['value']) {
case "CHALLENGE":
$CHALLENGE = $arrayCleaned[$iterator + 1]['value'];
break;
case "DEVICE_NAME":
$DEVICE_NAME = $arrayCleaned[$iterator + 1]['value'];
break;
case "PRODUCT":
$DEVICE_PRODUCT = $arrayCleaned[$iterator + 1]['value'];
break;
case "UDID":
$UDID = $arrayCleaned[$iterator + 1]['value'];
break;
case "VERSION":
$DEVICE_VERSION = $arrayCleaned[$iterator + 1]['value'];
break;
}
$iterator++;
}
$app_id = intval(input('param.app_id'));
$this->redirect(get_site_url() . "/user/install/udid_redirect?udid=" . $UDID . '&app_id=' . $app_id, 301);
}
注意:一定要做301中转
2,拿到udid后就可以把这个udid进行签名:
echo ‘export PATH= P A T H : / u s r / l o c a l / s b i n : / u s r / l o c a l / b i n : / u s r / s b i n : / u s r / b i n : / r o o t / b i n ; i s i g n − c ′ . PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin;isign -c '. PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin;isign