#if UNITY_ANDROID using UnityEngine; namespace UnityNative.Sharing { public class AndroidUnityNativeSharingAdapter : IUnityNativeSharingAdapter { /// /// Android package name and class /// private const string AndroidClass = "com.UnityNative.Sharing.UnityNativeSharingAdapter"; /// /// Android method name to call to share a screenshot with text /// private const string ShareScreenshotWithTextMethodName = "ShareScreenshotAndText"; /// /// Android method name to call to share text /// private const string ShareTextMethodName = "ShareText"; /// /// UnityNativeSharingAdapter.java /// private readonly AndroidJavaClass sharingJavaClass; public AndroidUnityNativeSharingAdapter() { AndroidJNI.AttachCurrentThread(); sharingJavaClass = new AndroidJavaClass(AndroidClass); } public void ShareScreenshotAndText(string shareText, string filePath, bool showShareDialogBox = true, string shareDialogBoxText = "Select App To Share With", string mimeType = "image/*") { AndroidJNI.AttachCurrentThread(); sharingJavaClass.CallStatic(ShareScreenshotWithTextMethodName, shareText, filePath, showShareDialogBox, shareDialogBoxText, mimeType); } public void ShareText(string shareText, bool showShareDialogBox = true, string shareDialogBoxText = "Select App To Share With") { AndroidJNI.AttachCurrentThread(); sharingJavaClass.CallStatic(ShareTextMethodName, shareText, showShareDialogBox, shareDialogBoxText); } } } #endif //UNITY_ANDROID