【Unity3D自学记录】浏览器调用本地安卓App

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hackdjh/article/details/39500867

通过手机浏览器浏览网页调用本地安卓App

1.Html代码

<html>    
<head>        
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">        
    <title>Insert title here</title>   
	 </head>    
	 <body>      
	     <a href="m://my.com/?arg=参数">打开App</a><br/>
	 </body>
</html>


m://my.com/?arg=参数
如果不需要参数,改成
m://my.com/

2.Android程序修改

(1)配置文件:

<intent-filter> 
        <action android:name="android.intent.action.VIEW" />                
        <category android:name="android.intent.category.DEFAULT" />                
        <category android:name="android.intent.category.BROWSABLE" />               
        <data android:host="my.com"  android:scheme="m" />
        
      </intent-filter>

(2)程序编写(接受参数)

                Uri uri = getIntent().getData(); 
		String test1= uri.getQueryParameter("arg"); 
		UnityPlayer.UnitySendMessage("Main Camera","mess",test1);


UnityPlayer.UnitySendMessage("Main Camera","mess",test1);

这里我们调用了Unity3D中的方法。


有些人可能用WebView打开App

改成:

webView.setWebViewClient(new WebViewClient(){  
	@Override  
	public boolean shouldOverrideUrlLoading(WebView view, String url) {      
		Uri uri=Uri.parse(url);          
		if(uri.getScheme().equals("m")&&uri.getHost().equals("my.com")){              
			String arg=uri.getQueryParameter("arg");                      
		}else{              
			view.loadUrl(url);          
		}      
		return true;  
	}});


没有更多推荐了,返回首页