1. 程式人生 > >WebChromeClient常用方法詳解

WebChromeClient常用方法詳解

公共構造器(Public Constructors)

public WebChromeClient ()

新增自 API level 1

公共方法(Public Methods)

getDefaultVideoPoster

public Bitmap getDefaultVideoPoster ()

新增自 API level 7

Html中,視訊(video)控制元件在沒有播放的時候將給使用者展示一張“海報”圖片(預覽圖)。其預覽圖是由Html中video標籤的poster屬性來指定的。如果開發者沒有設定poster屬性, 則可以通過這個方法來設定預設的預覽圖。

返回值
Bitmap 設定預覽圖的預設圖片,或者為空。

getVideoLoadingProgressView

public View getVideoLoadingProgressView ()

新增自 API level 7

播放視訊時,在第一幀呈現之前,需要花一定的時間來進行資料緩衝。ChromeClient可以使用這個函式來提供一個在資料緩衝時顯示的檢視。 例如,ChromeClient可以在緩衝時顯示一個轉輪動畫。

返回值

引數
View 顯示一個視訊載入中的檢視。

getVisitedHistory

public void getVisitedHistory (ValueCallback<String[]> callback)

新增自 API level 7

獲得所有訪問歷史專案的列表,用於連結著色。

onCloseWindow

public void onCloseWindow (WebView window)

新增自 API level 1

通知主機主機應用WebView關閉了,並在需要的時候從view系統中移除它。此時,WebCore已經停止視窗中的所有載入進度,並在javascript中移除了所有cross-scripting的功能。

引數
window 需要關閉的webview。

onConsoleMessage

public void onConsoleMessage (String message, int lineNumber, String sourceID)

新增自 API level 7

該方法在 API level 8 被棄用
使用 onConsoleMessage(ConsoleMessage) 來替代。

將JavaScript的除錯資訊提交給主機應用。ChromeClient覆寫此方法來展示除錯過程中的日誌。

引數
message 報告的錯誤訊息。
lineNumber 錯誤的行號。
sourceID 導致錯誤的原始檔的名稱。
public boolean onConsoleMessage (ConsoleMessage consoleMessage)

新增自 API level 8

將JavaScript的除錯資訊提交給主機應用。ChromeClient覆寫此方法來展示除錯過程中的日誌。

引數
consoleMessage 包含詳細除錯資訊
返回值
true 如果訊息是由客戶端處理。

onCreateWindow

public boolean onCreateWindow (WebView view, boolean isDialog, boolean isUserGesture, Message resultMsg)

新增自 API level 1

請求主機應用建立一個新視窗。如果主機應用選擇響應這個請求,則該方法返回true,並建立一個新的WebView,將其插入到檢視系統中,並將其提供的resultMsg作為引數提供給新的WebView。 如果主機應用選擇不響應這個請求時,則該方法返回false。 預設情況下,該方法不做任何處理並返回false。

引數
view 請求新視窗的WebView。
isDialog 如果是true,代表這個新視窗只是個對話方塊,如果是false,則是一個整體的大小的視窗。
isUserGesture 如果是true,代表這個請求是使用者觸發的,例如點選一個頁面上的一個連線。
resultMsg 當一個新的WebView被建立時這個只被傳遞給他,resultMsg.obj是一個WebViewTransport的物件,它被用來傳送給新建立的WebView,使用方法:WebView.WebViewTransport.setWebView(WebView)

返回值

這個方法如果返回true,代表這個主機應用會建立一個新的視窗,否則應該返回fasle。如果你返回了false,但是依然傳送resulMsg會導致一個未知的結果。

onExceededDatabaseQuota

public void onExceededDatabaseQuota (String url, String databaseIdentifier, long quota, long estimatedDatabaseSize, long totalQuota, WebStorage.QuotaUpdater quotaUpdater)

新增自 API level 5

該方法在 API level 19 被棄用
該方法將不再被呼叫; WebView現在使用HTML5 / JavaScript Quota Management API.

通知應用程式webview核心web sql 資料庫超出配額,請求是否擴大資料庫磁碟配額。預設行為是不會增加資料庫配額。

引數
url 觸發這個資料庫配額的url地址
databaseIdentifier 指示出現數據庫超過配額的標識。
quota 原始資料庫配額的大小,位元組單位bytes。
estimatedDatabaseSize 到達底線的資料大小,位元組單位bytes。
totalQuota 總的資料庫配額大小,位元組單位bytes。
quotaUpdater 更新資料庫配額的物件,可以使用 quotaUpdater.updateQuota(newQuota);配置新的資料庫配額大小。

onGeolocationPermissionsHidePrompt

public void onGeolocationPermissionsHidePrompt ()

新增自 API level 5

當前一個呼叫onGeolocationPermissionsShowPrompt() 取消時,通知主機應用請求地理定位許可權。隱藏相關的UI。

onGeolocationPermissionsShowPrompt

public void onGeolocationPermissionsShowPrompt (String origin, GeolocationPermissions.Callback callback)

新增自 API level 5

當前頁面請求是否允許進行定位。

引數
origin 許可權設定的源地址。
callback GeolocationPermissions的回撥。

GeolocationPermissions.Callback

public void invoke(String origin, boolean allow, boolean retain);
引數
origin 許可權設定的源地址。
allow 是否允許定位。
retain 當前的選擇是否讓核心記住。

onHideCustomView

public void onHideCustomView ()

新增自 API level 7

退出視訊通知。

onJsAlert

public boolean onJsAlert (WebView view, String url, String message, JsResult result)

新增自 API level 1

通知應用程式顯示javascript alert對話方塊,如果應用程式返回true核心認為應用程式處理這個訊息,返回false,核心自己處理。

引數
view WebView的例項。
url 當前請求彈出javascript 對話方塊 webview 載入的url地址。
message 彈出的內容資訊。
result 用來響應使用者的處理。
返回值 引數
boolean 客戶端是否處理alert對話方塊。

onJsBeforeUnload

public boolean onJsBeforeUnload (WebView view, String url, String message, JsResult result)

新增自 API level 1

通知應用程式顯示一個對話方塊,讓使用者選擇是否離開當前頁面,這個回撥是javascript中的onbeforeunload事件,如果客戶端返回true,核心會認為客戶端提供對話方塊。預設行為是return false。

引數
view WebView的例項。
url 當前請求彈出javascript 對話方塊 webview 載入的url地址。
message 彈出的內容資訊。
result 用來響應使用者的處理。
返回值
boolean 客戶端是否處理alert對話方塊。

onJsConfirm

public boolean onJsConfirm (WebView view, String url, String message, JsResult result)

新增自 API level 1

通知應用程式顯示javascript Confirm對話方塊,如果應用程式返回true核心認為應用程式處理這個訊息,返回false,核心自己處理。

引數
view WebView的例項。
url 當前請求彈出javascript 對話方塊 webview 載入的url地址
message 彈出的內容資訊。
result 用來發送使用者的響應給JavaScrip的JsResult
返回值
boolean 客戶端是否處理提示對話方塊。

onJsPrompt

public boolean onJsPrompt (WebView view, String url, String message, String defaultValue, JsPromptResult result)

新增自 API level 1

通知應用程式顯示一個prompt對話方塊。如果應用程式返回true核心認為應用程式處理這個訊息,返回false,核心自己處理。

引數
view WebView的例項。
url 當前請求彈出javascript 對話方塊 webview 載入的url地址。
message 彈出的內容資訊。
defaultValue prompt dialog預設顯示的資訊。
result 用來發送使用者的響應給JavaScrip的jspromptresult。
返回值
boolean 客戶端是否處理提示對話方塊。

onJsTimeout

public boolean onJsTimeout ()

新增自 API level 7

該方法在 API level 17 被棄用
這種方法將不再被支援呼叫

告訴客戶端JavaScript執行發生超時。讓客戶端決定是否中斷執行。如果客戶端返回true,JavaScript執行將會中斷。如果客戶端返回false,將繼續執行。注意:繼續執行的話,超時計數器將會被重置,回撥將繼續出現在下次JavaScript沒有完成的檢查點。

返回值
boolean JavaScript執行是否應該被打斷。

onProgressChanged

public void onProgressChanged (WebView view, int newProgress)

新增自 API level 1

通知應用網頁的載入進度。

引數
view WebView的例項。
newProgress 當前頁面載入進度,為代表 一個0到100之間的整數。

onReachedMaxAppCacheSize

public void onReachedMaxAppCacheSize (long requiredStorage, long quota, WebStorage.QuotaUpdater quotaUpdater)

新增自 API level 7

該方法在 API level 19 被棄用
該方法將不再被呼叫; WebView現在使用HTML5 / JavaScript Quota Management API.

通知應用程式核心已經到達最大的appcache。appcache是HTML5針對offline的一個數據處理標準。

引數
requiredStorage 通過應用程式快取操作觸發通知所需的儲存量,以位元組為單位。
quota 當前的最大應用程式快取大小,以位元組為單位。
quotaUpdater 一個通知WebView使用新配額的WebStorage.QuotaUpdater例項。

onReceivedIcon

public void onReceivedIcon (WebView view, Bitmap icon)

新增自 API level 1

當前頁面有個新的圖示時候,會回撥這個函式。

引數
view WebView的例項。
icon 當前頁面的新圖示。

onReceivedTitle

public void onReceivedTitle (WebView view, String title)

新增自 API level 1

當document 的title變化時,會通知應用程式。

引數
view WebView的例項。
title document最新的字串標題。

onReceivedTouchIconUrl

public void onReceivedTouchIconUrl (WebView view, String url, boolean precomposed)

新增自 API level 7

通知應用程式 apple-touch-icon的 url 。

引數
view 已初始化WebView的回撥。
url apple-touch-icon 的服務端地址。
precomposed 如果precomposed 是true,則touch-icon是預先建立的。

onRequestFocus

public void onRequestFocus (WebView view)

新增自 API level 1

webview請求得到焦點,發生這個主要是當前webview不是前臺狀態,是後臺webview。

引數
view 需要獲取焦點的webview。

onShowCustomView

public void onShowCustomView (View view, int requestedOrientation, WebChromeClient.CustomViewCallback callback)

新增自 API level 14

該方法在 API level 18 被棄用
這種方法支援過時的外掛機制, 以後不會被呼叫

通知主機應用webview需要顯示一個特定方向的custom view。

引數
view 即將要顯示的view。
requestedOrientation 用於Activityinfo.Screenorientation的方向常量。
callback 當view 需要dismiss 則使用這個物件進行回撥通知。
public void onShowCustomView (View view, WebChromeClient.CustomViewCallback callback)

新增自 API level 7

通知主機應用webview需要顯示一個custom view,主要是用在視訊全屏 HTML5 Video support。

引數
view 即將要顯示的view。
callback 當view 需要dismiss 則使用這個物件進行回撥通知。

相關推薦

WebChromeClient常用方法

公共構造器(Public Constructors) public WebChromeClient () 新增自 API level 1 公共方法(Public Methods) getDefaultVideoPoster public B

python os.path模塊常用方法

linu margin 作文 擴展 .py sans csv pytho 宋體 python os.path模塊常用方法詳解 轉發自:http://www.cnblogs.com/wuxie1989/p/5623435.html os.path模塊主要用於文件的

Input輸入對象常用方法

知新樹 寧金峰 Input對象可以獲取用戶所有行為的輸入,如鼠標、鍵盤、加速度、陀螺儀、按鈕等,所以掌握Input對象就可以在外部輸入信息和系統之間進行交互。 Input對象的主要變量:mousePonsition 當前鼠標的像素坐標anyKeyDown 用戶點擊任何鍵或鼠標按鈕,第一幀返回tru

python常用方法

歷史 lis 單獨 tool ems usr port amp prot 1,講序列分解為單獨的變量 p=(4,5) x,y=p print(x,y)   如果在分解中想丟棄某些特定的值,可以采用_來進行 data=[‘A‘,‘B‘,‘c‘,‘d‘]

ByteBuffer常用方法

app all borde ann tool 數組 部分 簡單的 標記 緩沖區(Buffer)就是在內存中預留指定大小的存儲空間用來對輸入/輸出(I/O)的數據作臨時存儲,這部分預留的內存空間就叫做緩沖區: 使用緩沖區有這麽兩個好處: 1、減少實際的物理讀寫次數 2、

Javascript字符串常用方法

cti cas substr ace spa sea clas ron earch 字符串 字符串就是一個或多個排列在一起的字符,放在單引號或雙引號之中。 ‘abc‘"abc" length屬性 js裏的字符串類似於數組,都是一個一個字符拼湊在一起組成的,因此可以用leng

【Java】HashMap源碼分析——常用方法

fir 設置 直接 dfa 構造方法 change mage null 這也 上一篇介紹了HashMap的基本概念,這一篇著重介紹HasHMap中的一些常用方法:put()get()**resize()** 首先介紹resize()這個方法,在我看來這是HashMap中一個

python~random常用方法

random常用方法詳解 random:生成0到1之間的隨機浮點數 >>> import random >>> random.random() 0.7752409555996718 uniform(a,

Java-Parameter類常用方法

這次主要整理下Java中Parameter類的常用方法 一、Parameter類的定義 Parameter類位於 java.lang.reflect 包中,主要用於在程式執行狀態中,動態地獲取方法引數資訊 在jdk8之前,編譯器會忽略我們編寫程式碼時設定的引數

.os.path.abspath(path)、os.path.dirname(path)、os.path.basename(path)等等關於python os.path模組常用方法

裡面包含.os.path.abspath(path)、os.path.split(path)、os.path.dirname(path)、os.path.basename(path)、os.path.commonprefix(list)、os.path.exists(path)、os.path.is

python os.path模組常用方法

1.os.path.abspath(path) 返回path規範化的絕對路徑。 >>> os.path.abspath('test.csv') 'C:\\Python25\\test.csv' >>> os.path

【python基礎】os.path模組常用方法

os.path模組 主要用於檔案的屬性獲取,在程式設計中經常用到,以下是該模組的幾種常用方法。 更多的方法可以去檢視官方文件:http://docs.python.org/library/os.path.html 參考:https://www.cnblogs.com/wuxie1989/p/562343

【Java】HashMap原始碼分析——常用方法

上一篇介紹了HashMap的基本概念,這一篇著重介紹HasHMap中的一些常用方法:put()get()**resize()** 首先介紹resize()這個方法,在我看來這是HashMap中一個非常重要的方法,是用來調整HashMap中table的容量的,在很多操作中多需要重新計算容量。原始碼如下: 1

Java-Modifier類常用方法

這次主要整理下Java中Modifier類的常用方法 一、Modifier類的定義 Modifier類 (修飾符工具類) 位於 java.lang.reflect 包中,用於判斷和獲取某個類、變數或

Go strings 字串處理包常用方法

golang字串相關操作主要使用strings包下相對應方法,本文主要介紹strings包下一些常用方法的使用方法。 函式:Contain(s,str string) bool 說明:查詢子串是否在指定的字串中 例項: package main import ( "fmt"

Java-Method類常用方法

這次主要整理下Java中Method類的常用方法 一、Method類的定義 Method類位於 java.lang.reflect 包中,主要用於在程式執行狀態中,動態地獲取方法資訊 二、Met

HibernateTemplate常用方法

1:get/load存取單條資料 public Teacher getTeacherById(Long id) {       return (Teacher)this.hibernateTemplate.get(Teacher.class, id);   } 

rabbitmq channel介面常用方法

Queue.DeclareOk queueDeclare(String queue, boolean durable, boolean exclusive, boolean autoDelete,

python os.path模組和 sys.path.append模組常用方法

轉載自:http://blog.csdn.net/JOJOY_tester/article/details/54575264 https://www.cnblogs.com/wuxie1989/p/5623435.html記錄下:python 的 sys.path.appen

PDO常用方法

PDO 是一個“資料庫訪問抽象層”,作用是統一各種資料庫(MySQL、MSSQL、Oracle、DB2、PostgreSQL……)的訪問介面,能輕鬆的在不同的資料庫之間完成切換,使得資料庫間的移植容易實現。 開啟PDO 在pho.ini中查詢php_pdo_