Unity UniWebView Android - Webview 在切换应用程序或按 Android 的主页按钮时关闭

问题描述 投票:0回答:1

已在 Unity Android 应用程序中实现 Webview 以加载 URL,如下所示:

    public void ActivateWebView(string link)
    {
        
        var webViewGameObject = new GameObject("UniWebView");
        webView = webViewGameObject.AddComponent<UniWebView>();
        DontDestroyOnLoad(webViewGameObject);
        webView.Frame = new Rect(0, 0, Screen.width, Screen.height);
        webView.OnPageStarted += (UniWebView uni, string url) => 
        {
            print("webView created " + url);
        };
        
        webView.Load(link);
        webView.SetBackButtonEnabled(true);
        webView.Show();
    }

但是,每当我按下 Android 的主页按钮,然后切换回我的应用程序时,Web 视图就会关闭并移回到启动 Web 视图的页面。如何保持 webview 会话/上下文打开,直到我特意不按“后退”按钮?

官方文档(https://docs.uniwebview.com/api/)没有提到如何在Android应用程序上切换应用程序(或简单地按Home按钮)后保持webview会话打开。

c# android unity-game-engine webview uniwebview
1个回答
0
投票

解决按 Android Home 按钮然后返回应用程序后 WebView 会话关闭并返回 Unity Android 应用程序中的上一页的问题。您需要更清晰地管理 Webview 生命周期以及应用程序的生命周期。

UniWebview 没有提供直接的解决方案来通过应用程序切换维持 webveiw 会话打开。

您需要实施自定义解决方案。

public void OnApplicationPause(bool pause)
{
   if(pause)
   {
      saveURL = currenturl;
   }
   else
   {
      webView.Load(saveURL);
   }
}
© www.soinside.com 2019 - 2024. All rights reserved.