private class myWebViewClient extends WebViewClient {
public static final String INTENT_PROTOCOL_START = "intent:";
public static final String INTENT_PROTOCOL_INTENT = "#Intent;";
public static final String INTENT_PROTOCOL_END = ";end;";
public static final String GOOGLE_PLAY_STORE_PREFIX = "market://details?id=";
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
/*
* android.os.Build.VERSION.SDK_INT >= 19 ¾Èµå·ÎÀ̵å 4.4 ÀÌ»óÀÎ °æ¿ì
*/
if (android.os.Build.VERSION.SDK_INT >= 19) {
if (url.startsWith(INTENT_PROTOCOL_START)) {
final int customUrlStartIndex = INTENT_PROTOCOL_START.length();
final int customUrlEndIndex = url.indexOf(INTENT_PROTOCOL_INTENT);
if (customUrlEndIndex < 0) {
return false;
} else {
final String customUrl = url.substring(customUrlStartIndex, customUrlEndIndex);
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
try {
intent.setData(Uri.parse(customUrl));
getBaseContext().startActivity(intent);
} catch (ActivityNotFoundException e) {
final int packageStartIndex = customUrlEndIndex+ INTENT_PROTOCOL_INTENT.length();
final int packageEndIndex = url.indexOf(INTENT_PROTOCOL_END);