修正图床bug;修正嗅探偶发报错;

pull/64/head
21561 4 years ago
parent 62cfd26dcf
commit ec04fe6449
  1. 4
      app/src/main/java/com/github/tvbox/osc/api/ApiConfig.java
  2. 34
      app/src/main/java/com/github/tvbox/osc/ui/activity/PlayActivity.java
  3. 36
      app/src/main/java/com/github/tvbox/osc/ui/fragment/PlayFragment.java

@ -101,8 +101,10 @@ public class ApiConfig {
String key = AES.rightPadding(content.substring(content.indexOf("$#") + 2, content.indexOf("#$")), "0", 16);
String iv = AES.rightPadding(content.substring(content.length() - 13), "0", 16);
json = AES.CBC(data, key, iv);
} else {
} else if (configKey !=null) {
json = AES.ECB(content, configKey);
} else {
json = content;
}
} catch (Exception e) {
e.printStackTrace();

@ -946,25 +946,27 @@ public class PlayActivity extends BaseActivity {
setTip("正在嗅探播放地址", true, false);
mHandler.removeMessages(100);
mHandler.sendEmptyMessageDelayed(100, 20 * 1000);
// 解析ext
try {
HashMap<String, String> reqHeaders = new HashMap<>();
JSONObject jsonObject = new JSONObject(pb.getExt());
if (jsonObject.has("header")) {
JSONObject headerJson = jsonObject.optJSONObject("header");
Iterator<String> keys = headerJson.keys();
while (keys.hasNext()) {
String key = keys.next();
if (key.equalsIgnoreCase("user-agent")) {
webUserAgent = headerJson.getString(key).trim();
}else {
reqHeaders.put(key, headerJson.optString(key, ""));
if(pb.getExt()!=null){
// 解析ext
try {
HashMap<String, String> reqHeaders = new HashMap<>();
JSONObject jsonObject = new JSONObject(pb.getExt());
if (jsonObject.has("header")) {
JSONObject headerJson = jsonObject.optJSONObject("header");
Iterator<String> keys = headerJson.keys();
while (keys.hasNext()) {
String key = keys.next();
if (key.equalsIgnoreCase("user-agent")) {
webUserAgent = headerJson.getString(key).trim();
}else {
reqHeaders.put(key, headerJson.optString(key, ""));
}
}
if(reqHeaders.size()>0)webHeaderMap = reqHeaders;
}
if(reqHeaders.size()>0)webHeaderMap = reqHeaders;
} catch (Throwable e) {
e.printStackTrace();
}
} catch (Throwable e) {
e.printStackTrace();
}
loadWebView(pb.getUrl() + webUrl);
} else if (pb.getType() == 1) { // json 解析

@ -960,25 +960,28 @@ public class PlayFragment extends BaseLazyFragment {
setTip("正在嗅探播放地址", true, false);
mHandler.removeMessages(100);
mHandler.sendEmptyMessageDelayed(100, 20 * 1000);
// 解析ext
try {
HashMap<String, String> reqHeaders = new HashMap<>();
JSONObject jsonObject = new JSONObject(pb.getExt());
if (jsonObject.has("header")) {
JSONObject headerJson = jsonObject.optJSONObject("header");
Iterator<String> keys = headerJson.keys();
while (keys.hasNext()) {
String key = keys.next();
if (key.equalsIgnoreCase("user-agent")) {
webUserAgent = headerJson.getString(key).trim();
}else {
reqHeaders.put(key, headerJson.optString(key, ""));
if(pb.getExt()!=null){
// 解析ext
try {
HashMap<String, String> reqHeaders = new HashMap<>();
LOG.i("EXT:------------"+pb.getExt());
JSONObject jsonObject = new JSONObject(pb.getExt());
if (jsonObject.has("header")) {
JSONObject headerJson = jsonObject.optJSONObject("header");
Iterator<String> keys = headerJson.keys();
while (keys.hasNext()) {
String key = keys.next();
if (key.equalsIgnoreCase("user-agent")) {
webUserAgent = headerJson.getString(key).trim();
}else {
reqHeaders.put(key, headerJson.optString(key, ""));
}
}
if(reqHeaders.size()>0)webHeaderMap = reqHeaders;
}
if(reqHeaders.size()>0)webHeaderMap = reqHeaders;
} catch (Throwable e) {
e.printStackTrace();
}
} catch (Throwable e) {
e.printStackTrace();
}
loadWebView(pb.getUrl() + webUrl);
@ -1443,6 +1446,7 @@ public class PlayFragment extends BaseLazyFragment {
selector=click.trim();
}
String js="$(\""+ selector+"\").click();";
LOG.i("javascript:" + js);
mSysWebView.loadUrl("javascript:"+js);
}
}

Loading…
Cancel
Save