I want to share just simple text using UIActivityViewController I am using swift, with xcode 6.3 The code is very simple, work great for photos, but not just text, I don't want to include any web URL with the objectsToShare, just clean text Here is the code:
var objectsToShare: ["some text to share"]!
let activityVC = UIActivityViewController(activityItems: objectsToShare, applicationActivities: nil)
//handler for completed task
activityVC.completionHandler = {(activityType, completed:Bool) in
if !completed {
println("cancelled")
return
}
reportCompleted() //report to server it's done.
}
//Excluded Activities Code
activityVC.excludedActivityTypes = [UIActivityTypeAirDrop, UIActivityTypeAddToReadingList, UIActivityTypeCopyToPasteboard ]
//activate the share view
self.presentViewController(activityVC, animated: true, completion: {
(complete) in
println(complete)
})
Now I know that it's all depends on the user have Facebook - not only on his phone, but also on his setting. (I tried that directly from my phone 6, which has Facebook setting, and not from the simulator) This code once worked fine, and still working good for images, and not text, but from some reason, it stop working for text sharing, Maybe the text itself has something to do with, maybe my code is not good, or maybe Facebook, change something.
Thank you for any thought about the subject.
To make thing more strange I found 2 more strange things.
- The code of publish text is working on a simulator (as long as you add in the setting facebook)
- If I add to the web url it also work (in device) if I remove the web url it is not working.
//code that work:
var myWebsite = NSURL(string: "http://www.someurl.com/")
let textToShare = "Swift is awesome! Check out this website about it!"
objectsToShare = [textToShare , myWebsite!]
//continue regular.
//code that doesn't work:
let textToShare = "Swift is awesome! Check out this website about it!"
objectsToShare = [textToShare ]