Chrome中的iOS共享扩展

时间:2015-05-05 11:46:35

标签: google-chrome safari ios8-share-extension

刚刚为我的应用添加了分享扩展程序。 它在野生动物园中运作良好。 从Chrome启动它时," ExtensionPreprocessingJS.js"没有被召唤。 因此,不会调用以下代码:

{{1}}

请告知。

3 个答案:

答案 0 :(得分:1)

该行为被记录为Safari选项,而不是适用于每个Web浏览器的内容。

  

在共享扩展程序(在两个平台上)和动作扩展程序(仅限iOS)中,您可以通过要求Safari 运行JavaScript文件并将结果返回到扩展程序来授予用户访问网站内容的权限。

[强调我的]

答案 1 :(得分:0)

尝试将/替换/添加到您的info.plist扩展名

<dict> <key>NSExtensionAttributes</key> <dict> <key>NSExtensionActivationRule</key> <dict> <key>NSExtensionActivationSupportsText</key> <true/> <key>NSExtensionActivationSupportsWebPageWithMaxCount</key> <integer>1</integer> <key>NSExtensionActivationSupportsWebURLWithMaxCount</key> <integer>1</integer> </dict> <key>NSExtensionJavaScriptPreprocessingFile</key> <string>DemoPreprocessor</string> </dict> <key>NSExtensionMainStoryboard</key> <string>MainInterface</string> <key>NSExtensionPointIdentifier</key> <string>com.apple.share-services</string> </dict>

答案 2 :(得分:-1)

不需要那些复杂的东西。这适用于Google Chrome和Safari:

override func viewDidLoad() {
    super.viewDidLoad()

    for item in extensionContext!.inputItems {
        if let attachments = item.attachments {
            for itemProvider in attachments! {
                itemProvider.loadItemForTypeIdentifier("public.url", options: nil, completionHandler: { (object, error) -> Void in
                    if object != nil {
                        println(object) //This is your URL
                    }
                })
            }
        }
    }
}