Swift 在哪里可以找到;日志Dyld API使用情况“;及;“日志库加载”;在XCode 11上?
我想在XCode控制台中禁用日志动态加载程序事件(dyld)的打印。我找到了解决办法。 但是我在XCode 11的产品方案诊断中找不到日志Dyld API用法和日志库加载选项。请帮我找到它们 PS:如果Xcode11中有一个新的进程用于禁用日志,请告诉我 回答:下面的答案中建议了这种分步解决方案。我只是附上这张照片以便更好地理解 动态装载机Swift 在哪里可以找到;日志Dyld API使用情况“;及;“日志库加载”;在XCode 11上?,swift,ios13,xcode11,dyld,dynamic-loading,Swift,Ios13,Xcode11,Dyld,Dynamic Loading,我想在XCode控制台中禁用日志动态加载程序事件(dyld)的打印。我找到了解决办法。 但是我在XCode 11的产品方案诊断中找不到日志Dyld API用法和日志库加载选项。请帮我找到它们 PS:如果Xcode11中有一个新的进程用于禁用日志,请告诉我 回答:下面的答案中建议了这种分步解决方案。我只是附上这张照片以便更好地理解 动态装载机 有人会说,您可以设置环境变量,如DYLD\u PRINT\u api=0,DYLD\u PRINT\u api=false,DYLD\u PRINT\
DYLD\u PRINT\u api=0
,DYLD\u PRINT\u api=false
,DYLD\u PRINT\u api=no
。。。但它不是这样工作的。检查:
else if(strcmp(键,“DYLD\u PRINT\u api”)==0){
gLogAPIs=true;
}
换句话说,当变量存在时,gLogAPIs
为true
。您可以将它设置为任何值,保持为空,如果变量存在,它将始终处于启用状态
Xcode方案
此设置的UI已在Xcode 11中消失,但仍可以在方案文件中。假设您有一个简单的项目Foo
。该方案位于Foo/Foo.xcodeproj/xcshareddata/xcschemes/Foo.xcscheme
1)。这是一个XML文件。退出Xcode并在任何编辑器中打开此文件,然后搜索LaunchAction
元素
将有:
元素属性,如LaunchAction
2)或enabledAddressSanitizer=“YES”
环境变量集DYLD\ux…
1) 确切的路径可能会有所不同,因为它可以将方案包括在工作区、项目等中 2) 我没有安装以前版本(10)的Xcode,无法检查确切的名称,但它应该在那里,很明显它是哪一个。我使用的这个是地址消毒器复选框。如果你找到确切的名字,让我知道,我会更新这个答案,或者自己回答,我会删除这个
更新 上面的说明帮助OP找到确切的XML元素名称。必须删除:
元素LaunchAction/AdditionalOptions/AdditionalOption
- 其中,
是键
和/或DYLD\u PRINT\u库
DYLD\u PRINT\u api
请不要在24小时内问。如果您想添加更多信息,请澄清它,将其缩小到仅限Xcode 11,只需编辑它。感谢您提供的详细解释。我在
project.xcodeproj
文件下找到了xcschemes
(我在project.xcodespace
下没有找到它们)。从终端打开文件.xcscheme
,并删除
下的
,而不是删除
。现在,所有日志动态加载程序事件(dyld)都停止在控制台中打印。