pull/137/head
FongMi 2 years ago
parent 2838c5fea3
commit 8674dcaa25
  1. 12
      app/src/main/java/com/fongmi/android/tv/bean/Result.java
  2. 17
      app/src/main/java/com/fongmi/android/tv/model/SiteViewModel.java

@ -80,10 +80,6 @@ public class Result {
} }
} }
public static Result fromObject(JSONObject object) {
return object == null ? empty() : objectFrom(object.toString());
}
public static Result objectFrom(String str) { public static Result objectFrom(String str) {
try { try {
return new Gson().fromJson(str, Result.class); return new Gson().fromJson(str, Result.class);
@ -92,6 +88,14 @@ public class Result {
} }
} }
public static Result fromType(int type, String str) {
return type == 0 ? fromXml(str) : fromJson(str);
}
public static Result fromObject(JSONObject object) {
return object == null ? empty() : objectFrom(object.toString());
}
public static Result empty() { public static Result empty() {
return new Result(); return new Result();
} }

@ -77,8 +77,7 @@ public class SiteViewModel extends ViewModel {
} else { } else {
String body = OkHttp.newCall(site.getApi()).execute().body().string(); String body = OkHttp.newCall(site.getApi()).execute().body().string();
SpiderDebug.log(body); SpiderDebug.log(body);
Result result = site.getType() == 0 ? Result.fromXml(body) : Result.fromJson(body); return fetchPic(site, Result.fromType(site.getType(), body));
return fetchPic(site, result);
} }
}); });
} }
@ -101,7 +100,7 @@ public class SiteViewModel extends ViewModel {
params.put("pg", page); params.put("pg", page);
String body = OkHttp.newCall(site.getApi(), params).execute().body().string(); String body = OkHttp.newCall(site.getApi(), params).execute().body().string();
SpiderDebug.log(body); SpiderDebug.log(body);
return site.getType() == 0 ? Result.fromXml(body) : Result.fromJson(body); return Result.fromType(site.getType(), body);
} }
}); });
} }
@ -132,7 +131,7 @@ public class SiteViewModel extends ViewModel {
params.put("ids", id); params.put("ids", id);
String body = OkHttp.newCall(site.getApi(), params).execute().body().string(); String body = OkHttp.newCall(site.getApi(), params).execute().body().string();
SpiderDebug.log(body); SpiderDebug.log(body);
Result result = site.getType() == 0 ? Result.fromXml(body) : Result.fromJson(body); Result result = Result.fromType(site.getType(), body);
if (!result.getList().isEmpty()) result.getList().get(0).setVodFlags(); if (!result.getList().isEmpty()) result.getList().get(0).setVodFlags();
if (!result.getList().isEmpty()) checkThunder(result.getList().get(0).getVodFlags()); if (!result.getList().isEmpty()) checkThunder(result.getList().get(0).getVodFlags());
return result; return result;
@ -195,8 +194,7 @@ public class SiteViewModel extends ViewModel {
params.put("wd", Trans.t2s(keyword)); params.put("wd", Trans.t2s(keyword));
String body = OkHttp.newCall(site.getApi(), params).execute().body().string(); String body = OkHttp.newCall(site.getApi(), params).execute().body().string();
SpiderDebug.log(site.getName() + "," + body); SpiderDebug.log(site.getName() + "," + body);
Result result = site.getType() == 0 ? Result.fromXml(body) : Result.fromJson(body); post(site, fetchPic(site, Result.fromType(site.getType(), body)));
post(site, fetchPic(site, result));
} }
} }
@ -215,9 +213,9 @@ public class SiteViewModel extends ViewModel {
params.put("pg", page); params.put("pg", page);
String body = OkHttp.newCall(site.getApi(), params).execute().body().string(); String body = OkHttp.newCall(site.getApi(), params).execute().body().string();
SpiderDebug.log(site.getName() + "," + body); SpiderDebug.log(site.getName() + "," + body);
Result result = site.getType() == 0 ? Result.fromXml(body) : Result.fromJson(body); Result result = fetchPic(site, Result.fromType(site.getType(), body));
for (Vod vod : result.getList()) vod.setSite(site); for (Vod vod : result.getList()) vod.setSite(site);
return fetchPic(site, result); return result;
} }
}); });
} }
@ -230,8 +228,7 @@ public class SiteViewModel extends ViewModel {
params.put("ac", site.getType() == 0 ? "videolist" : "detail"); params.put("ac", site.getType() == 0 ? "videolist" : "detail");
params.put("ids", TextUtils.join(",", ids)); params.put("ids", TextUtils.join(",", ids));
String body = OkHttp.newCall(site.getApi(), params).execute().body().string(); String body = OkHttp.newCall(site.getApi(), params).execute().body().string();
List<Vod> items = site.getType() == 0 ? Result.fromXml(body).getList() : Result.fromJson(body).getList(); result.setList(Result.fromType(site.getType(), body).getList());
result.setList(items);
return result; return result;
} }

Loading…
Cancel
Save