package com.unionpay; import android.app.Activity; import android.webkit.JavascriptInterface; import android.webkit.WebView; import com.sina.weibo.sdk.constant.WBConstants; import com.unionpay.utils.g; import java.io.IOException; import java.io.InputStream; import java.io.Serializable; import java.util.HashMap; import java.util.Map; import java.util.Scanner; import org.json.JSONObject; public class WebViewJavascriptBridge implements Serializable { AbstractC0469d _messageHandler; Map _messageHandlers = new HashMap(); Map _responseCallbacks = new HashMap(); long _uniqueId = 0; Activity mContext; WebView mWebView; public WebViewJavascriptBridge(Activity activity, WebView webView, AbstractC0469d dVar) { this.mContext = activity; this.mWebView = webView; this._messageHandler = dVar; this.mWebView.getSettings().setJavaScriptEnabled(true); this.mWebView.addJavascriptInterface(this, "_WebViewJavascriptBridge"); this.mWebView.setWebViewClient(new C0443c(this, (byte) 0)); this.mWebView.setWebChromeClient(new D(this, (byte) 0)); } private String a(String str) { return str.replace("\\", "\\\\").replace("\"", "\\\"").replace("'", "\\'").replace("\n", "\\n").replace("\r", "\\r").replace("\f", "\\f"); } private void a(String str, e eVar, String str2) { HashMap hashMap = new HashMap(); hashMap.put("data", str); if (eVar != null) { StringBuilder sb = new StringBuilder("java_cb_"); long j = this._uniqueId + 1; this._uniqueId = j; sb.append(j); String sb2 = sb.toString(); this._responseCallbacks.put(sb2, eVar); hashMap.put(WBConstants.SHARE_CALLBACK_ID, sb2); } if (str2 != null) { hashMap.put("handlerName", str2); } a(hashMap); } /* access modifiers changed from: private */ public void a(String str, String str2) { HashMap hashMap = new HashMap(); hashMap.put("responseId", str); hashMap.put("responseData", str2); a(hashMap); } private void a(Map map) { String jSONObject = new JSONObject(map).toString(); g.a("test", "sending:" + jSONObject); this.mContext.runOnUiThread(new B(this, String.format("javascript:WebViewJavascriptBridge._handleMessageFromJava('%s');", a(jSONObject)))); } public static String convertStreamToString(InputStream inputStream) { String str = ""; try { Scanner useDelimiter = new Scanner(inputStream, "UTF-8").useDelimiter("\\A"); if (useDelimiter.hasNext()) { str = useDelimiter.next(); } inputStream.close(); } catch (IOException e2) { e2.printStackTrace(); } return str; } @JavascriptInterface public void _handleMessageFromJs(String str, String str2, String str3, String str4, String str5) { AbstractC0469d dVar; if (str2 != null) { ((e) this._responseCallbacks.get(str2)).a(str3); this._responseCallbacks.remove(str2); return; } C c2 = null; if (str4 != null) { c2 = new C(this, str4); } if (str5 != null) { dVar = (AbstractC0469d) this._messageHandlers.get(str5); if (dVar == null) { g.b("test", "WVJB Warning: No handler for " + str5); return; } } else { dVar = this._messageHandler; } try { this.mContext.runOnUiThread(new A(this, dVar, str, c2)); } catch (Exception e2) { g.b("test", "WebViewJavascriptBridge: WARNING: java handler threw. " + e2.getMessage()); } } public void callHandler(String str) { callHandler(str, null, null); } public void callHandler(String str, String str2) { callHandler(str, str2, null); } public void callHandler(String str, String str2, e eVar) { a(str2, eVar, str); } public void registerHandler(String str, AbstractC0469d dVar) { this._messageHandlers.put(str, dVar); } public void send(String str) { send(str, null); } public void send(String str, e eVar) { a(str, eVar, null); } }