zoukankan      html  css  js  c++  java
  • Unity中内嵌网页插件UniWebView

    一、常见Unity中内嵌网页实现方式:

    1、UnityWebCore只支持windows

    2、Unity-Webview支持Android,IOS

    3、UniWebView支持mac os,Android,IOS,WP8(2.0以后)

    二、UniWebView 根据手机平台调用相应的WebView组件来显示网页,支持和javascript的交互,不支持windows和editor上显示。

    1、下载并导入unitypackage

    http://uniwebview.onevcat.com/

    2、设置Webview,加载并显示网页

    // Find the UniWebView component on the gameObject.
    // It is supposed you have already dragged this script to the same gameObject which UniWebView on.
    // Or you will get a null exception :(
    _webView = GetComponent<UniWebView>();
     
    // Listen to some event of UniWebView
    _webView.OnLoadComplete += OnLoadComplete;
    _webView.OnReceivedMessage += OnReceivedMessage;
    _webView.OnEvalJavaScriptFinished += OnEvalJavaScriptFinished;
    // Almost full screen but 5 points gap in each edge.
    _webView.insets = new UniWebViewEdgeInsets(5,5,5,5);
    // Set a url string to load
    _webView.url = "http://uniwebview.onevcat.com/demo/index.html";
    // Tell the web view begin to load the url just set.
    _webView.Load();
     
    // Then wait for the OnLoadComplete event
     
    //...
     
    // The listening method of OnLoadComplete method.
    void OnLoadComplete(UniWebView webView, bool success, string errorMessage) {
      if (success) {
        // Great, everything goes well. Show the web view now.
        webView.Show();
      } else {
        // Oops, something wrong.
        Debug.LogError("Something wrong in web view loading: " + errorMessage);
      }
    }

    3、网址解析

    uniwebview://move?direction=up&distance=1会解析成

    path = "move"
    args = {
        direction = "up",
        distance = "1"
    }

    4、监听消息

    void OnReceivedMessage(UniWebView webView, UniWebViewMessage message) {
       Debug.Log(message.rawMessage);
       if (string.Equals(message.path, "move")) {
          // It is time to move!
     
          // In this example:
          // message.args["direction"] = "up"
          // message.args["distance"] = "1"
       }
    }

    详细使用方法参考:http://uniwebview.onevcat.com/manual

  • 相关阅读:
    事件记录
    C++和extern C
    中断控制器
    NAND FLASH控制器
    MMU实验
    存储管理器实验
    GPIO实验
    linux与Windows使用编译区别及makefile文件编写
    ubuntu如何为获得root权限
    VI常用命令及linux下软件
  • 原文地址:https://www.cnblogs.com/damonxu/p/6707857.html
Copyright © 2011-2022 走看看