Programming/Unity3D
Unity3D Android Plugin 연동
Nine99
2014. 4. 8. 22:49
기본적으로 http://devmae.tistory.com/358 를 참고함.
매칭시켜야 할 부분을 빨간색으로 표시함.
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.Nwn.NaverLogin" android:theme="@android:style/Theme.NoTitleBar" android:versionName="1.0" android:versionCode="1" android:installLocation="preferExternal"> <supports-screens android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" android:xlargeScreens="true" android:anyDensity="true" /> <application android:icon="@drawable/app_icon" android:label="@string/app_name" android:debuggable="true"> <activity android:name="com.Nwn.NaverLogin.NaverLoginActivity" android:label="@string/app_name" android:screenOrientation="portrait" android:launchMode="singleTask" android:configChanges="mcc|mnc|locale|touchscreen|keyboard|keyboardHidden|navigation|orientation|screenLayout|uiMode|screenSize|smallestScreenSize|fontScale"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> <meta-data android:name="unityplayer.UnityActivity" android:value="true" /> <meta-data android:name="unityplayer.ForwardNativeEventsToDalvik" android:value="false" /> </activity> </application> <uses-sdk android:minSdkVersion="9" android:targetSdkVersion="18" /> <uses-feature android:glEsVersion="0x00020000" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> </manifest> |
using UnityEngine; using System.Collections; public class NaverLogin : MonoBehaviour { private AndroidJavaObject ajObj; private string str; private int numSend; void Awake() { AndroidJavaClass ajClass = new AndroidJavaClass( "com.unity3d.player.UnityPlayer" ); this.ajObj = ajClass.GetStatic<AndroidJavaObject>( "currentActivity" ); this.numSend = 0; } // Use this for initialization void Start () { } // Update is called once per frame void Update () { this.ajObj.Call ( "ToJava", this.numSend++.ToString() ); } public void ToUnity( string strSend ) { this.str = strSend; } void OnGUI () { GUI.Label ( new Rect( 0, 0, 300, 300 ), str ); } }
|
package com.Nwn.NaverLogin; import android.os.Bundle; import com.unity3d.player.UnityPlayer; import com.unity3d.player.UnityPlayerActivity; public class NaverLoginActivity extends UnityPlayerActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //setContentView(R.layout.activity_naver_login); } public void ToJava( String strSend ) { SendString( strSend ); } public void SendString( String strSend ) { // NaverLogin GameObject에 Send Message 함 UnityPlayer.UnitySendMessage( "NaverLogin", "ToUnity", strSend ); } } |