4
action sheet
で生成されたサムネイルにios共有拡張機能が使用されるようにしようとしています。imageURL
共有の拡張子からimageURLを取得
URL
を検索していますが、imageURL
を取得する方法がわかりません。ここで
は、私が無駄にkUTTypeImage
にtypeIdentifier
を変更しようとしましたが、私は通常のURL
を取得する方法
if let item = extensionContext?.inputItems.first as? NSExtensionItem {
if let itemProvider = item.attachments?.first as? NSItemProvider {
if itemProvider.hasItemConformingToTypeIdentifier(kUTTypeItem as String) {
itemProvider.loadItem(forTypeIdentifier: kUTTypeItem as String, options: nil, completionHandler: { (url, error) -> Void in
if let shareURL = url as? NSURL {
let components = URLComponents(url:shareURL as URL, resolvingAgainstBaseURL: true)
if let host = components?.host { self.shareTitle = host }
self.shareURL = shareURL.absoluteString!
self.POSTShareData(completion: nil)
}
self.extensionContext?.completeRequest(returningItems: [], completionHandler:nil)
})
}
}
}
です。私はinfo.plist
をNSExtensionActivationRule
〜TRUEPREDICATE
に設定して、私が検索できるものを見ています。私は多分もっと明示的にする必要があると思っています.plist
??
私はこの問題を回避するには、あなたが
例えば共通UserDefaultsにそのURLのリンクを保存することができるということですのiOS 9.3
にアプリや拡張機能がアクセス、私はちょうどURLシェアの拡張子が使用したい画像をダウンロードする必要はありません。あなたが提供したリンクで、私は彼がどのようにURLを取得したのか見ていない。 – Ro4ch
これは達成可能かどうかわかりません。 NSItemProviderの 'previewImageHandler'は、URLまたはDataオブジェクトを返すことができ、サムネイルを表示するために内部的に使用されますが、技術的には共有ペイロードの一部ではないため、共有拡張では使用できません。 – Palpatim
あなたはURLを文字列に変換してから/で文字列を分割でき、さらに各インデックスを分割することができると思います。おそらく、あなたはURLで使用される拡張機能を入手することができるでしょう。 –