ZoeRobotIngles/Assets/Scripts/Config/ConfigController.cs

103 lines
2.9 KiB
C#

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
public class ConfigController : MonoBehaviour
{
public GameObject allignBtns, allignMicros;
bool showMics = false;
Coroutine running = null;
void Start()
{
allignMicros.SetActive(false);
}
public void GoToMicros()
{
allignBtns.SetActive(false);
allignMicros.SetActive(true);
MicroPhoneChoose_Contorl.instance.ListMicros();
showMics = true;
}
public void GoBack() {
if (showMics)
{
allignBtns.SetActive(true);
allignMicros.SetActive(false);
showMics = false;
}
else
{
if (running == null)
{
AsyncOperation obj = SceneManager.LoadSceneAsync("Transition", LoadSceneMode.Additive);
obj.completed += (asyncOperation) =>
{
//Do stuff here with returned value asyncOperation
GameObject.Find("Canvas - Transition").GetComponent<Transition_Controller>().StartLoadingScene("SampleScene");
running = StartCoroutine(WaitToDeactivateScene());
};
}
}
}
IEnumerator WaitToDeactivateScene()
{
yield return new WaitForSecondsRealtime(.6f);
running = null;
SceneManager.UnloadSceneAsync("Config", UnloadSceneOptions.UnloadAllEmbeddedSceneObjects);
}
#region Cola Activities
/* android.settings.WIFI_SETTINGS
* android.settings.DATE_SETTINGS
* android.settings.BLUETOOTH_SETTINGS
*/
#endregion
public void OpenAndroidSettings(string whichSettings)
{
StartCoroutine(OpenSettingsWait(whichSettings));
}
IEnumerator OpenSettingsWait(string activity)
{
yield return new WaitForSecondsRealtime(0.8f);
try
{
#if UNITY_ANDROID
using (var unityClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer"))
using (AndroidJavaObject currentActivityObject = unityClass.GetStatic<AndroidJavaObject>("currentActivity"))
{
using (var uriClass = new AndroidJavaClass("android.net.Uri"))
//using (AndroidJavaObject uriObject = uriClass.CallStatic<AndroidJavaObject>("fromParts", "package", packageName, null))
using (var intentObject = new AndroidJavaObject("android.content.Intent", activity))
{
intentObject.Call<AndroidJavaObject>("addCategory", "android.intent.category.DEFAULT");
intentObject.Call<AndroidJavaObject>("setFlags", 0x10000000);
currentActivityObject.Call("startActivity", intentObject);
}
}
#endif
}
catch (Exception ex)
{
Debug.LogException(ex);
}
}
}