Re: [问题] 请问如何在Unity上使用java class

楼主: euph (咬咬嚼嚼猴子口味)   2014-08-14 18:10:43
借此标题问一下相关问题
现在我手边有两个程式
一个是我方UNITY3D开发的主APP(对应IOS及ANDROID)
另一个是要新增进去的SDK(ANDROID/JAVA开发)
就SDK开发方的说法 要新增的方法似乎有两种
一种是将UNITY这边的主程式输出为ANDROID工程 (大陆用语的工程是什么啊? 专案吗?)
然后在将SDK导入ANDROID工程这里 然后IOS版要另外开发
另外一种方法是我自己GOOGLE来的
就是将ANDROID SDK补上UNITY的接口然后打包成JAR档
然后利用PLUGIN的方法放给UNITY里面去吃 有点像本篇原文的接法(下方)
请问板上有经验的乡民大人 对这两种方法有没有什么比较好的建议
第二种方法是不是在整合进UNITY之后 就算是推出IOS版也可以正常运行呢??
目前我的倾向是第二种方法 只是我对ANDROID/JAVA开发比较不太熟
不知道该怎么样把SDK补上UNITY端的接口
是利用Eclipse开起新专案然后 将SDK放入吗?
(我大概就卡在这边 不知道怎把SDK的程式汇入专案里)
还请前辈们能给予一点建议 感谢感谢
※ 引述《MiaShopgirl ( )》之铭言:
: 最近刚好有用到,虽然lag很久XD
: 先做个Activity, 把要用的method放进去,弄成jar
: 放在Unity project folder下
: \Assets\Plugins\Android\yourJarHere.jar
: 在cs里面写只呼叫jar内Activity的method
: static AndroidJavaClass yourActivity;
: static AndroidJavaClass unityPlayer;
: static AndroidJavaObject currentActivity;
: public static void YourMethodName(){
: Debug.Log("Calling yourActivity");
: yourActivity = new AndroidJavaClass("your.package.name.SomeActivity");
: unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
: currentActivity = unityPlayer.GetStatic<AndroidJavaObject>("currentActivity");
: yourActivity.CallStatic("NameOfTheMethodInYourActivity", currentActivity);
: Debug.Log("Called yourActivity");
: }
: 大致上就这样~
: 有家广告商(inneractive)很佛心的写好 sample (接他们家的广告)
: 还有详细的说明,参考如下:
: https://inneractive.jira.com/wiki/display/DevWiki/Unity+Android+SDK+guidelines

Links booklink

Contact Us: admin [ a t ] ucptt.com