天天看點

android擷取url參數值,android 擷取url 參數值

前言

在開發webview 有時候需要控制url的跳轉,是以需要擷取url 參數進行判斷

比如 http://192.168.0.37:8012/mobileAPP/payment.aspx?oId=M1684&factprice=12.01&paymenttype=1

這樣的一個url 我想擷取paymenttype參數的值 ,解決的辦法就是寫一個工具類

代碼如下

public class UrlUtils {

public static String getValueByName(String url, String name) {

String result = "";

int index = url.indexOf("?");

String temp = url.substring(index + 1);

String[] keyValue = temp.split("\\&");

for (String str : keyValue) {

if (str.contains(name)) {

result = str.replace(name + "=", "");

}

}

return result;

}

}

調用示例

@Override

public boolean shouldOverrideUrlLoading(WebView view, String url) {

if (url.contains("/mobileAPP/payment.aspx?")) {

String type = UrlUtils.getValueByName(url, "paymenttype");

//微信支付

if (type.equals("1")) {

Intent intent = new Intent(context, PayActivity.class);

context.startActivity(intent);

}

//支付寶支付

else {

Intent intent = new Intent(context, PayDemoActivity.class);

context.startActivity(intent);

}

}

else {

view.loadUrl(url);

}

return true;

}