05 «1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.» 07

ハルシオンシステムの気ままBlog

株式会社ハルシオンシステムのメンバーが送る、UnityやらJavaやらの技術的話題から、自社開発のアプリの宣伝とかとかのブログです。ほんと気ままにいきたいと思います。更新日は毎週 月 木でっす!

 

【ハルシオンブログ】Unityのアセット「UniWebView2」にてHTMLからアプリに値の受け渡しできちゃった 

こんにちは。もう月曜日ですね・・・・・坂内っす。

以前UniWebView2の簡単な使い方をブログで書きました。

ここで1点、HTML側からアプリのコードを呼ぶことはできるのか?
という疑問。

可能です!


HTMLからアプリをいじることができるんです!
というか、値を渡すことができます。


<test1.html>
<html>
<head>
<title></title>
</head>

<body>
<a href="uniwebview://command?count=1&aaa=bbb"><input type="button" value="値渡し"></a>
</body>

</html>


こんなHTMLを用意し、アプリ側ではこんなコードを書きます。

<WebView.cs>
using UnityEngine;
using System.Collections;
using UnityEngine.Networking;

public class ViewHtml : MonoBehaviour {
#if UNITY_IOS || UNITY_ANDROID || UNITY_WP8

private UniWebView _webView;

void Start() {
ViewHtml();
}

private void ViewHtml() {
_webView = gameObject.AddComponent();
_webView.OnReceivedMessage += OnReceivedMessage;
_webView.url = "http://●●●/test1.html";
_webView.Load();
_webView.Show();
}

void OnReceivedMessage(UniWebView webView,UniWebViewMessage message) {
Debug.Log(message.args["count"]);
Debug.Log(message.args["aaa"]);
}
#endif
}


これを実機で実行すると以下のようになります。



※HTMLはこんな画面です。
値渡しのボタンを押すと、下にような値が取れます。

1

(Filename: ./artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)
bbb

(Filename: ./artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)

先ほどHTMLに書いた「count=1&aaa=bbb」ここの部分がちゃんと取れてます。

これを使用すると、HTML側からUniWebを閉じたり、渡された値によって色々とアプリ側をいじることができそうですね。

本日はこれだけ!あでゅ~ノシ
スポンサーサイト

Category: 開発日記(Unity)

tb 0 : cm 0   

コメント

コメントの投稿

Secret

トラックバック

トラックバックURL
→http://halcyonsystemblog.blog.fc2.com/tb.php/406-c140b227
この記事にトラックバックする(FC2ブログユーザー)