1

使用 SFContentBlockerManager.reloadContentBlockerWithIdentifie 加载 json 文件时出现以下错误

可选(错误域=ContentBlockerErrorDomain 代码=1“(空)”)

// This is my code to get attachment 

let documentDirectoryURL = try! NSFileManager.defaultManager().URLForDirectory(.DocumentDirectory, inDomain: .UserDomainMask, appropriateForURL: nil, create: true)
let jsonFileUrl =  documentDirectoryURL.URLByAppendingPathComponent("phantom.json")
let data = NSData(contentsOfURL: jsonFileUrl)
let attachment = NSItemProvider(item: data,typeIdentifier: kUTTypeJSON as String)
let item = NSExtensionItem()
item.attachments = [attachment]
context.completeRequestReturningItems([item], completionHandler: nil);

// Following code for SFContentBlockerManager
try! SFContentBlockerManager.reloadContentBlockerWithIdentifier("\(NSBundle.mainBundle().bundleIdentifier).PhantomBlocker", completionHandler: {(error) in print(error)})
4

2 回答 2

1

我在运行一个开源项目时遇到了同样的问题,而不是在定期尝试后我知道该应用程序正在使用“Bundle Identifier”,所以我在代码中使用它并开始运行。

于 2016-04-06T11:38:50.243 回答
0

我猜你可能在你的json文件中犯了一个错误。如果json文件中的任何类型的错误 Xcode 都会抛出此错误。有一些网站可以验证您的文件。这应该可以帮助您解决问题。

例如:

  1. http://jsonlint.com
  2. https://jsonformatter.curiousconcept.com
于 2015-10-28T16:13:55.240 回答