gpt4 book ai didi

ios - 获取设备 ID 时出现钥匙串(keychain)错误

转载 作者:行者123 更新时间:2023-11-29 13:02:17 25 4
gpt4 key购买 nike

  • 我正在从事一个需要与 cocoalibspotify 集成的项目。我有一些针对导入 CocoaLibSpotify.h 的类的单元测试用例。这些测试用例失败,堆栈跟踪如下:

NSString* base::deviceIdFromKeychain()() 断言失败,/Users/spotify-buildagent/buildAgent/work/1e0ce8a77adfb2dc/client/base/_apple/_ios/os_ios.mm:2872013-10-20 11:14:03.505 * 由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“获取设备 ID 时出现钥匙串(keychain)错误,不可恢复”* 首先抛出调用栈:(0x30f0cf53 0x3b2366af 0x30f0ce2d 0x318b41df 0x2d142f 0x2d1a09 0x2ce6db 0x17b1b5 0x1798b3 0x30ed81b9 0x30ed753b 0x30ed5e45 0x30e4 0ce7 0x30e84803 0x179b1d 0x318efe27 0x3b85dc1d 0x3b85db8f 0x3b85bc90)libc++abi.dylib:以 NSException 类型的未捕获异常终止

抛出异常的方法在SPSession.m类中:CFRunLoopRun();

+(void)runBackgroundRunloop:(dispatch_block_t)runLoopReadyBlock {
@autoreleasepool {
[NSThread currentThread].name = @"com.spotify.CocoaLibSpotify";
[runloopReadyLock lock];
libspotify_runloop = CFRunLoopGetCurrent();
sleep(1);
libspotifyThread = [NSThread currentThread];

// Use a custom, no-op run loop source to keep the loop alive and fast.
CFRunLoopSourceContext libspotify_source_context;
memset(&libspotify_source_context, 0, sizeof(CFRunLoopSourceContext));
libspotify_runloop_source = CFRunLoopSourceCreate(NULL, 0, &libspotify_source_context);
CFRunLoopAddSource(libspotify_runloop, libspotify_runloop_source, kCFRunLoopDefaultMode);

[runloopReadyLock unlockWithCondition:1];
CFRunLoopRun();

CFRelease(libspotify_runloop_source);
CFRelease(libspotify_runloop);
libspotify_runloop_source = NULL;
libspotify_runloop = NULL;
libspotifyThread = nil;
}
}

我不知道是什么原因导致错误或如何修复它。有人对此有任何想法吗?

谢谢,

最佳答案

确保您使用的是最新版本的 CocoaLibSpotify (2.4.5)。

另外,单元测试是如何运行的?您的应用程序是否正常运行? CocoaLibSpotify 自己的单元测试套件是否运行?值得注意的是,在设备解锁之前,CocoaLibSpotify 无法访问钥匙串(keychain)。

关于ios - 获取设备 ID 时出现钥匙串(keychain)错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19481229/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com