正在查看: Petal Maps v4.7.0.310001 应用的 ReportJavascriptObj.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: Petal Maps v4.7.0.310001 应用的 ReportJavascriptObj.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.huawei.maps.app.search.model.nearby;
import android.text.TextUtils;
import android.webkit.JavascriptInterface;
import android.webkit.WebView;
import androidx.fragment.app.Fragment;
import androidx.navigation.fragment.NavHostFragment;
import com.huawei.maps.app.common.remoteconfig.MapRemoteConfig;
import com.huawei.maps.app.common.utils.task.TaskRunnable;
import com.huawei.maps.app.common.utils.task.a;
import com.huawei.maps.app.routeplan.model.ComplainAddInfo;
import com.huawei.maps.app.setting.constant.RoadReportType;
import com.huawei.secure.android.common.webview.SafeGetUrl;
import java.lang.ref.WeakReference;
public class ReportJavascriptObj {
private static final String APP_ID = "5009574862";
private static final String COLOR_LIGHT = "#F1F3F5";
private static final String COLOR_NIGHT = "#202224";
private static final String SCENE_ID = "2";
private static final String SUB_SCENE_ID = "3";
public static final String TAG = "ReportJavascriptObj";
private String mCtripAdditionalContext;
private final WeakReference<Fragment> mFragmentWeakReference;
private String[] mOpeWhiteList;
private final SafeGetUrl mSafeGetUrl;
public ReportJavascriptObj(Fragment fragment, WebView webView, String str) {
this.mFragmentWeakReference = new WeakReference<>(fragment);
String m = MapRemoteConfig.g().m("agc_atomization_host_white_list");
if (!TextUtils.isEmpty(m)) {
this.mOpeWhiteList = m.replaceAll("\\s", RoadReportType.CAMERA_INCORRECT).split(",");
}
this.mSafeGetUrl = new SafeGetUrl(webView);
this.mCtripAdditionalContext = str;
}
private boolean isInOpeWhiteList(String str) {
if (tha.e(this.mOpeWhiteList)) {
hm4.h(TAG, "isInOpeWhiteList: whitelist is empty");
return false;
}
boolean h = c55.h(str, this.mOpeWhiteList);
hm4.p(TAG, "isInOpeWhiteList:" + h);
return h;
}
@JavascriptInterface
public String complainAddInfo() {
if (!isInOpeWhiteList()) {
hm4.h(TAG, "url error");
return RoadReportType.CAMERA_INCORRECT;
}
ComplainAddInfo complainAddInfo = (ComplainAddInfo) og3.d(this.mCtripAdditionalContext, ComplainAddInfo.class);
if (complainAddInfo == null) {
return RoadReportType.CAMERA_INCORRECT;
}
complainAddInfo.setAppId(APP_ID);
complainAddInfo.setDeviceId(p19.F().r0());
complainAddInfo.setSceneId("2");
complainAddInfo.setSubSceneId("3");
complainAddInfo.setShowBackButton(true);
complainAddInfo.setDisableUserUpload(true);
ComplainAddInfo.Theme theme = new ComplainAddInfo.Theme();
theme.setBackgroundColorNight(COLOR_NIGHT);
theme.setBackgroundColorLight(COLOR_LIGHT);
complainAddInfo.setTheme(theme);
return og3.a(complainAddInfo);
}
@JavascriptInterface
public void historyBack() {
a.c(new TaskRunnable() {
public String getClassName() {
return ReportJavascriptObj.TAG;
}
public void run() {
ReportJavascriptObj.this.onClosePressed();
}
});
}
public boolean onClosePressed() {
Fragment fragment = this.mFragmentWeakReference.get();
if (fragment == null || !fragment.isAdded()) {
return true;
}
NavHostFragment.findNavController(fragment).navigateUp();
return true;
}
private boolean isInOpeWhiteList() {
try {
String urlMethod = this.mSafeGetUrl.getUrlMethod();
if (urlMethod == null || !(urlMethod.startsWith("https://htmlassets.huawei.com") || urlMethod.startsWith("file:"))) {
return isInOpeWhiteList(urlMethod);
}
return true;
} catch (Exception unused) {
hm4.h(TAG, "get url from webview error");
return false;
}
}
}