didi / echo Goto Github PK
View Code? Open in Web Editor NEWEcho是一款桌面端调试工具,旨在提高客户端的研发调试效率
License: Apache License 2.0
Echo是一款桌面端调试工具,旨在提高客户端的研发调试效率
License: Apache License 2.0
有时候网络记录的时候,会同时显示两条或三条一样的请求记录
因为网络请求导致有些视图慢了释放,一直弹出内存泄露的提示
请问下,既然这个项目是新的,为啥不用Swift呢。毕竟swift写起来比OC舒服多了,语法也有更多特性。
感谢滴滴大佬开源了一款这么好用的工具, 在我们开发使用起来真的非常的方便.
在使用 xcode 11
的时候没有任何问题 , 更新到Xcode 12.0 beta 5
版本后 . 使用的时候发生奔溃. 最后根据定位发现问题出现在 ECOnetServiceBrowser
这个里面,
发现是一直在进行失败重新启动 resetBrowserService
如果注释掉 [self resetBrowserService];
就没有了崩溃现象, 但是 echo 中也没有了查看网络请求的功能, 由于技术能力有限, 实在不知道问题出现在哪里.
希望滴滴大佬在百忙之中能注意下这个问题, 看能否给与解决一下.
Undefined symbols for architecture arm64:
"OBJC_CLASS$_FBObjectiveCObject", referenced from:
objc-class-ref in FBObjectiveCObject+EchoFixNSMapTableCrash.o
_OBJC$CATEGORY_FBObjectiveCObject$_EchoFixNSMapTableCrash in FBObjectiveCObject+EchoFixNSMapTableCrash.o
"OBJC_CLASS$_FBRetainCycleDetector", referenced from:
objc-class-ref in ECOMLeaksMessenger.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Showing All Messages
Undefined symbol: OBJC_CLASS$_FBObjectiveCObject
Showing All Messages
Undefined symbol: OBJC_CLASS$_FBRetainCycleDetector
项目中引入框架试了下,刷新界面网络请求只能看到出参,看不到body入参,并且清空日志的时候只能清空每次网络请求,下边的Request``Response
均无法清空
项目中有图片视频上传的操作,这些操作会导致app网络阻塞,所有网络请求全部超时,必须重新启动app才能恢复。
网络断开时Mac端会打印日志
Log content:
-[ECONetServiceBrowser netServiceDidStop:]
希望弄一个修改沙盒的插件,其他功能很多别的产品都有
网络请求Response中的JSON无法复制完全,会少“,”。这样子格式就不对了。在使用json生成Model类的工具时,会使用到格式正确的JSON
Xcode12 、真机iOS14状态下崩溃在
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
[[ECOCoreManager shared] sendPacketData:data type:type plugin:plugin toDevice:device];
});
//发送数据
QRCode转码的第三方,在执行到下面这一行代码的时候,fishhook导致了崩溃
CIFilter *fileter = [CIFilter filterWithName:@"CIQRCodeGenerator"];
麻烦升级一下fishhook的版本
使用设备
iPhone12 Pro Max iOS15.0 19A346
真机与模拟器都会崩溃
在Echo初始化方法hookNSLog里使用了fishhook加了一个钩子,调用rebind_symbols方法时产生了崩溃
崩溃日志
2021-09-22 17:31:40.746202+0800 [568:30569] [unspecified] An empty string is not a valid group container identifier.
2021-09-22 17:31:40.746230+0800 [568:30569] [unspecified] container_create_or_lookup_app_group_path_by_app_group_identifier: client sent invalid parameters
堆栈信息
frame #0: 0x00000001037220bc EchoDemoperform_rebinding_with_section(rebindings=0x0000000282c9cb40, section=0x000000010a7a8420, slide=4470767616, symtab=0x000000010a7d9bf0, strtab="", indirect_symtab=0x000000010a7ddb90) at fishhook.c:104:39 frame #1: 0x0000000103721da4 EchoDemo
rebind_symbols_for_image(rebindings=0x0000000282c9cb40, header=0x000000010a7a8000, slide=4470767616) at fishhook.c:169:11
frame #2: 0x0000000103721ed8 EchoDemo_rebind_symbols_for_image(header=0x000000010a7a8000, slide=4470767616) at fishhook.c:178:5 frame #3: 0x000000010a347930 dyld
invocation function for block in dyld4::APIs::_dyld_register_func_for_add_image(void ()(mach_header const, long)) + 200
frame #4: 0x000000010a3406f4 dylddyld4::RuntimeState::withLoadersReadLock(void () block_pointer) + 92 frame #5: 0x000000010a3697f8 dyld
dyld4::APIs::_dyld_register_func_for_add_image(void ()(mach_header const, long)) + 148
frame #6: 0x0000000103721e48 EchoDemorebind_symbols(rebindings=0x000000016f2146e0, rebindings_nel=1) at fishhook.c:200:5 frame #7: 0x0000000101124890 EchoDemo
-[ECONSLogManager hookNSLog](self=0x0000000282c9cb00, _cmd="hookNSLog") at ECONSLogManager.m:70:5
frame #8: 0x00000001011247f8 EchoDemo`-[ECONSLogManager init](self=0x0000000282c9cb00, _cmd="init") at ECONSLogManager.m:48:9
rt
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.