Beispiel #1
0
    private bool SetWebviewWindow()
    {
        bool hasNetwork = Application.internetReachability != NetworkReachability.NotReachable;
        bool supported  = true;

        WebviewOptions options = new WebviewOptions();

        if (hasNetwork)
        {
        #if !UNITY_EDITOR && UNITY_ANDROID
            webViewObject = parent.gameObject.AddComponent <AndroidWebViewWindow>();
        #elif !UNITY_EDITOR && UNITY_IOS
            webViewObject = parent.gameObject.AddComponent <IOSWebViewWindow>();
        #else
            webViewObject = parent.gameObject.AddComponent <NotSupportedWebviewWindow>();
            supported     = false;
        #endif
        }
        else
        {
            webViewObject = parent.gameObject.AddComponent <NotSupportedWebviewWindow>();
            supported     = false;
        }

        webViewObject.OnLoaded = OnLoaded;
        webViewObject.OnJS     = OnWebMessageReceived;

        webViewObject.Init(options);

        return(supported);
    }
Beispiel #2
0
    public override void Init(WebviewOptions options)
    {
        if (!Application.HasUserAuthorization(UserAuthorization.WebCam))
        {
            Application.RequestUserAuthorization(UserAuthorization.WebCam);
        }

        webView = _CWebViewPlugin_Init(name, options.Transparent, options.Zoom, options.UA, options.EnableWKWebView, (int)options.WKContentMode);
    }
    public override void Init(WebviewOptions options = default)
    {
        bool   hasNetwork = Application.internetReachability != NetworkReachability.NotReachable;
        string message    = hasNetwork ? "Current platform\ndoes not support Webview." : "Network is not reachable.";

        MessageCanvas canvasPrefab = Resources.Load <MessageCanvas>("NotSupportedCanvas");

        messageCanvas = Instantiate(canvasPrefab);
        messageCanvas.SetMessage(message);
    }
Beispiel #4
0
    public override void Init(WebviewOptions options)
    {
        if (!Permission.HasUserAuthorizedPermission(Permission.Camera))
        {
            Permission.RequestUserPermission(Permission.Camera);
        }

        webView = new AndroidJavaObject("io.wolf3d.webviewplugin.CWebViewPlugin");
        webView.Call("Init", name, options.Transparent, options.Zoom, (int)options.AndroidForceDarkMode, options.UA);

        using (AndroidJavaClass unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer"))
        {
            AndroidJavaObject currentActivity = unityPlayer.GetStatic <AndroidJavaObject>("currentActivity");
            AndroidJavaObject view            = currentActivity.Get <AndroidJavaObject>("mUnityPlayer").Call <AndroidJavaObject>("getView");
            rectangle = new AndroidJavaObject("android.graphics.Rect");

            view.Call("getWindowVisibleDisplayFrame", rectangle);
            windowVisibleDisplayFrameHeight = rectangle.Call <int>("height");
        }
    }
 public abstract void Init(WebviewOptions options);