禁用 CloudKit 调试日志

Car*_*arl 8 ios cloudkit nspersistentcloudkitcontainer

NSPersistentCloudKitContainer在我的 iOS 应用程序中使用数据库。默认情况下,它似乎将所有事件记录到控制台,我假设是出于调试目的。这些消息如下所示:

CoreData: CloudKit: CoreData+CloudKit: -[PFCloudKitExportContext processAnalyzedHistoryInStore:inManagedObjectContext:error:]_block_invoke_4(201): Finished processing analyzed history with 1 metadata objects to create, 0 deleted rows without metadata.
CoreData: CloudKit: CoreData+CloudKit: -[PFCloudKitExporter exportIfNecessary]_block_invoke_2(137): <PFCloudKitExporter: 0x282a785f0>: Found 2 objects needing export.
CoreData: warning: CoreData+CloudKit: -[PFCloudKitExporter exportOperationFinished:withSavedRecords:deletedRecordIDs:operationError:](384): Modify records finished: (
    etc...
Run Code Online (Sandbox Code Playgroud)

它们是恒定的并且妨碍了其他调试消息,有什么方法可以禁用它们?

小智 27

我使用这两个参数来减少输出(启动时传递的参数):

禁用 CoreData 调试输出:

-com.apple.CoreData.Logging.stderr 0
Run Code Online (Sandbox Code Playgroud)

禁用 CloudKit 调试输出

-com.apple.CoreData.CloudKitDebug 0
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

产品 > 方案 > 编辑方案

  • 通过这些设置,您仍然可以在控制台中看到一些重要的 CloudKit 日志整体。只需搜索 CK 或您的应用程序 ID。我将它们与 -com.apple.CoreData.ConcurrencyDebug 1 一起使用 (4认同)