在Xcode中,UIActivityViewController不显示任何选项,如在社交媒体上共享,例如在Facebook,Twitter等上共享

时间:2017-04-06 01:37:29

标签: swift xcode uiactivityviewcontroller

我尝试在我的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以及其他社交媒体选项出现在活动视图控制器中? 谢谢

1 个答案:

答案 0 :(得分:1)

您已正确编码。

有一个excludedActivityTypes属性,您可以在其中编码您想要排除的内容,但不会排除任何可用设备上可用的内容(意味着如果FaceBook或Twitter不是在设备上,它不会)。由于您使用的是模拟器,因此不会显示这些选项。

另一方面,调试控制台暗示您可能希望删除许多“信息”。如果是这样,选择你的构建方案(在Xcode的左上角),选择“Edit Scheme”,并添加以下环境变量:

名称: OS_ACTIVITY_MODE

值:停用