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();// 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
转载于:https://www.cnblogs.com/damonxu/p/6707857.html
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
