Back to project page AndroidWifiServer.
The source code is released under:
Apache License
If you think the Android project AndroidWifiServer listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
package jp.maju.wifiserver; // w w w . j a v a 2 s . c o m import jp.maju.wifiserver.util.Logger; import jp.maju.wifiserver.util.PreferenceUtil; import android.annotation.SuppressLint; import android.content.Context; import android.os.Message; import android.util.AttributeSet; import android.webkit.WebResourceResponse; import android.webkit.WebView; import android.webkit.WebViewClient; /* * Copyright {2014} {Matsuda Jumpei} * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ public class CustomWebView extends WebView { private static final String TAG = CustomWebView.class.getSimpleName(); public static final String URL_GO_REGISTER = "app://create_user"; public static final String URL_GO_LOGIN = "app://log_in"; public static final String URL_RESULT_REGISTER = "app://finish_register?"; public static final String URL_RESULT_LOGIN = "app://finish_login?"; public static final String URL_TWEET = "app://tweet?"; public static final String TWEET_PREFIX = "tweet://"; public interface OnClickLinkListener { void onClickLink(String url); } private OnClickLinkListener mOnClickLinkListener; public void setOnClickLinkListener(OnClickLinkListener mOnClickLinkListener) { this.mOnClickLinkListener = mOnClickLinkListener; } public CustomWebView(Context context) { super(context); init(); } public CustomWebView(Context context, AttributeSet attrs) { super(context, attrs); init(); } public CustomWebView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); init(); } @SuppressLint("NewApi") @SuppressWarnings("deprecation") public CustomWebView(Context context, AttributeSet attrs, int defStyle, boolean privateBrowsing) { super(context, attrs, defStyle, privateBrowsing); init(); } @SuppressLint("SetJavaScriptEnabled") private void init() { getSettings().setJavaScriptEnabled(true); setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { Logger.d(TAG, url); if (!url.startsWith("app://")) { return true; } if (url.startsWith(URL_GO_REGISTER) || url.startsWith(URL_GO_LOGIN) || url.startsWith(URL_RESULT_REGISTER) || url.startsWith(URL_RESULT_LOGIN) || url.startsWith(URL_TWEET)) { if (mOnClickLinkListener != null) { mOnClickLinkListener.onClickLink(url); } } return true; } }); } public static String[] splitUserInfoParams(String url) { String param = url .substring(CustomWebView.URL_RESULT_REGISTER.length()); String params[] = param.split("&"); String username = params[0].split("=")[1]; String password = params[1].split("=")[1]; String uuid = params[2].split("=")[1]; String[] results = new String[3]; results[0] = username; results[1] = password; results[2] = uuid; return results; } }