android9系统webview崩溃,Android WebView已开始在Android 9上崩溃
您好專家Android開發人員:
我們有一個android應用,我們的基本工作流程如下
通過電子郵件或短信向用戶發送了鏈接
用戶單擊鏈接,然后在Chrome或Android默認瀏覽器上打開一個頁面,并帶有一個名為JOIN的按鈕。
用戶單擊此JOIN按鈕,我們的應用程序啟動,并在Webview中顯示一個頁面,要求用戶輸入名字,姓氏和電話/電子郵件,然后用戶單擊名為INITIATE的按鈕
我們驗證信息-如果用戶是新用戶,我們將創建一條記錄,該用戶已存在,我們將其更新,等等,然后顯示一個彈出窗口,通知他的會話將被記錄。
一旦用戶單擊彈出窗口上的“確定”,然后控件就存在Web視圖,并且用戶位于本機android頁面上。
問題
在Webview上輕按“確定”按鈕后,本機應用程序頁面將正常啟動,直到幾周前,該應用程序崩潰,我們將被帶回到Webview頁面的開始,要求我們輸入詳細信息。
請注意以下警告:
首先,這僅在Android 9的情況下發生。我們已經在三星Galaxy S8和S9上進行了測試。它并不是每次都發生,而是相當定期地發生,我有時甚至說三分之二。在最好的情況下,它發生了十分之二的情況,但是確實發生了。
這段代碼在過去一年左右的時間里已經成功運行,我們從來沒有遇到過這個問題。它只是在最近3-4周內才開始發生。
我們也有一個iOS應用程序,未觀察到相同的問題。
這是一個可能有用的代碼段-這就是我們加載Web視圖的方式。
webview = findViewById(R.id.webview);
webview.setVisibility(View.VISIBLE);
final ProgressDialog pd = ProgressDialog.show(ActivtyName.this, "", "Please wait", true);
webview.setGeolocationEnabled(true);
webview.setMixedContentAllowed(true);
webview.getSettings().setJavaScriptEnabled(true);
webview.getSettings().setDomStorageEnabled(true);
webview.getSettings().setLoadWithOverviewMode(true);
webview.setWebChromeClient(new WebChromeClient()
========這里我們覆蓋了很多方法,后面是
webview.setWebViewClient(new WebViewClient()
=======我們在這里覆蓋方法。
知道會發生什么嗎?我們嘗試通過USB模式進行調試時查看日志,但是除了如下所示在Android控制臺上顯示的內容外,我們在日志中看不到太多內容:
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 0 >>> com.a****d.xyzapp <<<
backtrace:
#00 pc 0000000001b61620 /data/app/com.android.chrome-DpcaMBOCm2oa08upmw1Tug==/base.apk
這是請求的更詳細的日志:
2019-05-18 11:58:01.694 23217-23217/com.a**d.xyzapp.debug A/chromium:
[FATAL:crashpad_client_linux.cc(404)] Render process (28925)'s crash wasn't handled by all associated webviews, triggering application crash.
Fatal signal 5 (SIGTRAP), code 1 (TRAP_BRKPT), fault addr 0x7ab7b9d620 in tid 23217 (atientapp.debug), pid 23217 (atientapp.debug) (edited)
總結
以上是生活随笔為你收集整理的android9系统webview崩溃,Android WebView已开始在Android 9上崩溃的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SQL注入之SQLmap入门([CTFS
- 下一篇: citrix android,Citri