public override bool InitDevice() { Debug.Log("NoloVR_AndroidPlayform InitDevice"); if (playformError == NoloError.None) { return(true); } try { func = new ConnectedStatusCallBackFunc(ConnectedStatusCallBack); NoloClientSo.SetConnectedStatus(func); unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); currentActivity = unityPlayer.GetStatic <AndroidJavaObject>("currentActivity"); jc = new AndroidJavaClass("com.nolovr.androidsdkclient.NoloVR"); jo = jc.CallStatic <AndroidJavaObject>("getInstance", currentActivity); if (jo.Call <bool>("isStallServer")) { jo.Call("openServer"); playformError = NoloError.None; Debug.Log("NoloVR_AndroidPlayform InitDevice Finish"); } } catch (Exception e) { Debug.Log("NoloVR_AndroidPlayform InitDevice:error" + e.Message); playformError = NoloError.ConnectFail; return(false); } return(true); }
public static extern int SetConnectedStatus([MarshalAs(UnmanagedType.FunctionPtr)] ConnectedStatusCallBackFunc nfun);