正在查看: Petal Maps v4.7.0.310001 应用的 ExploreNearbyWebViewBridge.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: Petal Maps v4.7.0.310001 应用的 ExploreNearbyWebViewBridge.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.huawei.maps.dynamic.card.binding.nearbywebview;
import android.text.TextUtils;
import android.webkit.JavascriptInterface;
import android.webkit.WebView;
import androidx.annotation.Keep;
import androidx.navigation.NavController;
import com.huawei.maps.app.common.remoteconfig.MapRemoteConfig;
import com.huawei.maps.app.common.utils.a;
import com.huawei.maps.app.common.utils.task.TaskRunnable;
import com.huawei.maps.businessbase.at.ApplicationAtClient;
import com.huawei.maps.businessbase.bean.HtmlDeviceInfoEx;
import com.huawei.maps.businessbase.manager.AbstractMapUIController;
import com.huawei.maps.businessbase.network.MapApiKeyClient;
import com.huawei.maps.businessbase.network.MapHttpClient;
import com.huawei.maps.dynamic.card.binding.nearbywebview.ExploreNearbyWebViewBridge;
import com.huawei.secure.android.common.webview.SafeGetUrl;
import defpackage.ct3;
import defpackage.q42;
import java.lang.ref.WeakReference;
import java.util.List;
import java.util.Locale;
import kotlin.Metadata;
import kotlin.jvm.functions.Function0;
import kotlin.jvm.internal.SourceDebugExtension;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@Metadata(d1 = {"\u0000L\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u000e\n\u0002\b\f\n\u0002\u0010\u000b\n\u0002\b\u0005\n\u0002\u0010\u0006\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\b\u000f\n\u0002\u0018\u0002\n\u0002\b\u0005\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0010 \n\u0002\b\u0007\u0018\u0000 <2\u00020\u0001:\u0001-B#\b\u0016\u0012\u0006\u0010\u0003\u001a\u00020\u0002\u0012\u0006\u0010\u0005\u001a\u00020\u0004\u0012\b\u0010\u0007\u001a\u0004\u0018\u00010\u0006¢\u0006\u0004\b\b\u0010\tJ\u0011\u0010\n\u001a\u0004\u0018\u00010\u0006H\u0007¢\u0006\u0004\b\n\u0010\u000bJ\u0011\u0010\f\u001a\u0004\u0018\u00010\u0006H\u0007¢\u0006\u0004\b\f\u0010\u000bJ\u0011\u0010\r\u001a\u0004\u0018\u00010\u0006H\u0007¢\u0006\u0004\b\r\u0010\u000bJ\u0011\u0010\u000e\u001a\u0004\u0018\u00010\u0006H\u0007¢\u0006\u0004\b\u000e\u0010\u000bJ\u0011\u0010\u000f\u001a\u0004\u0018\u00010\u0006H\u0007¢\u0006\u0004\b\u000f\u0010\u000bJ\u0011\u0010\u0010\u001a\u0004\u0018\u00010\u0006H\u0007¢\u0006\u0004\b\u0010\u0010\u000bJ\u0011\u0010\u0011\u001a\u0004\u0018\u00010\u0006H\u0007¢\u0006\u0004\b\u0011\u0010\u000bJ\u0011\u0010\u0012\u001a\u0004\u0018\u00010\u0006H\u0007¢\u0006\u0004\b\u0012\u0010\u000bJ\u000f\u0010\u0014\u001a\u00020\u0013H\u0007¢\u0006\u0004\b\u0014\u0010\u0015J\u0011\u0010\u0016\u001a\u0004\u0018\u00010\u0006H\u0007¢\u0006\u0004\b\u0016\u0010\u000bJ\u000f\u0010\u0017\u001a\u00020\u0006H\u0007¢\u0006\u0004\b\u0017\u0010\u000bJ3\u0010\u001d\u001a\u00020\u001c2\b\u0010\u0007\u001a\u0004\u0018\u00010\u00062\b\u0010\u0018\u001a\u0004\u0018\u00010\u00062\u0006\u0010\u001a\u001a\u00020\u00192\u0006\u0010\u001b\u001a\u00020\u0019H\u0007¢\u0006\u0004\b\u001d\u0010\u001eJ\u000f\u0010\u001f\u001a\u00020\u0006H\u0007¢\u0006\u0004\b\u001f\u0010\u000bJ\u000f\u0010 \u001a\u00020\u0006H\u0007¢\u0006\u0004\b \u0010\u000bJ7\u0010%\u001a\u00020\u001c2\b\u0010!\u001a\u0004\u0018\u00010\u00062\b\u0010\"\u001a\u0004\u0018\u00010\u00062\b\u0010#\u001a\u0004\u0018\u00010\u00062\b\u0010$\u001a\u0004\u0018\u00010\u0006H\u0007¢\u0006\u0004\b%\u0010&J\u0019\u0010(\u001a\u00020\u001c2\b\u0010'\u001a\u0004\u0018\u00010\u0006H\u0007¢\u0006\u0004\b(\u0010)J\u000f\u0010*\u001a\u00020\u0013H\u0007¢\u0006\u0004\b*\u0010\u0015J\u000f\u0010+\u001a\u00020\u0013H\u0002¢\u0006\u0004\b+\u0010\u0015R\u001e\u0010/\u001a\n\u0012\u0004\u0012\u00020\u0002\u0018\u00010,8\u0002@\u0002X\u0082\u000e¢\u0006\u0006\n\u0004\b-\u0010.R\u001e\u00101\u001a\n\u0012\u0004\u0012\u00020\u0004\u0018\u00010,8\u0002@\u0002X\u0082\u000e¢\u0006\u0006\n\u0004\b0\u0010.R\u0018\u00105\u001a\u0004\u0018\u0001028\u0002@\u0002X\u0082\u000e¢\u0006\u0006\n\u0004\b3\u00104R\u001e\u00109\u001a\n\u0012\u0004\u0012\u00020\u0006\u0018\u0001068\u0002@\u0002X\u0082\u000e¢\u0006\u0006\n\u0004\b7\u00108R\u0018\u0010;\u001a\u0004\u0018\u00010\u00068\u0002@\u0002X\u0082\u000e¢\u0006\u0006\n\u0004\b+\u0010:¨\u0006="}, d2 = {"Lcom/huawei/maps/dynamic/card/binding/nearbywebview/ExploreNearbyWebViewBridge;", "", "Lcom/huawei/maps/dynamic/card/binding/nearbywebview/ExploreNearbyWaterfallEleFragment;", "directFragment", "Landroid/webkit/WebView;", "webView", "", "poiId", "<init>", "(Lcom/huawei/maps/dynamic/card/binding/nearbywebview/ExploreNearbyWaterfallEleFragment;Landroid/webkit/WebView;Ljava/lang/String;)V", "getAppClientVersion", "()Ljava/lang/String;", "getDeviceInfo", "getApiKey", "getMapApiKey", "getWindowSize", "getApplicationAt", "getToken", "getCloudApiAddr", "", "isAppMirrorMode", "()Z", "getOperationRegion", "getScene", "poiName", "", "lat", "lon", "Lmda;", "goToPoiDetailPageWithLocation", "(Ljava/lang/String;Ljava/lang/String;DD)V", "getExcludePoiId", "getUserLocationCountry", "url", "noteId", "title", "poiDetails", "ctripNoteUrlJump", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V", "ctripNoteInfo", "setComplainAddInfo", "(Ljava/lang/String;)V", "isShowComplain", "e", "Ljava/lang/ref/WeakReference;", "a", "Ljava/lang/ref/WeakReference;", "fragmentRef", "b", "webViewRef", "Lcom/huawei/secure/android/common/webview/SafeGetUrl;", "c", "Lcom/huawei/secure/android/common/webview/SafeGetUrl;", "mSafeGetUrl", "", "d", "Ljava/util/List;", "mOpeWhiteList", "Ljava/lang/String;", "excludePoiId", "f", "DynamicCard_release"}, k = 1, mv = {1, 8, 0}, xi = 48)
@SourceDebugExtension({"SMAP\nExploreNearbyWebViewBridge.kt\nKotlin\n*S Kotlin\n*F\n+ 1 ExploreNearbyWebViewBridge.kt\ncom/huawei/maps/dynamic/card/binding/nearbywebview/ExploreNearbyWebViewBridge\n+ 2 ArraysJVM.kt\nkotlin/collections/ArraysKt__ArraysJVMKt\n*L\n1#1,309:1\n37#2,2:310\n*S KotlinDebug\n*F\n+ 1 ExploreNearbyWebViewBridge.kt\ncom/huawei/maps/dynamic/card/binding/nearbywebview/ExploreNearbyWebViewBridge\n*L\n81#1:310,2\n*E\n"})
public final class ExploreNearbyWebViewBridge {
@NotNull
public static final Companion INSTANCE = new Companion(null);
@Keep
private static final String myTag = ExploreNearbyWebViewBridge.class.getSimpleName();
@Nullable
public WeakReference<ExploreNearbyWaterfallEleFragment> fragmentRef;
@Nullable
public WeakReference<WebView> webViewRef;
@Nullable
public SafeGetUrl mSafeGetUrl;
@Nullable
public List<String> mOpeWhiteList;
@Nullable
public String excludePoiId;
@Metadata(d1 = {"\u0000\u0018\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0002\n\u0002\u0010 \n\u0002\u0010\u000e\n\u0002\b\u0006\b\u0086\u0003\u0018\u00002\u00020\u0001B\t\b\u0002¢\u0006\u0004\b\u0002\u0010\u0003J\u0015\u0010\u0006\u001a\b\u0012\u0004\u0012\u00020\u00050\u0004H\u0002¢\u0006\u0004\b\u0006\u0010\u0007R\u001c\u0010\t\u001a\n \b*\u0004\u0018\u00010\u00050\u00058\u0002X\u0083\u0004¢\u0006\u0006\n\u0004\b\t\u0010\n¨\u0006\u000b"}, d2 = {"Lcom/huawei/maps/dynamic/card/binding/nearbywebview/ExploreNearbyWebViewBridge$a;", "", "<init>", "()V", "", "", "b", "()Ljava/util/List;", "kotlin.jvm.PlatformType", "myTag", "Ljava/lang/String;", "DynamicCard_release"}, k = 1, mv = {1, 8, 0}, xi = 48)
public static final class Companion {
public Companion(at1 at1Var) {
this();
}
public final List<String> b() {
String m = MapRemoteConfig.g().m("agc_atomization_host_white_list");
if (!TextUtils.isEmpty(m)) {
h74.i(m, "whiteListStr");
m = jh9.B(m, "\\s", "", false, 4, (Object) null);
}
String str = m;
h74.i(str, "whiteListStr");
return kh9.w0(str, new String[]{","}, false, 0, 6, (Object) null);
}
public Companion() {
}
}
@Metadata(d1 = {"\u0000\u0019\n\u0000\n\u0002\u0018\u0002\n\u0002\u0010\u000e\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\b\u0003*\u0001\u0000\b\n\u0018\u00002\u00020\u0001J\u000f\u0010\u0003\u001a\u00020\u0002H\u0016¢\u0006\u0004\b\u0003\u0010\u0004J\u000f\u0010\u0006\u001a\u00020\u0005H\u0016¢\u0006\u0004\b\u0006\u0010\u0007¨\u0006\b"}, d2 = {"com/huawei/maps/dynamic/card/binding/nearbywebview/ExploreNearbyWebViewBridge$b", "Lcom/huawei/maps/app/common/utils/task/TaskRunnable;", "", "getClassName", "()Ljava/lang/String;", "Lmda;", "run", "()V", "DynamicCard_release"}, k = 1, mv = {1, 8, 0}, xi = 48)
public static final class b extends TaskRunnable {
public final String b;
public b(String str) {
this.b = str;
}
@NotNull
public String getClassName() {
String str = ExploreNearbyWebViewBridge.myTag;
h74.i(str, "myTag");
return str;
}
public void run() {
WeakReference weakReference = ExploreNearbyWebViewBridge.this.fragmentRef;
ExploreNearbyWaterfallEleFragment exploreNearbyWaterfallEleFragment = weakReference != null ? (ExploreNearbyWaterfallEleFragment) weakReference.get() : null;
AbstractMapUIController.getInstance().dynamicCardJump((NavController) null, "detailFragmentResetMapStatus", (Object) null);
a.a.e(exploreNearbyWaterfallEleFragment, this.b);
}
}
public ExploreNearbyWebViewBridge(@NotNull ExploreNearbyWaterfallEleFragment exploreNearbyWaterfallEleFragment, @NotNull WebView webView, @Nullable String str) {
h74.j(exploreNearbyWaterfallEleFragment, "directFragment");
h74.j(webView, "webView");
this.fragmentRef = new WeakReference<>(exploreNearbyWaterfallEleFragment);
this.webViewRef = new WeakReference<>(webView);
this.mSafeGetUrl = new SafeGetUrl(webView);
this.mOpeWhiteList = INSTANCE.b();
this.excludePoiId = str;
}
public static final void d() {
AbstractMapUIController.getInstance().dynamicCardJump((NavController) null, "detailFragmentResetMapStatus", (Object) null);
}
@JavascriptInterface
public final void ctripNoteUrlJump(@Nullable String url, @Nullable String noteId, @Nullable String title, @Nullable String poiDetails) {
if (e()) {
WeakReference<ExploreNearbyWaterfallEleFragment> weakReference = this.fragmentRef;
ExploreNearbyWaterfallEleFragment exploreNearbyWaterfallEleFragment = weakReference != null ? weakReference.get() : null;
com.huawei.maps.app.common.utils.task.a.c(com.huawei.maps.app.common.utils.task.a.a(myTag, "ctripNoteUrlJump", new Runnable() {
@Override
public final void run() {
ExploreNearbyWebViewBridge.d();
}
}));
a.a.f(exploreNearbyWaterfallEleFragment, url, title, poiDetails, "originPoi", (Function0) null);
}
}
public final boolean e() {
try {
SafeGetUrl safeGetUrl = this.mSafeGetUrl;
String urlMethod = safeGetUrl != null ? safeGetUrl.getUrlMethod() : null;
if (urlMethod == null) {
return false;
}
if (!jh9.F(urlMethod, "https://htmlassets.huawei.com", false, 2, (Object) null) && !jh9.F(urlMethod, "file:", false, 2, (Object) null)) {
if (tha.b(this.mOpeWhiteList)) {
return false;
}
List<String> list = this.mOpeWhiteList;
h74.g(list);
return c55.h(urlMethod, (String[]) list.toArray(new String[0]));
}
return true;
} catch (Exception unused) {
hm4.h(myTag, "mSafeGetUrl error");
return false;
}
}
@JavascriptInterface
@Nullable
public final String getApiKey() {
hm4.p(myTag, "getApiKey");
if (e()) {
return lm7.d();
}
return null;
}
@JavascriptInterface
@Nullable
public final String getAppClientVersion() {
hm4.p(myTag, "getAppClientVersion");
return String.valueOf(qk9.u(o41.b()));
}
@JavascriptInterface
@Nullable
public final String getApplicationAt() {
hm4.p(myTag, "getApplicationAt");
if (e()) {
return ApplicationAtClient.e();
}
return null;
}
@JavascriptInterface
@Nullable
public final String getCloudApiAddr() {
String siteUrl = e() ? MapHttpClient.getSiteUrl() : null;
return TextUtils.isEmpty(siteUrl) ? "" : siteUrl;
}
@JavascriptInterface
@Nullable
public final String getDeviceInfo() {
if (!e()) {
return null;
}
hm4.p(myTag, "getDeviceInfo");
HtmlDeviceInfoEx htmlDeviceInfoEx = new HtmlDeviceInfoEx((Boolean) null, (String) null, 3, (at1) null);
htmlDeviceInfoEx.setAppPackage(o41.b().getPackageName());
htmlDeviceInfoEx.setAppVersion(qk9.v(o41.c()));
htmlDeviceInfoEx.setDeviceType(ct3.Y(o41.c()) ? "PAD" : "MobilePhone");
htmlDeviceInfoEx.setDeviceCategory(q42.f());
htmlDeviceInfoEx.setDeviceId(p19.F().r0());
htmlDeviceInfoEx.setLanguage(br3.a());
a.a aVar = a.a;
htmlDeviceInfoEx.setCountry(aVar.n());
htmlDeviceInfoEx.setLocaleCountry(Locale.getDefault().getCountry());
String m = aVar.m();
if (m == null) {
m = "";
}
htmlDeviceInfoEx.setOtCountry(m);
return og3.a(htmlDeviceInfoEx);
}
@JavascriptInterface
@NotNull
public final String getExcludePoiId() {
String str = this.excludePoiId;
return str != null ? str : "";
}
@JavascriptInterface
@Nullable
public final String getMapApiKey() {
hm4.p(myTag, "getMapApiKey");
if (e()) {
return MapApiKeyClient.getMapApiKey();
}
return null;
}
@JavascriptInterface
@Nullable
public final String getOperationRegion() {
return e() ? a.a.l() : "";
}
@JavascriptInterface
@NotNull
public final String getScene() {
return "POI_DETAIL";
}
@JavascriptInterface
@Nullable
public final String getToken() {
hm4.p(myTag, "getToken");
if (e()) {
return e4.a().getAccessToken();
}
return null;
}
@JavascriptInterface
@NotNull
public final String getUserLocationCountry() {
return a.a.p();
}
@JavascriptInterface
@Nullable
public final String getWindowSize() {
int f0 = ct3.f0(o41.c(), ct3.m(o41.c()));
WeakReference<WebView> weakReference = this.webViewRef;
String str = ((weakReference != null ? weakReference.get() : null) != null ? ct3.f0(o41.c(), r1.getWidth()) : f0) + "&" + f0;
hm4.p(myTag, "getWindowSize = " + str);
return str;
}
@JavascriptInterface
public final void goToPoiDetailPageWithLocation(@Nullable String poiId, @Nullable String poiName, double lat, double lon) {
String str = myTag;
hm4.z(str, "goToPoiDetailPageWithLocation");
if (e()) {
WeakReference<ExploreNearbyWaterfallEleFragment> weakReference = this.fragmentRef;
if ((weakReference != null ? weakReference.get() : null) != null) {
a.a aVar = a.a;
WeakReference<ExploreNearbyWaterfallEleFragment> weakReference2 = this.fragmentRef;
aVar.r(weakReference2 != null ? weakReference2.get() : null, poiId, poiName, lat, lon);
return;
}
}
hm4.z(str, "goToPoiDetailPageWithLocation error: not in white list");
}
@JavascriptInterface
public final boolean isAppMirrorMode() {
String appFlavor = o41.b().getAppFlavor();
if (TextUtils.isEmpty(appFlavor)) {
return false;
}
h74.i(appFlavor, "appFlavor");
String lowerCase = appFlavor.toLowerCase(Locale.ROOT);
h74.i(lowerCase, "this as java.lang.String).toLowerCase(Locale.ROOT)");
return kh9.K(lowerCase, "mirror", false, 2, (Object) null);
}
@JavascriptInterface
public final boolean isShowComplain() {
Boolean k = MapRemoteConfig.g().k("agc_ctrip_complain_is_show");
if (k == null) {
return false;
}
return k.booleanValue();
}
@JavascriptInterface
public final void setComplainAddInfo(@Nullable String ctripNoteInfo) {
com.huawei.maps.app.common.utils.task.a.c(new b(ctripNoteInfo));
}
}