Browse Source

亿米广告

lizhen_gitee 3 years ago
parent
commit
a35e90f12d
1 changed files with 101 additions and 0 deletions
  1. 101 0
      application/api/controller/Advert.php

+ 101 - 0
application/api/controller/Advert.php

@@ -0,0 +1,101 @@
+<?php
+
+namespace app\api\controller;
+
+use app\common\controller\Api;
+/**
+ * 小米平台的广告
+ * https://api.e.mi.com/doc.html#/1.0.0-mdtag9b26f-omd/document-f0283649125f62138db43c6f5fc25686
+ */
+class Advert extends Api
+{
+    protected $noNeedLogin = ['*'];
+    protected $noNeedRight = ['*'];
+
+    //异或加密,解密
+    public function xor_enc($str,$key)
+    {
+        $crytxt = '';
+        $keylen = strlen($key);
+        for($i=0;$i<strlen($str);$i++)
+        {
+            $k = $i%$keylen;
+            $crytxt .= $str[$i] ^ $key[$k];
+        }
+        return $crytxt;
+    }
+
+    //文档参数测试加密
+    /*public function test(){
+        $str = 'imei=91b9185dba1772851dd02b276a6c969e&oaid=5fb96f268628810c&conv_time=1504687208890&client_ip=127.0.0.1&ua=Dalvik%2F2.1.0+%28Linux%3B+U%3B+Android+11%3B+M2012K11AC+Build%2FRKQ1.200826.002%29&sign=c5f2f40d2355c3a8cc65a3b2d0dc9b72';
+        $key = 'AchcmaxVksLhPGjA';
+        $crytxt = $this->xor_enc($str,$key);
+        $a = urlencode(base64_encode($crytxt));
+
+        $b = 'KA4NClBYSTRSQnRdNCULcHZUWltYUBwyW0EuWmdxC3ciWl5aCEcXNwIXcV02JVN3J1FeW1tTQG5aQy9OMygENx4XAQ4IXEljW0d6UGd1Wnl5WlhFDg0RMwUHEwEgeltzdk1YTV1PSXAeEnEsMSscKCpGWiVfT0l4W1hpWmgLAy80G01QL0otc1gxZyk%2BIxguKAdDUlxESxRAPn5YYXUhcHAiK0gvFBE6D1Z%2BLgIMO3BvUVhTVVNOeFtDfk1ifkwyKAQGXg5UHmQNR3wMYnRfdCJQCVsOAk5jCkAuWjR3DiJ4AV9R';
+
+        dump($a === $b);
+    }*/
+
+    //APP 转化数据统计方案(即:APP 上报对接方案): 广告主上报激活数据,亿米平台搭建服务系统关联点击&下载数据和广告主提供的所有激活数据,将激活数据归因到对应广告。
+    public function index(){
+        //http://trail.e.mi.com/global/log?appId={appid}&info={data}&conv_type={convType}&customer_id={customerId}
+        $api_url      = 'http://trail.e.mi.com/global/log?';
+        $api_url_test = 'http://trail.e.mi.com/global/test?';
+
+        //应用id 1453045
+        //秘钥A(encrypt_key):ZxdIaVHvFqSQYzWD
+        //秘钥B(sign_key):uaeWeunykLRnkyLw
+        $sign_key = 'uaeWeunykLRnkyLw'; //真的
+        $encrypt_key = 'ZxdIaVHvFqSQYzWD';//真的
+
+        $appid = '1453045';
+        $conv_type = 'APP_REGISTER';
+        $customer_id = '292232';
+
+        //推荐模式
+        /*$imei = md5('imei');
+        $data = [
+            'imei' => '91b9185dba1772851dd02b276a6c969e',
+            'oaid' => '5fb96f268628810c',
+            'conv_time' => '1504687208890',
+            'client_ip' => '127.0.0.1',
+            'ua' => 'Dalvik/2.1.0 (Linux; U; Android 11; M2012K11AC Build/RKQ1.200826.002)',
+        ];*/
+
+        //采用模式
+        $ua = input('ua','','trim');
+        if(empty($ua)){
+            $this->error();
+        }
+        $data = [
+            'conv_time' => time().substr(microtime(),2,3),
+            'client_ip' => request()->ip(),
+            'ua' => $ua,
+        ];
+
+        $data_query = http_build_query($data);
+        //dump($data_query);
+
+        $property = $sign_key.'&'.urlencode($data_query);
+        //dump($property);
+
+        $signature = md5($property);
+        //dump($signature);
+
+        $base_data = $data_query .'&sign='.urlencode($signature);
+        //echo $base_data;
+
+        $info = urlencode(base64_encode($this->xor_enc($base_data, $encrypt_key)));
+        //dump($info);
+
+        $request_url = $api_url_test.'appId='.$appid.'&info='.$info.'&customer_id='.$customer_id.'&conv_type='.$conv_type;
+        //echo $request_url;
+
+        $result = curl_get($request_url);
+        //dump($result);
+        return $result;
+    }
+
+
+}