package com.share.mvpsdk.utils; import android.os.Build; import android.support.annotation.NonNull; import android.webkit.WebSettings; import com.orhanobut.logger.Logger; import java.util.ArrayList; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * Created by Horrarndoo on 2017/9/18. *

* HttpUtils 主要用于获取UserAgent */ public class HttpUtils { /** * 获取UserAgent * * @return UserAgent */ @NonNull public static String getUserAgent() { String userAgent = ""; if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) { try { userAgent = WebSettings.getDefaultUserAgent(AppUtils.getContext()); } catch (Exception e) { userAgent = System.getProperty("http.agent"); } } else { userAgent = System.getProperty("http.agent"); } StringBuffer sb = new StringBuffer(); for (int i = 0, length = userAgent.length(); i < length; i++) { char c = userAgent.charAt(i); if (c <= '\u001f' || c >= '\u007f') { sb.append(String.format("\\u%04x", (int) c)); } else { sb.append(c); } } return sb.toString(); } public static String makeUA() { final String ua = Build.BRAND + "/" + Build.MODEL + "/" + Build.VERSION.RELEASE; return ua; } public static String[] returnImageUrlsFromHtml(String html) { List imageSrcList = new ArrayList(); Pattern p = Pattern.compile("]*\\bsrc\\b\\s*=\\s*('|\")?([^'\"\n\r\f>]+(\\" + ".jpg|\\.bmp|\\.eps|\\.gif|\\.mif|\\.miff|\\.png|\\.tif|\\.tiff|\\.svg|\\.wmf|\\" + ".jpe|\\.jpeg|\\.dib|\\.ico|\\.tga|\\.cut|\\.pic|\\b)\\b)[^>]*>", Pattern .CASE_INSENSITIVE); Matcher m = p.matcher(html); String quote = null; String src = null; while (m.find()) { quote = m.group(1); src = (quote == null || quote.trim().length() == 0) ? m.group(2).split("//s+")[0] : m .group(2); imageSrcList.add(src); } if (imageSrcList.size() == 0) { Logger.e("资讯中未匹配到图片链接"); return null; } return imageSrcList.toArray(new String[imageSrcList.size()]); } }