工具篇(UI分析工具Reveal、性能调试工具Instrumen
2018-08-05 本文已影响1人
平安喜乐698
目录
1. Reveal(UI分析工具)
1. Reveal(UI分析工具)
一款方便查看UI层级并能实时修改UI的工具
工具下载
官方版地址:https://revealapp.com
破解版地址:早期文章提供过地址(可下载大量MAC破解版软件)
使用
方式一、导入RevealServer.framework
Help-->Show Reveal Library in Finder-->iOS Library中获取框架
将框架复制到项目下
项目| Build Settings
| Framework Search Paths 添加 框架所在路径
| Other Linker Flags(DEBUG) 添加 -weak_framework
RevealServer -ObjC
| Runpath Search Paths(DEBUG) 添加 $(inherited) @executable_path/Frameworks.
项目| Build Phases 中创建 Run Script 如下
注意 REVEAL_SERVER_PATH="${SRCROOT}/${REVEAL_SERVER_FILENAME}"路径必须和框架路径一致,${SRCROOT}表示最外边的项目根目录。
export REVEAL_SERVER_FILENAME="RevealServer.framework"
# Update this path to point to the location of RevealServer.framework in your project.
export REVEAL_SERVER_PATH="${SRCROOT}/${REVEAL_SERVER_FILENAME}"
# If configuration is not Debug, skip this script.
[ "${CONFIGURATION}" != "Debug" ] && exit 0
# If RevealServer.framework exists at the specified path, run code signing script.
if [ -d "${REVEAL_SERVER_PATH}" ]; then
"${REVEAL_SERVER_PATH}/Scripts/copy_and_codesign_revealserver.sh"
else
echo "Reveal Server not loaded: RevealServer.framework could not be found."
fi
方式二、CocoaPods
pod 'Reveal-SDK', :configurations => ['Debug']
DEBUG模式下运行后可在Reveal工具中查看
方式三、断点集成
项目|断点 点击+ 添加Symbolic Breakpoint
UIApplicationMain
expr (Class)NSClassFromString(@"IBARevealLoader") == nil ? (void *)dlopen("/Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/RevealServer.framework/RevealServer", 0x2) : ((void*)0)
运行项目——进断点——>继续运行,就可以在Reveal工具中查看
方式三、断点集成
2. Instruments 性能调试工具
项目| Build Settings | Build Options | Debug Information Format 选择
DWARF with dSYM File
启动Instruments
长按XCode的小三角(运行按钮)选择Profiler运行
Debug Information Format
Instruments
2.1. Time Profiler
寻找卡顿(耗时)的操作
1、首先启动Instruments,选择Time Profiler并运行
2、勾选 隐藏系统方法 选项
3、操作App卡顿页面,并逐步找出耗时方法(最后双击查看代码)
4、选择XCode小图标,使用XCode编辑代码
2
3