UnityでWebViewを実装できるAssetのEmbedded Browserを使用したJavaScriptとの連携方法を説明します。Embedded Browserについて概要はこちらで紹介しています。
これから説明するのはUnityからJavaScriptに値を渡し、値を返してもらう簡単なサンプルで、Assets/ZFBrowser/Demo/SimpleBrowser.unityを元に作成しています。
Unity(C#)
SimpleController.cs
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | using UnityemmEngine; using System.Collections; using UnityEngine.UI; using ZenFulcrum.EmbeddedBrowser; [RequireComponent(typeof(Browser))] public class SimpleController : MonoBehaviour { 	private Browser browser; 	void Start() { 		browser = GetComponent<Browser>(); 		browser.CallFunction("Login", "kirin", "pass").Then(ret => Debug.Log("Result: " + ret)); 	} } | 
上記13行目では CallFunction を使用してJavaScriptを呼び出しています。Login関数に引数として kirin と pass というstringを渡しています。
インスペクターBrowser.csのURLには http://mizutanikirin.net/zf.html を設定。
htmlとJavaScript
こちら2ファイルを自サーバにアップしてください。
zf.html
| 1 2 3 4 5 6 7 8 9 10 11 12 | <!doctype html> <html lang="ja"> <head>   <meta charset="utf-8">   <title>WebView Test</title> </head> <body>   <h1>WEBVIEW TEST HTML</h1>   <script src="js/script.js"></script> </body> </html> | 
js/script.js
| 1 2 3 | function login(username, password) {   return "OK, username: " + username + ", password: " + password; } | 
Unity実行結果
こういった感じにUnityコンソールに表示されます。
| 1 | Result: OK, username: kirin, password: pass | 
 
		         
							
														
						 
							
														
						




 
					
				





コメントを残す