/// <summary> /// Open Instagram with the specified image and caption. /// </summary> /// <returns><c>true</c> if Instagram is installed, <c>false</c> otherwise.</returns> /// <param name="image">Image.</param> /// <param name="caption">Caption.</param> public static bool Instagram(UIImage image, string caption = null) { if (!UIApplication.SharedApplication().CanOpenURL(new NSURL("instagram://app"))) { return(false); } // write image to tmp folder NSData data = image.JPEGRepresentation(1f); string filePath = Application.temporaryCachePath + "/" + UUID.Generate() + ".igo"; data.WriteToFile(filePath, true); _documentIC = UIDocumentInteractionController.InteractionController(new NSURL(filePath, false)); _documentIC.UTI = "com.instagram.exclusivegram"; if (caption != null) { var annotation = new Dictionary <object, object>(); annotation["InstagramCaption"] = caption; _documentIC.annotation = annotation; } var rootView = UIApplication.deviceRootViewController.view; _documentIC.PresentOpenInMenu(new Rect(0, 0, 1, 1), rootView, true); return(true); }