- Home /
Question by
solid_ · Nov 16, 2015 at 08:41 AM ·
androidandroidpluginnative pluginurlshare
Share URL link with Android native dialog
Hi to all. Im trying to make share button in my app. Here is my code for sharing image and text. Everything works fine, but i want add URL link on my app. I trying to find by myself, but.... Can you help me and add some strings in my code? Thanks.
piblic void Share () {
byte[] bytes = MyImage.EncodeToPNG();
string path = Application.persistentDataPath + "/MyImage.png";
File.WriteAllBytes(path, bytes);
AndroidJavaClass intentClass = new AndroidJavaClass("android.content.Intent");
AndroidJavaObject intentObject = new AndroidJavaObject("android.content.Intent");
intentObject.Call<AndroidJavaObject>("setAction", intentClass.GetStatic<string>("ACTION_SEND"));
intentObject.Call<AndroidJavaObject>("setType", "image/*");
intentObject.Call<AndroidJavaObject>("putExtra", intentClass.GetStatic<string>("EXTRA_SUBJECT"), "Media Sharing ");
intentObject.Call<AndroidJavaObject>("putExtra", intentClass.GetStatic<string>("EXTRA_TITLE"), "Media Sharing ");
intentObject.Call<AndroidJavaObject>("putExtra", intentClass.GetStatic<string>("EXTRA_TEXT"), "Media Sharing Android Demo");
AndroidJavaClass uriClass = new AndroidJavaClass("android.net.Uri");
AndroidJavaClass fileClass = new AndroidJavaClass("java.io.File");
AndroidJavaObject fileObject = new AndroidJavaObject("java.io.File", path);
AndroidJavaObject uriObject = uriClass.CallStatic<AndroidJavaObject>("fromFile", fileObject);
bool fileExist = fileObject.Call<bool>("exists");
Debug.Log("File exist : " + fileExist);
if (fileExist) intentObject.Call<AndroidJavaObject>("putExtra", intentClass.GetStatic<string>("EXTRA_STREAM"), uriObject);
AndroidJavaClass unity = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject currentActivity = unity.GetStatic<AndroidJavaObject>("currentActivity");
currentActivity.Call("startActivity", intentObject);
}
Comment
Would like to know as well how to share a screenshot with a link to my app on facebook using this native method.
Your answer
Follow this Question
Related Questions
How do you determine the Android Architecture during runtime? 1 Answer
arm64 libraries throw warning "Cannot auto detect architecture for Android plugin" 1 Answer
How to use multiple unity module or unityLibrary into native android application 0 Answers
android time cheat plugin problem with broadcastreceiver 1 Answer
Share Button 3 Answers