在Xcode中,UIActivityViewController不显示任何选项,如在社交媒体上分享,如在Facebook,Twitter等共享
我试过在我的Xcode项目(swift)中包括UIActivityViewController
,但是当我在模拟器中运行应用程序时, UIActivityViewController
不包括共享内容的任何选项(我认为一旦你有它,你可以得到所有的选项,如“在Facebook上共享”和“分享在Twitter”在Xcode中,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年4月5日18:32:AA 34.902268-0700 [26541:4024236] [MC]系统组 为systemgroup.com.apple.configurationprofiles路径容器是 /用户/ cuiboy /库/开发商/ 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)and /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/开发商/软件开发工具包/ iPhoneSimulator.sdk /系统/Library/PrivateFrameworks/PhotoLibraryServices.framework/PhotoLibraryServices (0x119f996f0)。将使用两者之一。哪一个是未定义的。 2017年4月5日18:32:AA 35.141398-0700 [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] [core] 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年4月5日18: 32:35.141728-0700 AA [26541:4024236] [核心] SLComposeViewController extensionIdentifierForActivityType: com.apple.UIKit.activity.TencentWeibo => com.apple.share.TencentWeibo.post 2017年4月5日18:32:35.141801-0700 AA [26541:4024236] [芯] SLComposeViewController extensionIdentifierForActivityType: com.apple.UIKit.activity.PostToFlickr => com.apple.share.Flickr.post 2017年4月5日18:32:AA 35.141904-0700 [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和其他社交媒体选项出现在活动视图控制器中? 谢谢
你有它编码正确。
有一个excludedActivityTypes
属性,你可以编写你想要什么排除,但什么也没有排除任何可用的设备将出现(这意味着如果Facebook或Twitter是不是在设备上,也不会)。由于您正在使用模拟器,因此不会显示这些选项。
在附注上,调试控制台意味着您可能会看到许多您希望删除的“信息”。如果是这样,请选择您的构建方案(在Xcode左上角),选择 “编辑计划”,并添加以下环境变量:
名称:OS_ACTIVITY_MODE
值:禁用
非常感谢你!我在我的iPhone上模拟了它,并且完美运行。非常感谢 –
我想这些选项会出现在真实设备上 –