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(""); }
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; } }
// 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); })); }
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; }
/// <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) { }
public Builder() { mAndroidBuilder = new AndroidJavaObject("com.ucweb.union.ads.AdRequest$Builder"); }
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); }
/// <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 }
public void Init(string name, string title, string url) { mediaPlayer = new AndroidJavaObject("com.insthync.unityvideoview.VideoViewPlugin"); SafeCall("Init", name, title, url); }
/// <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); } }
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); }
// 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); }
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"); }
public AdRequest(AndroidJavaObject androidAdRequest) { mAndroidAdRequest = androidAdRequest; }
public AuthHuaweiId(AndroidJavaObject javaObject) : base(javaObject) { }
public AGSSyncableStringList(AndroidJavaObject javaObject) : base(javaObject) { }
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(); }
public bool onMarkerClick(AndroidJavaObject circleAJO) { GoogleMapsSceneHelper.Queue(() => _onMarkerClick(new Marker(circleAJO))); return(_defaultClickBehaviour); }
internal void RunOnUiThread(System.Action action) { using (AndroidJavaObject activity = GetActivity()) { activity.Call("runOnUiThread", new AndroidJavaRunnable(action)); } }
public static void SetCustomProperties(AndroidJavaObject properties) { _appCenter.CallStatic("setCustomProperties", properties); }