Exemple #1
0
        public static string GetVersionName(string pkgName = "")
        {
            try
            {
#if UNITY_ANDROID
                AndroidJavaClass  jcPlayer    = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
                AndroidJavaObject joActivity  = jcPlayer.GetStatic <AndroidJavaObject>("currentActivity");
                string            versionName = "";
                if (pkgName == "")
                {
                    versionName = joActivity.Call <string>("getVersionName");
                }
                else
                {
                    versionName = joActivity.Call <string>("getVersionName", pkgName);
                }
                return(versionName);
#endif
            }
            catch (System.Exception e)
            {
            }
            return("");
        }
Exemple #2
0
        public EquippableVG(AndroidJavaObject jniEquippableVG)
            : base(jniEquippableVG)
        {
            int emOrdinal = jniEquippableVG.Call <AndroidJavaObject>("getEquippingModel").Call <int>("ordinal");

            switch (emOrdinal)
            {
            case 0:
                this.Equipping = EquippingModel.LOCAL;
                break;

            case 1:
                this.Equipping = EquippingModel.CATEGORY;
                break;

            case 2:
                this.Equipping = EquippingModel.GLOBAL;
                break;

            default:
                this.Equipping = EquippingModel.CATEGORY;
                break;
            }
        }
Exemple #3
0
            // Method must be lowercase to match Android method signature.
            public void onFinishedSessionTrackingFailed(AndroidJavaObject sessionFailureData)
            {
                if (callback == null)
                {
                    return;
                }
                if (sessionFailureData == null)
                {
                    return;
                }

                AdjustSessionFailure adjustSessionFailure = new AdjustSessionFailure();

                adjustSessionFailure.Adid = sessionFailureData.Get <string>(AdjustUtils.KeyAdid) == "" ?
                                            null : sessionFailureData.Get <string>(AdjustUtils.KeyAdid);
                adjustSessionFailure.Message = sessionFailureData.Get <string>(AdjustUtils.KeyMessage) == "" ?
                                               null : sessionFailureData.Get <string>(AdjustUtils.KeyMessage);
                adjustSessionFailure.WillRetry = sessionFailureData.Get <bool>(AdjustUtils.KeyWillRetry);
                adjustSessionFailure.Timestamp = sessionFailureData.Get <string>(AdjustUtils.KeyTimestamp) == "" ?
                                                 null : sessionFailureData.Get <string>(AdjustUtils.KeyTimestamp);

                try
                {
                    AndroidJavaObject ajoJsonResponse    = sessionFailureData.Get <AndroidJavaObject>(AdjustUtils.KeyJsonResponse);
                    string            jsonResponseString = ajoJsonResponse.Call <string>("toString");
                    adjustSessionFailure.BuildJsonResponseFromString(jsonResponseString);
                }
                catch (Exception)
                {
                    // JSON response reading failed.
                    // Native Android SDK should send empty JSON object if none available as of v4.12.5.
                    // Native Android SDK added special logic to send Unity friendly values as of v4.15.0.
                }

                callback(adjustSessionFailure);
            }
    /// <summary>
    /// Auto-starts video playback
    /// </summary>
    IEnumerator DelayedStartVideo()
    {
        yield return(null);        // delay 1 frame to allow MediaSurfaceInit from the render thread.

        if (!startedVideo)
        {
            Debug.Log("Mediasurface DelayedStartVideo");

            startedVideo = true;
#if (UNITY_ANDROID && !UNITY_EDITOR)
            mediaPlayer = StartVideoPlayerOnTextureId(textureWidth, textureHeight, mediaFullPath);
            mediaRenderer.material.mainTexture = nativeTexture;
#else
            if (movieTexture != null && movieTexture.isReadyToPlay)
            {
                movieTexture.Play();
                if (audioEmitter != null)
                {
                    audioEmitter.Play();
                }
            }
#endif
        }
    }
    void InitPlugin()
    {
        AndroidJavaClass unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");

        activity = unityPlayer.GetStatic <AndroidJavaObject>("currentActivity");

        activity.Call("runOnUiThread", new AndroidJavaRunnable(() => {
            plugin = new AndroidJavaObject(
                "com.example.matthew.webViewPlugin.WebBridge");
        }));

        activity.Call("runOnUiThread", new AndroidJavaRunnable(() => {
            plugin.Call("init");
        }));

        //set callback
        AndroidPluginCallback androidPluginCallback = new AndroidPluginCallback {
            webController = this
        };

        activity.Call("runOnUiThread", new AndroidJavaRunnable(() => {
            plugin.Call("SetUnityBitmapCallback", androidPluginCallback);
        }));
    }
Exemple #6
0
 private AGProgressDialog(Style style, string title, string message, AGDialogTheme theme, int maxValue = 100)
 {
     AGUtils.RunOnUiThread(
         () =>
     {
         var d = CreateDialog(theme);
         d.Call("setProgressStyle", (int)style);
         d.Call("setCancelable", false);
         d.Call("setTitle", title);
         d.Call("setMessage", message);
         d.Call("setCancelable", false);
         if (style == Style.Spinner)
         {
             d.Call("setIndeterminate", true);
         }
         else
         {
             d.Call("setIndeterminate", false);
             d.Call("setProgress", 0);
             d.Call("setMax", maxValue);
         }
         _dialog = d;
     });
 }
#pragma warning restore 0414

        public TileOverlay(AndroidJavaObject ajo)
        {
            _ajo = ajo;
        }
Exemple #8
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="gameObjectName">Game object name.</param>
 public ULiteAndroidWebView(string gameObjectName)
 {
     _ajo = new AndroidJavaObject("com.jing.unity.ulitewebview.ULiteWebView");
     _ajo.Call("registCallBackGameObjectName", gameObjectName);
 }
 public RankingsClientWrapper(AndroidJavaObject javaObject) : base(javaObject)
 {
 }
Exemple #10
0
 public Builder()
 {
     mAndroidBuilder = new AndroidJavaObject("com.ucweb.union.ads.AdRequest$Builder");
 }
Exemple #11
0
            static public bool ForceLoadLowLevelBinary()

            {
                // This is a hack that forces Android to load the .so libraries in the correct order

#if UNITY_ANDROID && !UNITY_EDITOR
                if (FMOD.VERSION.number >= 0x00010500)

                {
                    AndroidJavaObject activity = null;



                    // First, obtain the current activity context

                    using (var actClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer"))

                    {
                        activity = actClass.GetStatic <AndroidJavaObject>("currentActivity");
                    }



                    UnityEngine.Debug.Log("FMOD ANDROID AUDIOTRACK: " + (activity == null ? "ERROR NO ACTIVITY" : "VALID ACTIVITY!"));



                    using (var fmodJava = new AndroidJavaClass("org.fmod.FMOD"))

                    {
                        if (fmodJava != null)

                        {
                            UnityEngine.Debug.Log("FMOD ANDROID AUDIOTRACK: assigning activity to fmod java");



                            fmodJava.CallStatic("init", activity);
                        }

                        else

                        {
                            UnityEngine.Debug.Log("FMOD ANDROID AUDIOTRACK: ERROR NO FMOD JAVA");
                        }
                    }
                }



                FMOD.Studio.UnityUtil.Log("loading binaries: " + FMOD.Studio.STUDIO_VERSION.dll + " and " + FMOD.VERSION.dll);

                AndroidJavaClass jSystem = new AndroidJavaClass("java.lang.System");

                jSystem.CallStatic("loadLibrary", FMOD.VERSION.dll);

                jSystem.CallStatic("loadLibrary", FMOD.Studio.STUDIO_VERSION.dll);
#endif



                // Hack: force the low level binary to be loaded before accessing Studio API

#if !UNITY_IPHONE || UNITY_EDITOR
                FMOD.Studio.UnityUtil.Log("Attempting to call Memory_GetStats");

                int temp1, temp2;

                if (!ERRCHECK(FMOD.Memory.GetStats(out temp1, out temp2)))

                {
                    FMOD.Studio.UnityUtil.LogError("Memory_GetStats returned an error");

                    return(false);
                }



                FMOD.Studio.UnityUtil.Log("Calling Memory_GetStats succeeded!");
#endif



                return(true);
            }
    public void SetJsonValue(string jsonString)
    {
        AndroidJavaObject jsonObject = GetObjectMapper().Call <AndroidJavaObject> ("readValue", jsonString, GetObjectClass());

        GetJavaObject().Call("setValue", jsonObject);
    }
Exemple #13
0
        /// <summary>
        /// Initialize the underlying WebRTC libraries
        /// </summary>
        /// <remarks>
        /// This function is asynchronous, to monitor it's status bind a handler to OnInitialized and OnError
        /// </remarks>
        public Task InitializeAsync(CancellationToken token = default(CancellationToken))
        {
            // Normally would be initialized by Awake(), but in case the component is disabled
            if (_nativePeer == null)
            {
                CreateNativePeerConnection();
            }

            // if the peer is already set, we refuse to initialize again.
            // Note: for multi-peer scenarios, use multiple WebRTC components.
            if (_nativePeer.Initialized)
            {
                return(Task.CompletedTask);
            }

#if UNITY_ANDROID
            AndroidJavaClass systemClass = new AndroidJavaClass("java.lang.System");
            string           libname     = "jingle_peerconnection_so";
            systemClass.CallStatic("loadLibrary", new object[1] {
                libname
            });
            Debug.Log("loadLibrary loaded : " + libname);

            /*
             * Below is equivalent of this java code:
             * PeerConnectionFactory.InitializationOptions.Builder builder =
             *   PeerConnectionFactory.InitializationOptions.builder(UnityPlayer.currentActivity);
             * PeerConnectionFactory.InitializationOptions options =
             *   builder.createInitializationOptions();
             * PeerConnectionFactory.initialize(options);
             */

            AndroidJavaClass  playerClass      = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
            AndroidJavaObject activity         = playerClass.GetStatic <AndroidJavaObject>("currentActivity");
            AndroidJavaClass  webrtcClass      = new AndroidJavaClass("org.webrtc.PeerConnectionFactory");
            AndroidJavaClass  initOptionsClass = new AndroidJavaClass("org.webrtc.PeerConnectionFactory$InitializationOptions");
            AndroidJavaObject builder          = initOptionsClass.CallStatic <AndroidJavaObject>("builder", new object[1] {
                activity
            });
            AndroidJavaObject options = builder.Call <AndroidJavaObject>("createInitializationOptions");

            if (webrtcClass != null)
            {
                webrtcClass.CallStatic("initialize", new object[1] {
                    options
                });
            }
#endif

#if UNITY_WSA && !UNITY_EDITOR
            if (UnityEngine.WSA.Application.RunningOnUIThread())
#endif
            {
                return(RequestAccessAndInitAsync(token));
            }
#if UNITY_WSA && !UNITY_EDITOR
            else
            {
                UnityEngine.WSA.Application.InvokeOnUIThread(() => RequestAccessAndInitAsync(token), waitUntilDone: true);
                return(Task.CompletedTask);
            }
#endif
        }
Exemple #14
0
 public void Init(string name, string title, string url)
 {
     mediaPlayer = new AndroidJavaObject("com.insthync.unityvideoview.VideoViewPlugin");
     SafeCall("Init", name, title, url);
 }
Exemple #15
0
 /// <summary>
 /// Implements the Android onActivityResult.
 /// </summary>
 /// <param name="requestCode">Request code.</param>
 /// <param name="resultCode">Result code.</param>
 /// <param name="data">Data.</param>
 protected void onActivityResult(int requestCode, int resultCode, AndroidJavaObject data)
 {
     if(m_onActivityResult != null)
     {
         Debug.Log("Unity got the Java onActivityResult");
         m_onActivityResult(requestCode, resultCode, data);
     }
 }
Exemple #16
0
 private CCAccount(AndroidJavaObject javaObject)
 {
     this.javaObject = javaObject;
 }
 protected void  OpenWebView(string openurl, string closeurl)
 {
     jo = new AndroidJavaObject("com.playgenesis.vkunityplugin.Initializer");
     jo.Call("OpenWebView", openurl, closeurl);
 }
Exemple #18
0
        // Proxied java calls. Method names are camelCase to match the corresponding java methods.
        public void onStateUpdate(AndroidJavaObject installState)
        {
            var updateState = new AppUpdateState(installState);

            PlayCoreEventHandler.HandleEvent(() => OnStateUpdateEvent.Invoke(updateState));
        }
 public AGSSyncableNumberElement(AndroidJavaObject javaObject) : base(javaObject)
 {
 }
        private void onUnityAdsFinish(string placementId, AndroidJavaObject rawShowResult)
        {
            var showResult = (ShowResult)rawShowResult.Call <int>("ordinal");

            m_Platform?.UnityAdsDidFinish(placementId, showResult);
        }
 public FirebaseAndroidImpl(AndroidJavaObject nativeReference)
     : base(nativeReference)
 {
 }
 private void onUnityAdsError(AndroidJavaObject rawError, string message)
 {
     m_Platform?.UnityAdsDidError(message);
 }
Exemple #23
0
 public Params(AndroidJavaObject androidParams)
 {
     mAndroidParams = androidParams;
 }
 public void SetupPlatform(IPlatform platform)
 {
     m_Platform        = platform;
     m_CurrentActivity = GetCurrentAndroidActivity();
     m_UnityAds        = new AndroidJavaClass("com.unity3d.ads.UnityAds");
 }
Exemple #25
0
 public AdRequest(AndroidJavaObject androidAdRequest)
 {
     mAndroidAdRequest = androidAdRequest;
 }
 public AuthHuaweiId(AndroidJavaObject javaObject) : base(javaObject)
 {
 }
Exemple #27
0
 public AGSSyncableStringList(AndroidJavaObject javaObject) : base(javaObject)
 {
 }
Exemple #28
0
 public static LatLng FromAJO(AndroidJavaObject ajo)
 {
     return(JniToolkitUtils.IsAndroidRuntime
                         ? new LatLng(ajo.GetDouble("latitude"), ajo.GetDouble("longitude"))
                         : new LatLng(0, 0));
 }
 public AndroidJavaObjectProxy(AndroidJavaObject baseJavaObject)
 {
     this.baseJavaObject = baseJavaObject;
     InitDict();
 }
Exemple #30
0
 public bool onMarkerClick(AndroidJavaObject circleAJO)
 {
     GoogleMapsSceneHelper.Queue(() => _onMarkerClick(new Marker(circleAJO)));
     return(_defaultClickBehaviour);
 }
Exemple #31
0
 internal void RunOnUiThread(System.Action action)
 {
     using (AndroidJavaObject activity = GetActivity()) {
         activity.Call("runOnUiThread", new AndroidJavaRunnable(action));
     }
 }
Exemple #32
0
 public static void SetCustomProperties(AndroidJavaObject properties)
 {
     _appCenter.CallStatic("setCustomProperties", properties);
 }