public void OnMediaReceived(string path) { if (string.IsNullOrEmpty(path)) { path = null; } if (callback != null) { callback(path); callback = null; } IsBusy = false; }
public static void Initialize(NativePhoto.MediaPickCallback callback) { if (IsBusy) { return; } if (instance == null) { instance = new GameObject("GalleryMediaLoad").AddComponent <GalleryMediaLoad>(); DontDestroyOnLoad(instance.gameObject); } instance.callback = callback; instance.nextBusyCheckTime = Time.realtimeSinceStartup + 1f; IsBusy = true; }
private void Update() { if (IsBusy) { if (Time.realtimeSinceStartup >= nextBusyCheckTime) { nextBusyCheckTime = Time.realtimeSinceStartup + 1f; if (_NativePhoto_IsMediaPickerBusy() == 0) { if (callback != null) { callback(null); callback = null; } IsBusy = false; } } } }