|
30精币
本帖最后由 很伤心 于 2017-8-4 21:01 编辑
我想知道_s_ 是在吗MD5效验的 代码看不懂 这是APK改之理 里面的代码
user-mobile.youku.com/user/third/bindorlogin?pid=c8fa1ba5d92006bf&guid=90af29d4c1e0c8a15a9d38b7daa910c7&mac=08%3A00%3A27%3A07%3Aa7%3A0b&imei=863146896331235&ver=5.6.2&_t_=1501758096&e=md5&_s_=29b159a445bac3230bbd30b34dcf216e&operator=China+Mobile+GSM_46000&network=WIFI&app=sina&client=0&access_token=2.00RiA4vFJ6rfvC41c91c2ca7PUpBzC&type=1
29b159a445bac3230bbd30b34dcf216e 1501758096 2.00RiA4vFJ6rfvC41c91c2ca7PUpBzC 其他参数不变
.method private static getInteractStatisticsParameter(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.locals 10
.param p0, "requestMethod" # Ljava/lang/String;
.param p1, "relativePath" # Ljava/lang/String;
.prologue
.line 1561
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v6
const-wide/16 v8, 0x3e8
div-long/2addr v6, v8
sget-wide v8, Lcom/youku/player/util/URLContainer;->TIMESTAMP:J
add-long v4, v6, v8
.line 1562
.local v4, "tmp":J
invoke-static {v4, v5}, Ljava/lang/String;->valueOf(J)Ljava/lang/String;
move-result-object v3
.line 1563
.local v3, "timeStamp":Ljava/lang/String; 这里取了个时间戳
new-instance v6, Ljava/lang/StringBuilder;
invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v6, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
const-string v7, ":"
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
invoke-virtual {v6, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
const-string v7, ":"
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
invoke-virtual {v6, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
const-string v7, ":"
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
const-string v7, "631l1i1x3fv5vs2dxlj5v8x81jqfs2om" 这里有个常量
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
.line 1564
.local v1, "numRaw":Ljava/lang/String;
invoke-static {v1}, Lcom/youku/detail/util/YoukuUtil;->md5(Ljava/lang/String;)Ljava/lang/String; 这里有个md5
move-result-object v0
.line 1565
.local v0, "md5NumRaw":Ljava/lang/String;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
.line 1566
.local v2, "s":Ljava/lang/StringBuilder;
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
const-string v7, "?"
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1567
const-string v6, "pid="
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
sget-object v7, Lcom/youku/player/goplay/Profile;->pid:Ljava/lang/String;
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1568
sget-object v6, Lcom/youku/player/goplay/Profile;->GUID:Ljava/lang/String;
invoke-static {v6}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v6
if-nez v6, :cond_0
.line 1569
const-string v6, "&guid="
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
sget-object v7, Lcom/youku/player/goplay/Profile;->GUID:Ljava/lang/String;
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1570
:cond_0
const-string v6, "&mac="
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
sget-object v7, Lcom/youku/analytics/data/Device;->mac:Ljava/lang/String;
invoke-static {v7}, Lcom/youku/player/util/URLContainer;->URLEncoder(Ljava/lang/String;)Ljava/lang/String;
move-result-object v7
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1571
const-string v6, "&imei="
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
sget-object v7, Lcom/youku/analytics/data/Device;->imei:Ljava/lang/String;
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1572
const-string v6, "&ver="
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
sget-object v7, Lcom/youku/player/util/URLContainer;->verName:Ljava/lang/String;
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1573
const-string v6, "&_t_="
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
invoke-virtual {v6, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1574
const-string v6, "&e="
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
const-string v7, "md5"
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1575
const-string v6, "&_s_="
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1576
sget-object v6, Lcom/youku/analytics/data/Device;->operator:Ljava/lang/String;
invoke-static {v6}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v6
if-nez v6, :cond_1
.line 1577
const-string v6, "&operator="
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
sget-object v7, Lcom/youku/analytics/data/Device;->operator:Ljava/lang/String;
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1578
:cond_1
sget-object v6, Lcom/youku/analytics/data/Device;->network:Ljava/lang/String;
invoke-static {v6}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v6
if-nez v6, :cond_2
.line 1579
const-string v6, "&network="
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
sget-object v7, Lcom/youku/analytics/data/Device;->network:Ljava/lang/String;
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1580
:cond_2
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v6
return-object v6
|
|