亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

U3D接入Andriod SDK以及交互

標簽:
Android

SDK接入

1.新建一个安卓工程,Package Name要与Unity工程中的Bundle Identifier一致

2.把安装Unity的D:\Program Files\Editor\Data\PlaybackEngines\androidplayer\release\bin目录下的class.jar添加到安卓工程的libs目录下

3.将需要接入的SDK,jar包、so库放入libs;将res文件夹下的资源文件放入Res目录下;在上方工具栏点击同步按钮Sync Project with Gradle Files (注意:使用资源文件不能用R.xx,需要通过反射获取,一般sdk文档会告知或取资源的方式)

4.在AndroidManifest文件中配置权限、注册Activity、service、reciver

5.MainActivity继承UnityPlayerActivity;调用sdk接口,根据SDK文档来写

6.在Terminal窗口下,执行gradlew clean清理工程,每次生成jar包前都必须先执行清理命令gradlew clean。最后,执行gradlew jarDebugClasses 或者 gradlew jarReleaseClasses生成所需jar包;

7.将生成的jar包copy到Unity工程的Assets\Plugins\Android\bin目录下;

  将sdk的libs目录下的jar包(除class.jar)、so库copy到Unity工程的                      Assets\Plugins\Android\libs目录下;

  将sdk的res文件copy到Unity工程的Assets\Plugins\Android\res目录下;

  将sdk的AndroidManifest文件copy到Unity工程的Assets\Plugins\Android目录下

8.以上步骤完成了接入,接下来在脚本里调用sdk的方法就行了

注:两种接入方式对比

类别(形式) google project U3d Plugins

优点 容易理解、方便接入原生SDK、几乎所有SDK都可以接入 接入方便、容易在Unity中进行扩展与管理

缺点 接入比较繁琐,对U3d项目不友好 不是所有SDK都提供U3d Plugins形式

apk导出 Android Studio导出 Unity 导出

交互

1.Unity调Android

AndroidJavaClass jc = new AndroidJavaClass ("com.unity3d.player.UnityPlayer"); 

 AndroidJavaObject jo = jc.GetStatic<AndroidJavaObject> ("currentActivity"); 

jo.Call ("makePauseUnity");//makePauseUnity是Android里的一个方法

2.Android调Unity

     UnityPlayer.UnitySendMessage("Manager", "ZoomIn", "");

       第一个参数是Game Object对象,所以需要在游戏对象上绑定脚本,第二个参数    是unity中定义的方法名,第三个参数是定义方法的参数(可空)。

注:u3d和Android里的方法名应一样,调用方法都应有一个触发事件;u3d是主工程,所以一般使用第一种方式

关于SDK:不是所有sdk都能接入,取决于sdk里资源的调用方式;无法将资源文件打入jar包,As里可以打成aar包更方便,u3d也可以导入

原文链接:http://www.apkbus.com/blog-820900-61848.html

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消