1. 程式人生 > >android開發"windowlocationhref"重定向不會觸發Android webview.shouldOverrideUrlLoading

android開發"windowlocationhref"重定向不會觸發Android webview.shouldOverrideUrlLoading

   比較坑猿的一個問題,IOS沒問題,安卓卻不行,以為webview自己沒用對,最終卻發現,伺服器端是通過window.location.href來重定向的,安卓不會觸發shouldOverrideUrlLoading。

      專案中要用到原生和JS互動,沒有用註冊原生方法讓JS呼叫,是通過重定向方式來實現互動的,JS在原地址後面加#後面是方法名,然後監聽頁面重定向,哪到地址,判斷標記,並處理。結果IOS端完成沒任何問題,而Android端就是不觸發shouldOverrideUrlLoading,最後發現伺服器是通過window.location.href = ‘#goPay’ 開重定向的,而這種方式是不會觸發Android端的shouldOverrideUrlLoading。如果要用重定向方式實現互動,最好用herf = "http://#goPay"方式代替window.location.href方式。


(轉載)https://www.jianshu.com/p/90cd5a7cabef