2013-07-26 30 views
4

這與過去已經提出的其他問題類似,但有一個新的轉折點。 WebViewcapturePicture()完成通知是onNewPicture,但最新文檔表明,從API 18開始(Android 4.3),返回的圖片始終爲空。Android WebView PictureListener已棄用 - 仍然沒有其他選擇?

WebView.PictureListener

到目前爲止,我已經檢查,它仍然適用於Android 4.0.3(和嘗試使用所拍攝的圖像失敗,除非我等待通知)。

我們應該用什麼作爲替代品?在onPageFinishedWebChromeClient的進度通知100%時將圖片立即退回嗎?



更新


API-18(Android 4.3的)出現在SDK上的前兩天。 onNewPicture仍然在模擬器上發送捕獲的圖片。不幸的是,我沒有Android 4.3的實際設備。

+0

我們都面臨着同樣的問題。在Samsung Galaxy S4上,在onPageFinished()中調用capturePicture時,圖片尚未準備就緒。另一方面,PictureListener.onNewPicture()工作,雖然文檔聲明它不應該工作。我們仍在尋找一種非指定的替代方案。 –

+0

我不知道這是否會有這樣的工作:DummyService綁定到活動,將做捕獲(排隊是偉大的) - > WebView傳遞給服務 - >服務等待capturePicture() - >採取圖片對象 - >將它發送回活動(通過BroadcastReceiver,Handler,Messenger,等等)。但是如果你看一個源代碼,'checkThread()'方法應該通過。 http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/4.0.3_r1/android/webkit/WebView.java#WebView.checkThread%28%29 –

回答

0

它實際上取決於您的應用程序的targetSdkLevel。爲了兼容,如果目標等級爲< 18(JB MR2),則onNewPicture仍然發送圖片。

用於拍攝的WebView形象的首選方法是導致它做你所提供的Canvas畫,見例如Which can replace capturePicture function

相關問題