/** * Helper method to create a LoadUrlParams object for an HTTP POST load. * * @param url URL of the load. * @param postData Post data of the load. Can be null. */ public static LoadUrlParams createLoadHttpPostParams(String url, byte[] postData) { LoadUrlParams params = new LoadUrlParams(url); params.setLoadType(LOAD_TYPE_BROWSER_INITIATED_HTTP_POST); params.setTransitionType(PageTransitionTypes.PAGE_TRANSITION_TYPED); params.setPostData(postData); return params; }
public void loadData(String data, String mimeType, String encoding) { final LoadUrlParams params = new LoadUrlParams(data); params.setLoadType(LoadUrlParams.LOAD_TYPE_DATA); this.postTask( new Runnable() { @Override public void run() { getContentViewCore().loadUrl(params); } }); }
public void loadUrl(String url) { final LoadUrlParams params = new LoadUrlParams(url); params.setLoadType(LoadUrlParams.LOAD_TYPE_DEFAULT); this.postTask( new Runnable() { @Override public void run() { getContentViewCore().loadUrl(params); } }); }
public void loadDataWithBaseURL( String baseUrl, String data, String mimeType, String encoding, String failUrl) { final LoadUrlParams params = new LoadUrlParams(data); params.setLoadType(LoadUrlParams.LOAD_TYPE_DATA); params.setBaseUrlForDataUrl(baseUrl); this.postTask( new Runnable() { @Override public void run() { getContentViewCore().loadUrl(params); } }); }
/** * Helper method to create a LoadUrlParams object for data url. * * @param data Data to be loaded. * @param mimeType Mime type of the data. * @param isBase64Encoded True if the data is encoded in Base 64 format. * @param charset The character set for the data. Pass null if the mime type does not require a * special charset. */ public static LoadUrlParams createLoadDataParams( String data, String mimeType, boolean isBase64Encoded, String charset) { StringBuilder dataUrl = new StringBuilder("data:"); dataUrl.append(mimeType); if (charset != null && !charset.isEmpty()) { dataUrl.append(";charset=" + charset); } if (isBase64Encoded) { dataUrl.append(";base64"); } dataUrl.append(","); dataUrl.append(data); LoadUrlParams params = new LoadUrlParams(dataUrl.toString()); params.setLoadType(LoadUrlParams.LOAD_TYPE_DATA); params.setTransitionType(PageTransitionTypes.PAGE_TRANSITION_TYPED); return params; }
/** * Helper method to create a LoadUrlParams object for data url with base and virtual url. * * @param data Data to be loaded. * @param mimeType Mime type of the data. * @param isBase64Encoded True if the data is encoded in Base 64 format. * @param baseUrl Base url of this data load. Note that for WebView compatibility, baseUrl and * historyUrl are ignored if this is a data: url. Defaults to about:blank if null. * @param historyUrl History url for this data load. Note that for WebView compatibility, this is * ignored if baseUrl is a data: url. Defaults to about:blank if null. * @param charset The character set for the data. Pass null if the mime type does not require a * special charset. */ public static LoadUrlParams createLoadDataParamsWithBaseUrl( String data, String mimeType, boolean isBase64Encoded, String baseUrl, String historyUrl, String charset) { LoadUrlParams params = createLoadDataParams(data, mimeType, isBase64Encoded, charset); // For WebView compatibility, when the base URL has the 'data:' // scheme, we treat it as a regular data URL load and skip setting // baseUrl and historyUrl. // TODO(joth): we should just append baseURL and historyURL here, and move the // WebView specific transform up to a wrapper factory function in android_webview/. if (baseUrl == null || !baseUrl.toLowerCase().startsWith("data:")) { params.setBaseUrlForDataUrl(baseUrl != null ? baseUrl : "about:blank"); params.setVirtualUrlForDataUrl(historyUrl != null ? historyUrl : "about:blank"); } return params; }
@Override public void run() { awContents.loadUrl(LoadUrlParams.createLoadHttpPostParams(url, mPostData)); }