Commit df09760c by yangfuwei

腾讯视频IOS逆向工程,可以正常获取广告!

parents
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/okhttp/okhttp-3.6.0.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/okhttp/okio-1.11.0.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/commons-beanutils-1.8.0.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/commons-codec-1.9.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/commons-collections-3.2.1.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/commons-io-2.5.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/commons-io-2.5-javadoc.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/commons-lang-2.5.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/commons-logging-1.1.1.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/commons-logging-1.2.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/ezmorph-1.0.6.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/httpasyncclient-4.1.2.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/httpasyncclient-cache-4.1.2.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/httpclient-4.5.2.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/httpclient-cache-4.5.2.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/httpcore-4.4.5.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/httpcore-nio-4.4.5.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/json.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/json.org.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/json-lib-2.4-jdk15.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/jsoup-1.6.1.jar"/>
<classpathentry kind="lib" path="F:/wrok/TX/pro_ios/httpjar/org.json.jar"/>
<classpathentry kind="output" path="bin"/>
</classpath>
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>TX_Pass</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
eclipse.preferences.version=1
encoding//src/Net/ConnectionHelper.java=UTF-8
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=1.5
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.source=1.5
package AdThreeAnalysis;
import TX_OtherClass.JceStruct;
import TX_OtherClass.c;
import TX_OtherClass.d;
public final class AdActionButton extends JceStruct {
public String icon;
public String tips;
public AdActionButton() {
super();
this.icon = "";
this.tips = "";
}
public AdActionButton(String arg2, String arg3) {
super();
this.icon = "";
this.tips = "";
this.icon = arg2;
this.tips = arg3;
}
public final void readFrom(c arg3) {
this.icon = arg3.b(0, false);
this.tips = arg3.b(1, false);
}
public final void writeTo(d arg3) {
if(this.icon != null) {
arg3.a(this.icon, 0);
}
if(this.tips != null) {
arg3.a(this.tips, 1);
}
}
}
package AdThreeAnalysis;
import java.util.HashMap;
import java.util.Map;
import TX_OtherClass.JceStruct;
import TX_OtherClass.c;
import TX_OtherClass.d;
public final class AdCorner extends JceStruct {
static Map<String, AdActionButton> cache_actionButton = new HashMap();
static PackageAction cache_packageAction = new PackageAction();
public Map<String, AdActionButton> actionButton = null;
public String appIconUrl = "";
public String appName = "";
public PackageAction packageAction = null;
public String packageName = "";
public AdCorner(Map<String, AdActionButton> map, PackageAction packageAction, String str, String str2, String str3) {
this.actionButton = map;
this.packageAction = packageAction;
this.packageName = str;
this.appIconUrl = str2;
this.appName = str3;
}
public AdCorner() {
super();
this.actionButton = null;
this.packageAction = null;
this.packageName = "";
this.appIconUrl = "";
this.appName = "";
}
public final void writeTo(d dVar) {
if (this.actionButton != null) {
dVar.a(this.actionButton, 0);
}
if (this.packageAction != null) {
dVar.a(this.packageAction, 1);
}
if (this.packageName != null) {
dVar.a(this.packageName, 2);
}
if (this.appIconUrl != null) {
dVar.a(this.appIconUrl, 3);
}
if (this.appName != null) {
dVar.a(this.appName, 4);
}
}
static {
AdActionButton adActionButton = new AdActionButton();
cache_actionButton.put("", adActionButton);
}
public final void readFrom(c cVar) {
this.actionButton = (Map) cVar.a(cache_actionButton, 0, false);
this.packageAction = (PackageAction) cVar.a(cache_packageAction, 1, false);
this.packageName = cVar.b(2, false);
this.appIconUrl = cVar.b(3, false);
this.appName = cVar.b(4, false);
}
}
package AdThreeAnalysis;
import TX_OtherClass.JceStruct;
import TX_OtherClass.c;
import TX_OtherClass.d;
public final class AdReport extends JceStruct {
public String reportKey;
public String reportParam;
public String url;
public AdReport() {
super();
this.reportKey = "";
this.reportParam = "";
this.url = "";
}
public AdReport(String arg2, String arg3, String arg4) {
super();
this.reportKey = "";
this.reportParam = "";
this.url = "";
this.reportKey = arg2;
this.reportParam = arg3;
this.url = arg4;
}
public final void readFrom(c arg3) {
this.reportKey = arg3.b(0, false);
this.reportParam = arg3.b(1, false);
this.url = arg3.b(2, false);
}
public final void writeTo(d arg3) {
if(this.reportKey != null) {
arg3.a(this.reportKey, 0);
}
if(this.reportParam != null) {
arg3.a(this.reportParam, 1);
}
if(this.url != null) {
arg3.a(this.url, 2);
}
}
}
package AdThreeAnalysis;
import TX_OtherClass.JceStruct;
import TX_OtherClass.c;
import TX_OtherClass.d;
public final class AdShareItem extends JceStruct {
public String shareImgUrl;
public String shareSubtitle;
public String shareTitle;
public String shareUrl;
public AdShareItem() {
super();
this.shareUrl = "";
this.shareTitle = "";
this.shareSubtitle = "";
this.shareImgUrl = "";
}
public AdShareItem(String arg2, String arg3, String arg4, String arg5) {
super();
this.shareUrl = "";
this.shareTitle = "";
this.shareSubtitle = "";
this.shareImgUrl = "";
this.shareUrl = arg2;
this.shareTitle = arg3;
this.shareSubtitle = arg4;
this.shareImgUrl = arg5;
}
public final void readFrom(c arg3) {
this.shareUrl = arg3.b(0, false);
this.shareTitle = arg3.b(1, false);
this.shareSubtitle = arg3.b(2, false);
this.shareImgUrl = arg3.b(3, false);
}
public final void writeTo(d arg3) {
if(this.shareUrl != null) {
arg3.a(this.shareUrl, 0);
}
if(this.shareTitle != null) {
arg3.a(this.shareTitle, 1);
}
if(this.shareSubtitle != null) {
arg3.a(this.shareSubtitle, 2);
}
if(this.shareImgUrl != null) {
arg3.a(this.shareImgUrl, 3);
}
}
}
package AdThreeAnalysis;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import AdThreeAnalysis.ONAViewTools.ItemHolder;
import StructuralClass.ChannelDataResponse;
import StructuralClass.TempletLine;
import TX_OtherClass.JceStruct;
public class AnalysisAd {
public ArrayList GetAd(JceStruct unPackageJceResponse){
ArrayList ret = null;
ArrayList data = null;
TempletLine datatempline = null;
if(null == unPackageJceResponse){
return null;
}
ret = new ArrayList();
data = (ArrayList) ((ChannelDataResponse)unPackageJceResponse).data;
for(int i=0; i<data.size(); i++){
datatempline = (TempletLine) data.get(i);
if(datatempline.lineId.indexOf("ad_") != -1){//如果是目标类型广告才去解析
ONAAdPoster itemholder = ONAViewTools.builderItemHolder(datatempline);
if(null != itemholder){
HashMap<String, AdReport> m_prot = new HashMap();
m_prot = (HashMap<String, AdReport>) itemholder.report;
AdReport hprot = m_prot.get("click");
if(null != hprot){
System.out.println("click->"+hprot.url);
}
System.out.println("adId->"+itemholder.adId);
System.out.println("title->"+itemholder.title);
System.out.println("subtitle->"+itemholder.subtitle);
System.out.println("imageUrl->"+itemholder.imageUrl);
ret.add(itemholder);
}
}
}
return ret;
}
}
package AdThreeAnalysis;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import StructuralClass.MarkLabel;
import TX_OtherClass.JceStruct;
import TX_OtherClass.c;
import TX_OtherClass.d;
public final class ONAAdPoster extends JceStruct {
static AdCorner cache_corner = new AdCorner();
static HashMap<String, String> cache_extraParam = new HashMap();
static ArrayList<MarkLabel> cache_markLabelList = new ArrayList();
static HashMap<String, AdReport> cache_report = new HashMap();
static AdShareItem cache_shareItem = new AdShareItem();
public String adId = "";
public AdCorner corner = null;
public String downloadUrl = "";
public HashMap<String, String> extraParam = null;
public String imageUrl = "";
public ArrayList<MarkLabel> markLabelList = null;
public int picType = 0;
public HashMap<String, AdReport> report = null;
public AdShareItem shareItem = null;
public String subtitle = "";
public String title = "";
public int type = 0;
public int uiStyle = 0;
public ONAAdPoster() {
super();
this.adId = "";
this.title = "";
this.subtitle = "";
this.corner = null;
this.markLabelList = null;
this.imageUrl = "";
this.report = null;
this.type = 0;
this.picType = 0;
this.downloadUrl = "";
this.shareItem = null;
this.uiStyle = 0;
this.extraParam = null;
}
public ONAAdPoster(String str, String str2, String str3, AdCorner adCorner, ArrayList<MarkLabel> arrayList, String str4, HashMap<String, AdReport> map, int i, int i2, String str5, AdShareItem adShareItem, int i3, HashMap<String, String> map2) {
this.adId = str;
this.title = str2;
this.subtitle = str3;
this.corner = adCorner;
this.markLabelList = arrayList;
this.imageUrl = str4;
this.report = map;
this.type = i;
this.picType = i2;
this.downloadUrl = str5;
this.shareItem = adShareItem;
this.uiStyle = i3;
this.extraParam = map2;
}
public final void writeTo(d dVar) {
if (this.adId != null) {
dVar.a(this.adId, 0);
}
if (this.title != null) {
dVar.a(this.title, 1);
}
if (this.subtitle != null) {
dVar.a(this.subtitle, 2);
}
if (this.corner != null) {
dVar.a(this.corner, 3);
}
if (this.markLabelList != null) {
dVar.a(this.markLabelList, 4);
}
if (this.imageUrl != null) {
dVar.a(this.imageUrl, 5);
}
if (this.report != null) {
dVar.a(this.report, 6);
}
dVar.a(this.type, 7);
dVar.a(this.picType, 8);
if (this.downloadUrl != null) {
dVar.a(this.downloadUrl, 9);
}
if (this.shareItem != null) {
dVar.a(this.shareItem, 10);
}
dVar.a(this.uiStyle, 11);
if (this.extraParam != null) {
dVar.a(this.extraParam, 12);
}
}
static {
cache_markLabelList.add(new MarkLabel());
AdReport adReport = new AdReport();
cache_report.put("", adReport);
cache_extraParam.put("", "");
}
public final void readFrom(c cVar) {
this.adId = cVar.b(0, false);
this.title = cVar.b(1, false);
this.subtitle = cVar.b(2, false);
this.corner = (AdCorner) cVar.a(cache_corner, 3, false);
this.markLabelList = (ArrayList) cVar.a(cache_markLabelList, 4, false);
this.imageUrl = cVar.b(5, false);
this.report = (HashMap<String, AdReport>) cVar.a(cache_report, 6, false);
this.type = cVar.a(this.type, 7, false);
this.picType = cVar.a(this.picType, 8, false);
this.downloadUrl = cVar.b(9, false);
this.shareItem = (AdShareItem) cVar.a(cache_shareItem, 10, false);
this.uiStyle = cVar.a(this.uiStyle, 11, false);
this.extraParam = (HashMap<String, String>) cVar.a(cache_extraParam, 12, false);
}
}
package AdThreeAnalysis;
import org.apache.http.util.TextUtils;
import StructuralClass.DebugInfo;
import StructuralClass.TempletItem;
import StructuralClass.TempletLine;
import TX_OtherClass.JceStruct;
import TX_OtherClass.c;
public class ONAViewTools {
public class ItemHolder implements a {
public Object data;
public DebugInfo debugInfo;
public String groupId;
public long increaseId;
public int viewType;
public ItemHolder() {
}
public Object getData() {
return this.data;
}
public String getGroupId() {
return this.groupId;
}
public int getItemId() {
int v0 = this.data == null ? -1 : this.data.hashCode();
return v0;
}
public int getViewType() {
return this.viewType;
}
}
public ONAViewTools() {
super();
}
public static ONAAdPoster builderItemHolder(TempletLine arg9) {
ONAAdPoster v1 = null;
if(arg9 != null && arg9.item != null && arg9.item.data != null) {
TempletItem v0 = arg9.item;
int v2 = v0.itemType;
byte[] v3 = v0.data;
DebugInfo v4 = v0.debugInfo;
long v6 = arg9.increaseId;
EONAViewType v0_1 = EONAViewType.convert(v2);
if(v0_1 != null) {
try {
JceStruct v3_1 = ONAViewTools.builderJecData(EONAViewType.class.getPackage().getName() + "." + v0_1.toString().substring(4), v3);
if(null != v3_1) {
return (ONAAdPoster)v3_1;
}
else {
return v1;
}
}
catch(Exception v0_2) {
return v1;
}
}
else {
return v1;
}
}
return v1;
}
/* public static JceStruct builderJecData(String arg4, byte[] arg5) {
JceStruct v0_2 = null;
JceStruct v1 = null;
arg4 = "AdThreeAnalysis.ONAAdPoster";
if(!TextUtils.isEmpty(((CharSequence)arg4)) && arg5 != null) {
try {
Object v0_1 = Class.forName(arg4).newInstance();
c v2 = new c(arg5);
v2.a("UTF-8");
((JceStruct)v0_1).readFrom(v2);
}
catch(Exception v0) {
v0_2 = v1;
}
}
else {
v0_2 = v1;
}
return v0_2;
}*/
public static JceStruct builderJecData(String str, byte[] bArr) {
if (TextUtils.isEmpty(str) || bArr == null) {
return null;
}
try {
str = "AdThreeAnalysis.ONAAdPoster";
JceStruct jceStruct = (JceStruct) Class.forName(str).newInstance();
c cVar = new c(bArr);
cVar.a("UTF-8");
jceStruct.readFrom(cVar);
return jceStruct;
} catch (Exception e) {
return null;
}
}
}
package AdThreeAnalysis;
import TX_OtherClass.JceStruct;
import TX_OtherClass.c;
import TX_OtherClass.d;
public final class PackageAction extends JceStruct {
public String coordinatesStr;
public String url;
public PackageAction() {
super();
this.url = "";
this.coordinatesStr = "";
}
public PackageAction(String arg2, String arg3) {
super();
this.url = "";
this.coordinatesStr = "";
this.url = arg2;
this.coordinatesStr = arg3;
}
public final void readFrom(c arg3) {
this.url = arg3.b(0, false);
this.coordinatesStr = arg3.b(1, false);
}
public final void writeTo(d arg3) {
if(this.url != null) {
arg3.a(this.url, 0);
}
if(this.coordinatesStr != null) {
arg3.a(this.coordinatesStr, 1);
}
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment