SPDebugBar 1.1.3

SPDebugBar 1.1.3

测试测试
语言语言 Obj-CObjective C
许可证 MIT
发布最后发布2020年12月

小平鸽维护。



  • 作者
  • lishiping

#pod 'SPDebugBar'

//如果您认为本开源库对您很有帮助,请打开URL给作者点个赞,您的认可可以鼓励我,作者还会推出更好的开源库再次//

//github地址//https://github.com/lishiping/SPWebView //github地址//https://github.com/lishiping/SPDebugBar //github地址//https://github.com/lishiping/SPFastPush //github地址//https://github.com/lishiping/SPMacro //github地址//https://github.com/lishiping/SafeData //github地址//https://github.com/lishiping/SPCategory //github地址//https://github.com/lishiping/SPBaseClass

//v1.0.0正式版加入修改NSUserDefaults,添加自定义组件功能 /** 切换服务器地址,帮助开发和测试在debug模式下或测试包中切换服务器地址,帮助修改和重置NSUserDefaults调试器,并添加自定义组件功能。

  1. 该工具的功能:在给定的服务器地址之间切换,并通过阻塞开发者测试者可以在使用APP插件时切换服务器地址

  2. 当应用程序启动时,检查给定的服务器地址是否正确,如果不正确,返回错误

  3. 在启动应用程序之前,可选择将本地选定的地址(每次每组第一次使用的默认选项)返回,如果给定的地址已更改,则全部重置,并返回每组的第一项

  4. 在启动应用程序后,可以通过按下调试栏弹出地址列表进行切换

  5. 弹出列表后,还可以点击当前所选的黑色框中的服务器地址,实际上是一个可以输入的UItextfield,在线按Enter,可以手动添加新的服务器地址,同时,将当前输入的列表添加到该组

  6. 点击调试栏可以隐藏和显示调试栏信息(调试栏信息是CPU、内存和FPS使用率)

当接收到内存警报时,调试栏会更改颜色

  1. 如果添加太多地址,您可以手动删除添加的地址,并将其恢复到给定的地址列表

  2. 这个工具可以事先设置更多的服务器地址,一组可以设置三个组的两组,例如方便不同的业务界面使用多个服务地址,如果组数已更改,数据将被重置,之前手动输入的所有内容都不会保留,并且应用程序将回到每组的第一项

  3. v1.0.0的新增功能可以修改NSUserDefaults,并新增允许用户自定义添加功能的功能

11.使用方法,例如

切换服务器地址,帮助开发和测试在debug模式下或测试包中切换服务器地址,帮助修改和重置NSUserDefaults调试程序,并且可以添加自定义组件功能

1.本工具的功能:在指定的服务器地址之间切换,并且通过block返回选中的地址,方便开发者和测试人员在APP使用时切换服务器地址。

2.应用启动时,检查指定的服务器地址是否正确,如果错误则返回错误。

3.应用启动时返回本地保存的之前选中的地址(第一次默认选择每组第一个),如果给定地址有变化,则全部重置,并返回每组第一个。

4.应用启动后,可长按调试条弹出地址列表进行选择切换。

5.弹出列表后,也可以点击黑框内的当前选中服务器地址(实际上是一个UI textField,可以在线输入),回车后可手动添加一条新的服务器地址,并将其加入该组列表。

6.单击调试条可以隐藏和显示调试条信息(调试条信息为CPU、内存、FPS的使用情况)。

7.当收到内存警告时,调试条会变色。

8.如果添加的地址过多,可以清除手动输入添加的地址,恢复成给定的地址列表。

9.本小工具可以预先给定多组服务器地址,一组、两组、三组等都可以,方便不同业务接口使用多个服务地址。如果组数有变动,则数据全部重置,之前手动输入添加的不保留,且应用刚启动时返回的取每组第一个。

10.v1.0.0新加入功能,可以修改NSUserDefaults,新增加允许使用者自定义添加功能

111.使用方法,例如:

  • (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // 应用启动后的自定义代码覆盖点。

// 获取系统配置的测试包是否开启 _TEST = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"TEST"]; // 加载调试工具 [self loadDebugTool];

[application setStatusBarHidden:NO];

self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];

_topVC= [[ViewController alloc] init];

UINavigationController *navi = [[UINavigationController alloc] initWithRootViewController:_topVC];

self.window.rootViewController =navi;

[self.window makeKeyAndVisible];

return YES; }

// 加载调试工具 -(void)loadDebugTool { // 当debug和测试包开启时,为测试人员切换服务器调试,调试工具要显示,线上包时该调试工具不显示 if (_TEST||DEBUG) { NSDictionary* serverDic = @{ SP_TITLE_KEY:@"百度服务器地址", SP_ARRAY_KEY: @[ @"https://api.baidu.com", @"http://api.baidu.com", @"http://api.ceshi.baidu.com" ] };

NSDictionary *panServerDic = @{ SP_TITLE_KEY:@"百度网盘地址", SP_ARRAY_KEY: @[ @"https://api.pan.baidu.com", @"http://api.pan.baidu.com", @"http://api.ceshi.pan.baidu.com", @"http://api.test.pan.baidu.com" ]};

NSDictionary *imServerDic = @{ SP_TITLE_KEY:@"百度聊天地址", SP_ARRAY_KEY: @[ @"https://api.pan.baidu.com", @"http://api.pan.baidu.com", @"http://api.ceshi.pan.baidu.com", @"http://api.test.pan.baidu.com" ]};

NSArray *serverArray = [NSArray arrayWithObjects:serverDic,panServerDic,imServerDic, nil];

NSDictionary* secondDic = @{ SP_TITLE_KEY:@"灰度功能", SP_ARRAY_KEY: @[ @"ABTestSDK", @"AB放量" ] };

NSDictionary *thirdDic = @{ SP_TITLE_KEY:@"商业化功能", SP_ARRAY_KEY: @[ @"商业放量", @"商业灰度" ]};

NSArray *otherArray = [NSArray arrayWithObjects:secondDic,thirdDic, nil];

[SPDebugBar sharedInstanceWithServerArray:serverArray selectedServerArrayBlock:^(NSArray *objects, NSError *error) { NSLog(@"选中的服务器地址:%@",objects); _topVC.firstLabel.text =[NSString stringWithFormat:@"百度服务器地址:%@",objects[0]]; _topVC.secondLabel.text =[NSString stringWithFormat:@"百度网盘地址:%@",objects[1]];

} otherSectionArray:otherArray otherSectionArrayBlock:^(UINavigationController *navigationController,NSString *string, NSError *error) { _topVC.thirdLabel.text =[NSString stringWithFormat:@"你点击了:%@",string];

ABTestVC *abTestVC = [[ABTestVC alloc] init]; abTestVC.title = string;

[navigationController pushViewController:abTestVC animated:YES]; }]; } else { // 设置线上服务器地址 } }

*/