using UnityEngine;using System.Collections;using System.IO;public class NativeShareScript : MonoBehaviour{public GameObject CanvasShareObj;private bool isProcessing = false;private bool isFocus = false;public void OnShareBtnPress(){if (!isProcessing){CanvasShareObj.SetActive(true);StartCoroutine(ShareScreenshot());}}IEnumerator ShareScreenshot(){isProcessing = true;yield return new WaitForEndOfFrame();ScreenCapture.CaptureScreenshot("screenshot.png", 2);string destination = Path.Combine(Application.persistentDataPath, "screenshot.png");yield return new WaitForSeconds(0.3f); //WaitForSecondsRealtime(0.3f);if (!Application.isEditor){AndroidJavaClass intentClass = new AndroidJavaClass("android.content.Intent");AndroidJavaObject intentObject = new AndroidJavaObject("android.content.Intent");intentObject.Call<AndroidJavaObject>("setAction", intentClass.GetStatic<string>("ACTION_SEND"));AndroidJavaClass uriClass = new AndroidJavaClass("android.net.Uri");AndroidJavaObject uriObject = uriClass.CallStatic<AndroidJavaObject>("parse", "file://" + destination);intentObject.Call<AndroidJavaObject>("putExtra", intentClass.GetStatic<string>("EXTRA_STREAM"), uriObject);intentObject.Call<AndroidJavaObject>("putExtra", intentClass.GetStatic<string>("EXTRA_TEXT"), "Can you beat my score?");intentObject.Call<AndroidJavaObject>("setType", "image/jpeg");AndroidJavaClass unity = new AndroidJavaClass("com.unity3d.player.UnityPlayer");AndroidJavaObject currentActivity = unity.GetStatic<AndroidJavaObject>("currentActivity");AndroidJavaObject chooser = intentClass.CallStatic<AndroidJavaObject>("createChooser", intentObject, "Share to developer.");currentActivity.Call("startActivity", chooser);yield return new WaitForSeconds(1f); //WaitForSecondsRealtime(1f);}yield return new WaitUntil(() => isFocus);CanvasShareObj.SetActive(false);isProcessing = false;}private void OnApplicationFocus(bool focus){isFocus = focus;}}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。