當出現H5支付/授權頁面無法輸入,webview卡死現象
請參考以下方法檢查:
原因 1:開啟硬件加速同時windowbackground為null就有問題
解決方案:
針對支付寶支付\授權的Activity設置
android:hardwareAccelerated="false"
,如下代碼所示:
<activity
android:name="com.alipay.sdk.app.H5PayActivity"
android:hardwareAccelerated="false"
android:configChanges="orientation|keyboardHidden|navigation|screenSize"
android:exported="false"
android:screenOrientation="behind"
android:windowSoftInputMode="adjustResize|stateHidden" >
</activity>
<activity
android:name="com.alipay.sdk.app.H5AuthActivity"
android:hardwareAccelerated="false"
android:configChanges="orientation|keyboardHidden|navigation"
android:exported="false"
android:screenOrientation="behind"
android:windowSoftInputMode="adjustResize|stateHidden" >
</activity>為windowbackground設置一個顏色(transparent也可以)
原因 2:調用了mWebView.pauseTimers()
解決方案:pauseTimers是一個全局方法,會停止所有js的執行,所以方法有以下兩種,任取其一:
- 不要使用pauseTimers()
- 在進入支付功能前,調用resumeTimers()
參考鏈接