unity呼び出しandroid関数
4609 ワード
, AndroidManifest.xml, Activity 。u3d , , , 。
unity , ?.apk , win win rar 。 apk 。 , apk, AndroidMutiltool( ) 。 unity apk andoridMuting ( )。
,u3d AndroidManfiest.xml。 AndroidManifest.xml ? , Androidmanifest.xml , , 。
下面开始切入正题。
unity android ? :
、 Activity。( AndroidManifest.xml unity Activity UnityPlayerNativeActivity)。 activity , AndroidManifest.xml。 unity java , MainActivity , jar , unity。
、 Activity 。unity Activity, Activity activity , jni activity 。
AndroidJavaClass jc = new AndroidJavaClass ("com.unity3d.player.UnityPlayer"); AndroidJavaObject jo = jc.GetStatic
("currentActivity"); , 。
1、 eclipse, android test001。 (package name) 。
2、 unity android classes.jar test001 libs 。classes.jar : \Program Files (x86)\Unity\Editor\Data\PlaybackEngines\androidplayer\bin 。
3、 classes.jar java build path。
。① classes.jar -> build path -> add to build path。② -> ->java build path -> libraries -> addJars
4、 MainActivity.java。
:setContentView(...) , android hello world 。
5、 。
6、 .class 。
/bin/classes。 com , .class 。 com 。 classes jar -cvf myclasses.jar com。
7、 unity test001, Assets
myclasses.jar bin 。 AndroidManifest.xml Android 。 res Android 。
8、 Assets c# , 。
using UnityEngine; using System.Collections; public class test : MonoBehaviour { private AndroidJavaObject m_jo; // Use this for initialization void Start () { Debug.Log ("start***"); AndroidJavaClass jc = new AndroidJavaClass ("com.unity3d.player.UnityPlayer"); m_jo = jc.GetStatic
("currentActivity"); if (m_jo != null) Debug.Log (m_jo); else Debug.Log ("get static object fail ***"); } // Update is called once per frame void Update () { } void OnGUI () { if (GUI.Button (new Rect (100, 100, 100, 50), "test_2")) { Debug.Log ("tset_2"); Debug.Log( "the result is : " + m_jo.Call ("times_2", 5) ); } if (GUI.Button (new Rect (100, 200, 100, 50), "test_3")) { Debug.Log ("tset_3"); Debug.Log( "the result is : " + m_jo.Call ("times_3", 5) ); } } } 9、 。
, BuildSetting -> Player Setting -> other Setting -> Bundle Identifier, ①
10、 log。
log logcat 。 android sdk platform-tools , adb.exe。 ./adb.exe logcat log 。
( xml,myclasses.jar,res/)。 MainActivity.java 。http://download.csdn.net/detail/u012085988/6741421