我尝试在我的Xcode项目中加入UIActivityViewController
(swift),但是当我在模拟器中运行应用程序时,UIActivityViewController
没有包含任何共享内容的选项(我曾经想过你包括它你可以获得所有选项,如“在Facebook上分享”和“在Twitter上分享”
这是我的代码:
import UIKit
class ViewController: UIViewController {
@IBAction func shareTextButton(_ sender: UIButton) {
let text = "This is some text that I want to share."
let textToShare = [ text ]
let activityViewController = UIActivityViewController(activityItems: textToShare, applicationActivities: nil)
activityViewController.popoverPresentationController?.sourceView = self.view // so that iPads won't crash
self.present(activityViewController, animated: true, completion: nil)
}
@IBAction func shareImageButton(_ sender: UIButton) {
let image = UIImage(named: "Portrait")
let imageToShare = [ image! ]
let activityViewController = UIActivityViewController(activityItems: imageToShare, applicationActivities: nil)
activityViewController.popoverPresentationController?.sourceView = self.view // so that iPads won't crash
self.present(activityViewController, animated: true, completion: nil)
}
}
这是调试控制台中出现的内容:
2017-04-05 18:32:34.902268-0700 AA [26541:4024236] [MC]系统组 systemgroup.com.apple.configurationprofiles路径的容器是 /Users/cuiboy/Library/Developer/CoreSimulator/Devices/55F2DE69-127A-4F0E-871F-4E431586D8AF/data/Containers/Shared/SystemGroup/systemgroup.com.apple.configurationprofiles objc [26541]:类PLBuildVersion在两者中实现 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworks/AssetsLibraryServices.framework/AssetsLibraryServices (0x11a182cc0)和 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworks/PhotoLibraryServices.framework/PhotoLibraryServices (0x119f996f0)。将使用两者之一。哪一个未定义。 2017-04-05 18:32:35.141398-0700 AA [26541:4024236] [核心] SLComposeViewController extensionIdentifierForActivityType: com.apple.UIKit.activity.PostToTwitter => com.apple.share.Twitter.post 2017-04-05 18:32:35.141532-0700 AA [26541:4024236] [核心] SLComposeViewController extensionIdentifierForActivityType: com.apple.UIKit.activity.PostToFacebook => com.apple.share.Facebook.post 2017-04-05 18:32:35.141629-0700 AA [26541:4024236] [核心] SLComposeViewController extensionIdentifierForActivityType: com.apple.UIKit.activity.PostToWeibo => com.apple.share.SinaWeibo.post 2017-04-05 18:32:35.141728-0700 AA [26541:4024236] [核心] SLComposeViewController extensionIdentifierForActivityType: com.apple.UIKit.activity.TencentWeibo => com.apple.share.TencentWeibo.post 2017-04-05 18:32:35.141801-0700 AA [26541:4024236] [核心] SLComposeViewController extensionIdentifierForActivityType: com.apple.UIKit.activity.PostToFlickr => com.apple.share.Flickr.post 2017-04-05 18:32:35.141904-0700 AA [26541:4024236] [核心] SLComposeViewController extensionIdentifierForActivityType: com.apple.UIKit.activity.PostToVimeo => com.apple.share.Vimeo.post 2017-04-05 18:32:35.325040-0700 AA [26541:4024236] [MC]阅读 私人有效用户设置。
有人知道出了什么问题吗?我可以做些什么来使Facebook和Twitter以及其他社交媒体选项出现在活动视图控制器中? 谢谢
答案 0 :(得分:1)
您已正确编码。
有一个excludedActivityTypes
属性,您可以在其中编码您想要排除的内容,但不会排除任何可用设备上可用的内容(意味着如果FaceBook或Twitter不是在设备上,它不会)。由于您使用的是模拟器,因此不会显示这些选项。
另一方面,调试控制台暗示您可能希望删除许多“信息”。如果是这样,选择你的构建方案(在Xcode的左上角),选择“Edit Scheme”,并添加以下环境变量:
名称: OS_ACTIVITY_MODE
值:停用