Unity内部打开Web网页——插件《UniWebView》的使用
前言:因为项目上的需求,要在应用内打开指定的网络地址。uniwebview插件可以在unity内部打开网页,不过这个插件只能在安卓和IOS以及mac上运行,unity的editor下是运行不起来的,如果系统不是mac的话需要打出包以后才能看实际效果。
使用方法很简单,源码附上
public void Awake()
{
ShowWeb(url);
}
public void ShowWeb(string url)
{
CreateWebView();//创建webview
curWebView.url = url;
curWebView.Show();//先打开网页窗口再加载
curWebView.Load();
}
void CreateWebView()
{
//Debug.Log ("CreateWebView");
curWebView = GetComponent<UniWebView>();
if (curWebView == null)
{
//因uniwebview每次关闭都会自动销毁,所以每次都得新建
curWebView = gameObject.AddComponent<UniWebView>();
}
//curWebView.OnLoadComplete += OnLoadComplete;//加载完成回调
curWebView.OnWebViewShouldClose += CloseWebView;
curWebView.InsetsForScreenOreitation += InsetsForScreenOreitation;
curWebView.toolBarShow = false;
curWebView.CleanCache();//清除缓存
curWebView.CleanCookie();//清除Cookie
}
void OnLoadComplete(UniWebView webView, bool success, string errorMessage)
{
Debug.Log(&#34;OnLoadComplete&#34;);
if (success)
{
webView.Show();
}
else
{
Debug.Log(&#34;Something wrong in webview loading: &#34; + errorMessage);
}
}
UniWebViewEdgeInsets InsetsForScreenOreitation(UniWebView webView, UniWebViewOrientation orientation)
{
if (orientation == UniWebViewOrientation.Portrait)
{
return new UniWebViewEdgeInsets(5, 5, 5, 5);
}
else
{
return new UniWebViewEdgeInsets(5, 5, 5, 5);
}
}
private bool CloseWebView(UniWebView webView)
{
webView.Hide();
return true;
}
页:
[1]