REVEAL:Version 1.5.1(4946)
Xcode 8.3
模拟器模拟:iPhone 6 - iOS 10.3(14E269)
真机测试:iPhone6 plus / iOS 9.3.1
模拟器###
1.创建一个新的OC测试工程
2.打开Reveal,点击工具栏Help->Show Reveal Library in Finder,将Reveal.framework静态库添加到工程中。
3.静态库引用设置。
4.添加系统依赖库。
5.打开Reveal并选择设备运行模拟器.
真机###
1.获取libReveal.dylib库
2.将库添加到Reveal项目中:注意不要 Add to targets:Reveal
.
3.添加系统依赖库:CFNetwork.framework
,QuartzCore.framework
,CoreGraphics.framework
4.添加Reveal运行脚本
set -e
if [ -n "${CODE_SIGN_IDENTITY}" ]; then
codesign -fs "${CODE_SIGN_IDENTITY}" "${BUILT_PRODUCTS_DIR}/${FULL_PRODUCT_NAME}/libReveal.dylib"
fi
5.添加代码:在AppDelegate.m里面导入头文件
在
- (void)applicationDidBecomeActive:(UIApplication *)application
方法里面如下图调用方法- (void)loadReveal
{
if (NSClassFromString(@"IBARevealLoader") == nil)
{
NSString *revealLibName = @"libReveal"; // or @"libReveal-tvOS" for tvOS targets
NSString *revealLibExtension = @"dylib";
NSString *error;
NSString *dyLibPath = [[NSBundle mainBundle] pathForResource:revealLibName ofType:revealLibExtension];
if (dyLibPath != nil)
{
NSLog(@"Loading dynamic library: %@", dyLibPath);
void *revealLib = dlopen([dyLibPath cStringUsingEncoding:NSUTF8StringEncoding], RTLD_NOW);
if (revealLib == NULL)
{
error = [NSString stringWithUTF8String:dlerror()];
}
}
else
{
error = @"File not found.";
}
if (error != nil)
{
NSString *message = [NSString stringWithFormat:@"%@.%@ failed to load with error: %@", revealLibName, revealLibExtension, error];
UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"Reveal library could not be loaded"
message:message
preferredStyle:UIAlertControllerStyleAlert];
[alert addAction:[UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:nil]];
[[[[[UIApplication sharedApplication] windows] firstObject] rootViewController] presentViewController:alert animated:YES completion:nil];
}
}
}
6.如果连接Reveal成功打印以下报文
7.我遇到的错误以及注意
解决方法:将Enable Bitcode修改为NO
提示:真机测试,电脑和手机最好使用同一WiFi或者手机使用电脑创建的WiFi
模拟器部分参考:
[ Reveal在真机和模拟器上的使用]
真机部分参考:
配置reveal实现真机调试项目遇到的坑总结
使用Reveal调试和分析UI
http://www.jianshu.com/p/290af2bf5afb