コード例 #1
0
        public bool Initialize()
        {
            callback = new CallbackBridge(null);

            //일단 아까 plugin의 context를 설정해주기 위해
            //유니티 자체의 UnityPlayerActivity를 가져옵시다.
            using (AndroidJavaClass activityClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer"))
            {
                activityContext = activityClass.GetStatic <AndroidJavaObject>("currentActivity");
            }

            //클래스를 불러와줍니다.
            //패키지명 + 클래스명입니다.
            using (pluginClass = new AndroidJavaClass("com.example.myunityplugin.MyUnityPluginBridge"))
            {
                if (pluginClass != null)
                {
                    //아까 싱글톤으로 사용하자고 만들었던 static instance를 불러와줍니다.
                    pluginClassInstance = pluginClass.CallStatic <AndroidJavaObject>("instance");
                    //Context를 설정해줍니다.
                    pluginClassInstance.Call("setContext", activityContext);
                    //Initialize
                    pluginClassInstance.Call <bool>("Initialize", callback);
                }
            }

            if (activityContext != null && pluginClass != null && pluginClassInstance != null)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
コード例 #2
0
 public GarlicWebviewAndroidImpl()
 {
     callback      = new CallbackBridge(null);
     pluginClass   = new AndroidJavaClass(fullClassName);
     unityActivity = GetUnityActivity();
 }