提交 b69e6536 编写于 作者: Y yixiangboy

iOS Demo支持国际化

上级 f861a512
......@@ -72,7 +72,6 @@
"日历权限" = "Calendar";
"提醒事项权限" = "Notes";
"用户没有选择" = "Not Determined";
"Restricted" = "Restricted";
"用户已经授权" = "Authorized";
"用户没有授权" = "Denied";
"家长控制" = "Restricted";
......@@ -306,58 +305,4 @@
"Doraemon关闭之后需要重启App才能重新打开" = "Reboot to open Doraemon";
"复制" = "Copy";
"删除" = "Delete";
//DoraemonKitDemo
"图片测试" = "Image Test";
"Mock测试" = "Mock Test";
"Mock测试2" = "Mock Test 2";
"block方式加入插件" = "Add plugins from block";
"测试工具集" = "Test tools";
"视觉测试Demo" = "UI test Demo";
"高流量操作打开" = "High traffic operation";
"添加DB到沙盒中" = "Add DB into sandbox";
"DoraemonKit" = "DoraemonKit";
"日记测试Demo" = "Log test Demo";
"添加html到沙盒中" = "Add html into sandbox";
"WKWebView" = "WKWebView";
"发送一条AFNetworking请求" = "Send AFNetworking request";
"添加一条NSLog日志" = "Add NSLog log";
"发送一条NSURLSession请求" = "Send NSURLSession request";
"性能测试Demo" = "Performance Testing Demo";
"添加一张图片到沙盒中" = "Add image into sandbox";
"低FPS操作打开" = "Low FPS operation";
"添加doc、xlsx、pdf到沙盒中" = "Add doc、xlsx、pdf into sandbox";
"模拟位置" = "Mock GPS";
"打开UIWebView" = "Open UIWebView";
"打开WKWebView" = "Open WKWebView";
"crash触发Demo" = "Crash Demo";
"高内存操作关闭" = "High memory operation off";
"测试插件" = "Test plugin";
"高CPU操作打开" = "High CPU operation";
"我是来测试的" = "Test";
"添加一段mp4到沙盒中" = "add mp4 into sandbox";
"模拟位置Demo" = "Mock GPS Demo";
"发送一条URLConnection请求" = "Send URLConnection request";
"添加一条CocoaLumberjack日志" = "Add CocoaLumberjack log";
"通用测试Demo" = "General test Demo";
"添加一条json到沙盒中" = "Add json into sandbox";
"沙盒测试Demo" = "Sandbox test Demo";
"网络测试Demo" = "Networking test Demo";
"高内存操作打开" = "High memory operation";
"signalException" = "signalException";
"子线程UI操作" = "Thread UI";
"高CPU操作关闭" = "High CPU operation off";
"发送一条AFNetworking请求2" = "Send AFNetworking request2";
"卡顿操作打开" = "ANR operation";
"uncaughtException" = "uncaughtException";
"UIWebView" = "UIWebView";
"显示入口" = "Show Doraemon";
"隐藏入口" = "Hidden Doraemon";
"数据库" = "Database";
"内存泄漏测试" = "Memory Leak Test";
}
......@@ -508,7 +508,7 @@ typedef void (^DoraemonPerformanceBlock)(NSDictionary *);
],
@(DoraemonManagerPluginType_DoraemonDatabasePlugin) : @[
@{kTitle:@"DBView"},
@{kDesc:DoraemonLocalizedString(@"数据库")},
@{kDesc:DoraemonLocalizedString(@"数据库预览")},
@{kIcon:@"doraemon_database"},
@{kPluginName:@"DoraemonDatabasePlugin"},
@{kAtModule:DoraemonLocalizedString(@"常用工具")},
......
......@@ -12,6 +12,8 @@
0A53998B2349EE9500C47CB3 /* DoraemonDemoMemoryLeakView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0A53998A2349EE9500C47CB3 /* DoraemonDemoMemoryLeakView.m */; };
0A6C9CEA2423214600BAEF5E /* DoraemonDemoURLProtocol1.m in Sources */ = {isa = PBXBuildFile; fileRef = 0A6C9CE92423214600BAEF5E /* DoraemonDemoURLProtocol1.m */; };
0A6C9CED2423219400BAEF5E /* DoraemonDemoURLProtocol2.m in Sources */ = {isa = PBXBuildFile; fileRef = 0A6C9CEC2423219400BAEF5E /* DoraemonDemoURLProtocol2.m */; };
0A6CF2762438BD3B00A2CBF4 /* DoraemonKitDemo.strings in Resources */ = {isa = PBXBuildFile; fileRef = 0A6CF2782438BD3B00A2CBF4 /* DoraemonKitDemo.strings */; };
0A6CF27C2438BDDD00A2CBF4 /* DoraemonKitDemoi18Util.m in Sources */ = {isa = PBXBuildFile; fileRef = 0A6CF27B2438BDDD00A2CBF4 /* DoraemonKitDemoi18Util.m */; };
0AA262E1240F8AC400BF144F /* DoraemonDemoBaseViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0AA262E0240F8AC400BF144F /* DoraemonDemoBaseViewController.m */; };
0AFBC55223BAE6F80099A8BD /* DoraemonDemoNetTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 0AFBC55023BAE6F80099A8BD /* DoraemonDemoNetTableViewCell.m */; };
B65C2263AF96F94C50A222DF /* libPods-DoraemonKitDemo.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 29E964A2D92411C9DC5482EF /* libPods-DoraemonKitDemo.a */; };
......@@ -55,6 +57,11 @@
0A6C9CE92423214600BAEF5E /* DoraemonDemoURLProtocol1.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DoraemonDemoURLProtocol1.m; sourceTree = "<group>"; };
0A6C9CEB2423219400BAEF5E /* DoraemonDemoURLProtocol2.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DoraemonDemoURLProtocol2.h; sourceTree = "<group>"; };
0A6C9CEC2423219400BAEF5E /* DoraemonDemoURLProtocol2.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DoraemonDemoURLProtocol2.m; sourceTree = "<group>"; };
0A6CF2752438BD0100A2CBF4 /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/LaunchScreen.strings"; sourceTree = "<group>"; };
0A6CF2772438BD3B00A2CBF4 /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/DoraemonKitDemo.strings"; sourceTree = "<group>"; };
0A6CF2792438BD4600A2CBF4 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/DoraemonKitDemo.strings; sourceTree = "<group>"; };
0A6CF27A2438BDDD00A2CBF4 /* DoraemonKitDemoi18Util.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DoraemonKitDemoi18Util.h; sourceTree = "<group>"; };
0A6CF27B2438BDDD00A2CBF4 /* DoraemonKitDemoi18Util.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DoraemonKitDemoi18Util.m; sourceTree = "<group>"; };
0AA262DF240F8AC400BF144F /* DoraemonDemoBaseViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DoraemonDemoBaseViewController.h; sourceTree = "<group>"; };
0AA262E0240F8AC400BF144F /* DoraemonDemoBaseViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DoraemonDemoBaseViewController.m; sourceTree = "<group>"; };
0AFBC55023BAE6F80099A8BD /* DoraemonDemoNetTableViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DoraemonDemoNetTableViewCell.m; sourceTree = "<group>"; };
......@@ -261,6 +268,7 @@
DAC8A8881FDE2C3B00F03E6F /* Info.plist */,
DAC8A8891FDE2C3B00F03E6F /* main.m */,
DAC0D76F1FE103A50048E322 /* DoraemonKitDemo-PrefixHeader.pch */,
0A6CF2782438BD3B00A2CBF4 /* DoraemonKitDemo.strings */,
);
path = DoraemonKitDemo;
sourceTree = "<group>";
......@@ -270,6 +278,8 @@
children = (
DAE7BFAB20205C20008D49D8 /* NSObject+Runtime.h */,
DAE7BFAC20205C20008D49D8 /* NSObject+Runtime.m */,
0A6CF27A2438BDDD00A2CBF4 /* DoraemonKitDemoi18Util.h */,
0A6CF27B2438BDDD00A2CBF4 /* DoraemonKitDemoi18Util.m */,
);
path = Util;
sourceTree = "<group>";
......@@ -426,6 +436,7 @@
knownRegions = (
en,
Base,
"zh-Hans",
);
mainGroup = DAC8A86E1FDE2C3B00F03E6F;
productRefGroup = DAC8A8781FDE2C3B00F03E6F /* Products */;
......@@ -443,6 +454,7 @@
buildActionMask = 2147483647;
files = (
DA63F1D321C8CF9500E0D9F5 /* huoying.mp4 in Resources */,
0A6CF2762438BD3B00A2CBF4 /* DoraemonKitDemo.strings in Resources */,
DA0C6F331FDEBC2E00F43588 /* LaunchScreen.storyboard in Resources */,
DA4AD81E224E27DA006F767C /* doraemon.html in Resources */,
DA4AD81A224E0EC8006F767C /* Doraemon.docx in Resources */,
......@@ -545,6 +557,7 @@
0AFBC55223BAE6F80099A8BD /* DoraemonDemoNetTableViewCell.m in Sources */,
0AA262E1240F8AC400BF144F /* DoraemonDemoBaseViewController.m in Sources */,
DAFE052A21BD4A4D00F97A59 /* DoraemonDemoCrashMRCView.m in Sources */,
0A6CF27C2438BDDD00A2CBF4 /* DoraemonKitDemoi18Util.m in Sources */,
DAC3FA7622B8DD7400871E5C /* DoraemonDemoImageViewController.m in Sources */,
DAC3FA7922B8E0EE00871E5C /* DoraemonDemoImageShowViewController.m in Sources */,
DAC8A87C1FDE2C3B00F03E6F /* DoKitAppDelegate.m in Sources */,
......@@ -561,10 +574,20 @@
/* End PBXSourcesBuildPhase section */
/* Begin PBXVariantGroup section */
0A6CF2782438BD3B00A2CBF4 /* DoraemonKitDemo.strings */ = {
isa = PBXVariantGroup;
children = (
0A6CF2772438BD3B00A2CBF4 /* zh-Hans */,
0A6CF2792438BD4600A2CBF4 /* en */,
);
name = DoraemonKitDemo.strings;
sourceTree = "<group>";
};
DA0C6F311FDEBC2E00F43588 /* LaunchScreen.storyboard */ = {
isa = PBXVariantGroup;
children = (
DA0C6F321FDEBC2E00F43588 /* Base */,
0A6CF2752438BD0100A2CBF4 /* zh-Hans */,
);
name = LaunchScreen.storyboard;
sourceTree = "<group>";
......@@ -576,6 +599,7 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
......@@ -634,6 +658,7 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
......
......@@ -18,23 +18,23 @@
- (void)viewDidLoad {
[super viewDidLoad];
self.title = DoraemonLocalizedString(@"通用测试");
self.title = DoraemonDemoLocalizedString(@"通用测试Demo");
UIButton *btn0 = [[UIButton alloc] initWithFrame:CGRectMake(0, IPHONE_NAVIGATIONBAR_HEIGHT, self.view.doraemon_width, 60)];
btn0.backgroundColor = [UIColor orangeColor];
[btn0 setTitle:DoraemonLocalizedString(@"子线程UI操作") forState:UIControlStateNormal];
[btn0 setTitle:DoraemonDemoLocalizedString(@"子线程UI操作") forState:UIControlStateNormal];
[btn0 addTarget:self action:@selector(addSubViewAtOtherThread) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn0];
UIButton *btn1 = [[UIButton alloc] initWithFrame:CGRectMake(0, btn0.doraemon_bottom+20, self.view.doraemon_width, 60)];
btn1.backgroundColor = [UIColor orangeColor];
[btn1 setTitle:DoraemonLocalizedString(@"显示入口") forState:UIControlStateNormal];
[btn1 setTitle:DoraemonDemoLocalizedString(@"显示入口") forState:UIControlStateNormal];
[btn1 addTarget:self action:@selector(showEntry) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn1];
UIButton *btn2 = [[UIButton alloc] initWithFrame:CGRectMake(0, btn1.doraemon_bottom+20, self.view.doraemon_width, 60)];
btn2.backgroundColor = [UIColor orangeColor];
[btn2 setTitle:DoraemonLocalizedString(@"隐藏入口") forState:UIControlStateNormal];
[btn2 setTitle:DoraemonDemoLocalizedString(@"隐藏入口") forState:UIControlStateNormal];
[btn2 addTarget:self action:@selector(hiddenEntry) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn2];
......
......@@ -16,7 +16,6 @@
#import "DoraemonDemoCrashViewController.h"
#import "DoraemonDemoCommonViewController.h"
#import <objc/runtime.h>
#import "Doraemoni18NUtil.h"
#import "UIView+Doraemon.h"
#import "UIViewController+Doraemon.h"
#import "DoraemonDemoMemoryLeakViewController.h"
......@@ -43,7 +42,7 @@
- (void)viewDidLoad {
[super viewDidLoad];
self.title = DoraemonLocalizedString(@"DoraemonKit");
self.title = DoraemonDemoLocalizedString(@"DoraemonKit");
self.navigationItem.leftBarButtonItems = nil;
[self.view addSubview:self.tableView];
}
......@@ -61,23 +60,23 @@
NSString *txt = nil;
NSInteger row = indexPath.row;
if (row==0) {
txt = DoraemonLocalizedString(@"沙盒测试Demo");
txt = DoraemonDemoLocalizedString(@"沙盒测试Demo");
}else if(row==1){
txt = DoraemonLocalizedString(@"日记测试Demo");
txt = DoraemonDemoLocalizedString(@"日志测试Demo");
}else if(row==2){
txt = DoraemonLocalizedString(@"性能测试Demo");
txt = DoraemonDemoLocalizedString(@"性能测试Demo");
}else if(row==3){
txt = DoraemonLocalizedString(@"视觉测试Demo");
txt = DoraemonDemoLocalizedString(@"视觉测试Demo");
}else if(row==4){
txt = DoraemonLocalizedString(@"网络测试Demo");
txt = DoraemonDemoLocalizedString(@"网络测试Demo");
}else if(row==5){
txt = DoraemonLocalizedString(@"模拟位置Demo");
txt = DoraemonDemoLocalizedString(@"模拟位置Demo");
}else if(row==6){
txt = DoraemonLocalizedString(@"crash触发Demo");
txt = DoraemonDemoLocalizedString(@"crash触发Demo");
}else if(row==7){
txt = DoraemonLocalizedString(@"通用测试Demo");
txt = DoraemonDemoLocalizedString(@"通用测试Demo");
}else if(row==8){
txt = DoraemonLocalizedString(@"内存泄漏测试");
txt = DoraemonDemoLocalizedString(@"内存泄漏测试");
}
cell.textLabel.text = txt;
return cell;
......
......@@ -22,17 +22,17 @@
- (void)viewDidLoad {
[super viewDidLoad];
self.title = DoraemonLocalizedString(@"日记测试Demo");
self.title = DoraemonDemoLocalizedString(@"日志测试Demo");
UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(0, IPHONE_NAVIGATIONBAR_HEIGHT, self.view.doraemon_width, 60)];
btn.backgroundColor = [UIColor orangeColor];
[btn setTitle:DoraemonLocalizedString(@"添加一条CocoaLumberjack日志") forState:UIControlStateNormal];
[btn setTitle:DoraemonDemoLocalizedString(@"添加一条CocoaLumberjack日志") forState:UIControlStateNormal];
[btn addTarget:self action:@selector(addLogger) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn];
UIButton *btn_2 = [[UIButton alloc] initWithFrame:CGRectMake(0, btn.doraemon_bottom+20, self.view.doraemon_width, 60)];
btn_2.backgroundColor = [UIColor orangeColor];
[btn_2 setTitle:DoraemonLocalizedString(@"添加一条NSLog日志") forState:UIControlStateNormal];
[btn_2 setTitle:DoraemonDemoLocalizedString(@"添加一条NSLog日志") forState:UIControlStateNormal];
[btn_2 addTarget:self action:@selector(addLogger2) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn_2];
}
......
......@@ -25,7 +25,7 @@
- (void)viewDidLoad {
[super viewDidLoad];
self.title = DoraemonLocalizedString(@"模拟位置");
self.title = DoraemonDemoLocalizedString(@"模拟位置");
//初始化地图
MKMapView *mapView = [[MKMapView alloc] initWithFrame:CGRectMake(0, IPHONE_NAVIGATIONBAR_HEIGHT, self.view.doraemon_width, self.view.doraemon_height)];
......
......@@ -35,7 +35,7 @@
- (void)viewDidLoad {
[super viewDidLoad];
self.title = DoraemonLocalizedString(@"网络测试Demo");
self.title = DoraemonDemoLocalizedString(@"网络测试Demo");
[self initCellTitleArray];
_DoraemonDemoNetViewCellID = @"DoraemonDemoNetViewCell";
......@@ -99,7 +99,7 @@
if (!cell) {
cell = [[DoraemonDemoNetTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:_DoraemonDemoNetViewCellID];
}
[cell renderUIWithTitle:DoraemonLocalizedString(_cellTitleArray[indexPath.section])];
[cell renderUIWithTitle:DoraemonDemoLocalizedString(_cellTitleArray[indexPath.section])];
return cell;
}
......
......@@ -23,31 +23,31 @@
- (void)viewDidLoad {
[super viewDidLoad];
self.title = DoraemonLocalizedString(@"图片测试");
self.title = DoraemonDemoLocalizedString(@"图片测试");
_picUrl = @"http://wx2.sinaimg.cn/large/61e7f4aaly1g0qsmz73juj20iv0iv4h0.jpg";
UIButton *btn0 = [[UIButton alloc] initWithFrame:CGRectMake(0, IPHONE_NAVIGATIONBAR_HEIGHT, self.view.doraemon_width, 60)];
btn0.backgroundColor = [UIColor orangeColor];
[btn0 setTitle:DoraemonLocalizedString(@"dataWithContentsOfURL") forState:UIControlStateNormal];
[btn0 setTitle:DoraemonDemoLocalizedString(@"dataWithContentsOfURL") forState:UIControlStateNormal];
[btn0 addTarget:self action:@selector(dataWithContentsOfURL) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn0];
UIButton *btn1 = [[UIButton alloc] initWithFrame:CGRectMake(0, btn0.doraemon_bottom+20, self.view.doraemon_width, 60)];
btn1.backgroundColor = [UIColor orangeColor];
[btn1 setTitle:DoraemonLocalizedString(@"SDWebImage") forState:UIControlStateNormal];
[btn1 setTitle:DoraemonDemoLocalizedString(@"SDWebImage") forState:UIControlStateNormal];
[btn1 addTarget:self action:@selector(sdWebImage) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn1];
UIButton *btn2 = [[UIButton alloc] initWithFrame:CGRectMake(0, btn1.doraemon_bottom+20, self.view.doraemon_width, 60)];
btn2.backgroundColor = [UIColor orangeColor];
[btn2 setTitle:DoraemonLocalizedString(@"uiWebView") forState:UIControlStateNormal];
[btn2 setTitle:DoraemonDemoLocalizedString(@"uiWebView") forState:UIControlStateNormal];
[btn2 addTarget:self action:@selector(uiWebView) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn2];
UIButton *btn3 = [[UIButton alloc] initWithFrame:CGRectMake(0, btn2.doraemon_bottom+20, self.view.doraemon_width, 60)];
btn3.backgroundColor = [UIColor orangeColor];
[btn3 setTitle:DoraemonLocalizedString(@"wkWebView") forState:UIControlStateNormal];
[btn3 setTitle:DoraemonDemoLocalizedString(@"wkWebView") forState:UIControlStateNormal];
[btn3 addTarget:self action:@selector(wkWebView) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn3];
}
......
......@@ -7,7 +7,7 @@
//
#import "DoraemonUIWebViewViewController.h"
#import "Doraemoni18NUtil.h"
@interface DoraemonUIWebViewViewController ()
......@@ -18,7 +18,7 @@
- (void)viewDidLoad {
[super viewDidLoad];
self.title = DoraemonLocalizedString(@"UIWebView");
self.title = DoraemonDemoLocalizedString(@"UIWebView");
UIWebView * view = [[UIWebView alloc] initWithFrame:self.view.frame];
[view loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.juyanwenjuan.com/"]]];
[self.view addSubview:view];
......
......@@ -8,7 +8,6 @@
#import "DoraemonWKWebViewViewController.h"
#import <WebKit/WebKit.h>
#import "Doraemoni18NUtil.h"
@interface DoraemonWKWebViewViewController ()
......@@ -19,7 +18,7 @@
- (void)viewDidLoad {
[super viewDidLoad];
self.title = DoraemonLocalizedString(@"WKWebView");
self.title = DoraemonDemoLocalizedString(@"WKWebView");
WKWebView *webView = [[WKWebView alloc]initWithFrame:self.view.frame];
[webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.juyanwenjuan.com/"]]];
[self.view addSubview:webView];
......
......@@ -32,42 +32,42 @@
- (void)viewDidLoad {
[super viewDidLoad];
self.title = DoraemonLocalizedString(@"性能测试Demo");
self.title = DoraemonDemoLocalizedString(@"性能测试Demo");
_highCPU = NO;
_highMemory = NO;
UIButton *btn0 = [[UIButton alloc] initWithFrame:CGRectMake(0, IPHONE_NAVIGATIONBAR_HEIGHT, self.view.doraemon_width, 60)];
btn0.backgroundColor = [UIColor orangeColor];
[btn0 setTitle:DoraemonLocalizedString(@"低FPS操作打开") forState:UIControlStateNormal];
[btn0 setTitle:DoraemonDemoLocalizedString(@"低FPS操作打开") forState:UIControlStateNormal];
[btn0 addTarget:self action:@selector(fpsClick) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn0];
_btn0 = btn0;
UIButton *btn1 = [[UIButton alloc] initWithFrame:CGRectMake(0, btn0.doraemon_bottom+20, self.view.doraemon_width, 60)];
btn1.backgroundColor = [UIColor orangeColor];
[btn1 setTitle:DoraemonLocalizedString(@"高CPU操作打开") forState:UIControlStateNormal];
[btn1 setTitle:DoraemonDemoLocalizedString(@"高CPU操作打开") forState:UIControlStateNormal];
[btn1 addTarget:self action:@selector(cpuClick) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn1];
_btn1 = btn1;
UIButton *btn2 = [[UIButton alloc] initWithFrame:CGRectMake(0, btn1.doraemon_bottom+20, self.view.doraemon_width, 60)];
btn2.backgroundColor = [UIColor orangeColor];
[btn2 setTitle:DoraemonLocalizedString(@"高内存操作打开") forState:UIControlStateNormal];
[btn2 setTitle:DoraemonDemoLocalizedString(@"高内存操作打开") forState:UIControlStateNormal];
[btn2 addTarget:self action:@selector(memoryClick) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn2];
_btn2 = btn2;
UIButton *btn3 = [[UIButton alloc] initWithFrame:CGRectMake(0, btn2.doraemon_bottom+20, self.view.doraemon_width, 60)];
btn3.backgroundColor = [UIColor orangeColor];
[btn3 setTitle:DoraemonLocalizedString(@"高流量操作打开") forState:UIControlStateNormal];
[btn3 setTitle:DoraemonDemoLocalizedString(@"高流量操作打开") forState:UIControlStateNormal];
[btn3 addTarget:self action:@selector(flowClick) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn3];
_btn3 = btn3;
UIButton *btn4 = [[UIButton alloc] initWithFrame:CGRectMake(0, btn3.doraemon_bottom+20, self.view.doraemon_width, 60)];
btn4.backgroundColor = [UIColor orangeColor];
[btn4 setTitle:DoraemonLocalizedString(@"卡顿操作打开") forState:UIControlStateNormal];
[btn4 setTitle:DoraemonDemoLocalizedString(@"卡顿操作打开") forState:UIControlStateNormal];
[btn4 addTarget:self action:@selector(anrClick) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn4];
_btn4 = btn4;
......
......@@ -19,41 +19,41 @@
- (void)viewDidLoad {
[super viewDidLoad];
self.title = DoraemonLocalizedString(@"沙盒测试Demo");
self.title = DoraemonDemoLocalizedString(@"沙盒测试Demo");
UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(0, IPHONE_NAVIGATIONBAR_HEIGHT, self.view.doraemon_width, 60)];
btn.backgroundColor = [UIColor orangeColor];
[btn setTitle:DoraemonLocalizedString(@"添加一条json到沙盒中") forState:UIControlStateNormal];
[btn setTitle:DoraemonDemoLocalizedString(@"添加一条json到沙盒中") forState:UIControlStateNormal];
[btn addTarget:self action:@selector(addFile) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn];
UIButton *btn1 = [[UIButton alloc] initWithFrame:CGRectMake(0, btn.doraemon_bottom+20, self.view.doraemon_width, 60)];
btn1.backgroundColor = [UIColor orangeColor];
[btn1 setTitle:DoraemonLocalizedString(@"添加一张图片到沙盒中") forState:UIControlStateNormal];
[btn1 setTitle:DoraemonDemoLocalizedString(@"添加一张图片到沙盒中") forState:UIControlStateNormal];
[btn1 addTarget:self action:@selector(addImageFile) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn1];
UIButton *btn2 = [[UIButton alloc] initWithFrame:CGRectMake(0, btn1.doraemon_bottom+20, self.view.doraemon_width, 60)];
btn2.backgroundColor = [UIColor orangeColor];
[btn2 setTitle:DoraemonLocalizedString(@"添加一段mp4到沙盒中") forState:UIControlStateNormal];
[btn2 setTitle:DoraemonDemoLocalizedString(@"添加一段mp4到沙盒中") forState:UIControlStateNormal];
[btn2 addTarget:self action:@selector(addMP4File) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn2];
UIButton *btn3 = [[UIButton alloc] initWithFrame:CGRectMake(0, btn2.doraemon_bottom+20, self.view.doraemon_width, 60)];
btn3.backgroundColor = [UIColor orangeColor];
[btn3 setTitle:DoraemonLocalizedString(@"添加doc、xlsx、pdf到沙盒中") forState:UIControlStateNormal];
[btn3 setTitle:DoraemonDemoLocalizedString(@"添加doc、xlsx、pdf到沙盒中") forState:UIControlStateNormal];
[btn3 addTarget:self action:@selector(addOtherFile) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn3];
UIButton *btn4 = [[UIButton alloc] initWithFrame:CGRectMake(0, btn3.doraemon_bottom+20, self.view.doraemon_width, 60)];
btn4.backgroundColor = [UIColor orangeColor];
[btn4 setTitle:DoraemonLocalizedString(@"添加html到沙盒中") forState:UIControlStateNormal];
[btn4 setTitle:DoraemonDemoLocalizedString(@"添加html到沙盒中") forState:UIControlStateNormal];
[btn4 addTarget:self action:@selector(addHtmlFile) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn4];
UIButton *btn5 = [[UIButton alloc] initWithFrame:CGRectMake(0, btn4.doraemon_bottom+20, self.view.doraemon_width, 60)];
btn5.backgroundColor = [UIColor orangeColor];
[btn5 setTitle:DoraemonLocalizedString(@"添加DB到沙盒中") forState:UIControlStateNormal];
[btn5 setTitle:DoraemonDemoLocalizedString(@"添加DB到沙盒中") forState:UIControlStateNormal];
[btn5 addTarget:self action:@selector(addDBFile) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn5];
}
......
......@@ -21,7 +21,7 @@
- (void)viewDidLoad {
[super viewDidLoad];
self.title = DoraemonLocalizedString(@"视觉测试Demo");
self.title = DoraemonDemoLocalizedString(@"视觉测试Demo");
UIView *redView = [[UIView alloc] initWithFrame:CGRectMake(100, 200, 60, 60)];
redView.backgroundColor = [UIColor redColor];
......@@ -34,7 +34,7 @@
// [self.view addSubview:alphaView];
UILabel *titleLabel = [[UILabel alloc] initWithFrame:CGRectMake(100, 400, 200, 60)];
titleLabel.text = DoraemonLocalizedString(@"我是来测试的");
titleLabel.text = DoraemonDemoLocalizedString(@"我是来测试的");
titleLabel.backgroundColor = [UIColor doraemon_colorWithString:@"#00FF00"];
titleLabel.textColor = [UIColor doraemon_colorWithString:@"#FF0000"];
[self.view addSubview:titleLabel];
......
......@@ -9,7 +9,6 @@
#import "DoKitAppDelegate.h"
#import <DoraemonKit/DoraemonKit.h>
#import "DoraemonDemoHomeViewController.h"
#import "Doraemoni18NUtil.h"
#import "DoraemonTimeProfiler.h"
//#import <CocoaLumberjack/CocoaLumberjack.h>
#import "DoraemonUtil.h"
......@@ -36,9 +35,9 @@
for (int i=0; i<10; i++) {
//DDLogInfo(@"点击添加埋点11111");
}
[[DoraemonManager shareInstance] addPluginWithTitle:DoraemonLocalizedString(@"测试插件") icon:@"doraemon_default" desc:DoraemonLocalizedString(@"测试插件") pluginName:@"TestPlugin" atModule:DoraemonLocalizedString(@"业务工具")];
[[DoraemonManager shareInstance] addPluginWithTitle:DoraemonDemoLocalizedString(@"测试插件") icon:@"doraemon_default" desc:DoraemonDemoLocalizedString(@"测试插件") pluginName:@"TestPlugin" atModule:DoraemonDemoLocalizedString(@"业务工具")];
[[DoraemonManager shareInstance] addPluginWithTitle:DoraemonLocalizedString(@"block方式加入插件") icon:@"doraemon_default" desc:@"测试插件" pluginName:@"TestPlugin" atModule:DoraemonLocalizedString(@"业务工具") handle:^(NSDictionary *itemData) {
[[DoraemonManager shareInstance] addPluginWithTitle:DoraemonDemoLocalizedString(@"block方式加入插件") icon:@"doraemon_default" desc:@"测试插件" pluginName:@"TestPlugin" atModule:DoraemonDemoLocalizedString(@"业务工具") handle:^(NSDictionary *itemData) {
NSLog(@"handle block plugin");
}];
......
......@@ -10,6 +10,8 @@
#ifndef DoraemonKitDemo_PrefixHeader_pch
#define DoraemonKitDemo_PrefixHeader_pch
#import "DoraemonKitDemoi18Util.h"
#if __has_include(<CocoaLumberjack/CocoaLumberjack.h>)
#import <CocoaLumberjack/CocoaLumberjack.h>
......
//
// DoraemonKitDemoi18Util.h
// DoraemonKitDemo
//
// Created by didi on 2020/4/4.
// Copyright © 2020 yixiang. All rights reserved.
//
#import <Foundation/Foundation.h>
#define DoraemonDemoLocalizedString(key) [DoraemonKitDemoi18Util localizedString:key]
NS_ASSUME_NONNULL_BEGIN
@interface DoraemonKitDemoi18Util : NSObject
+ (NSString *)localizedString:(NSString *)key;
@end
NS_ASSUME_NONNULL_END
//
// DoraemonKitDemoi18Util.m
// DoraemonKitDemo
//
// Created by didi on 2020/4/4.
// Copyright © 2020 yixiang. All rights reserved.
//
#import "DoraemonKitDemoi18Util.h"
@implementation DoraemonKitDemoi18Util
+ (NSString *)localizedString:(NSString *)key {
NSString *language = [[NSLocale preferredLanguages] firstObject];
if (language.length == 0) {
return key;
}
NSString *fileNamePrefix = @"zh-Hans";
if([language hasPrefix:@"en"]) {
fileNamePrefix = @"en";
}
NSString *path = [[NSBundle mainBundle] pathForResource:fileNamePrefix ofType:@"lproj"];
NSBundle *bundle = [NSBundle bundleWithPath:path];
NSString *localizedString = [bundle localizedStringForKey:key value:nil table:@"DoraemonKitDemo"];
if (!localizedString) {
localizedString = key;
}
return localizedString;
}
@end
/*
DoraemonKitDemo.strings
DoraemonKitDemo
Created by didi on 2020/4/4.
Copyright © 2020 yixiang. All rights reserved.
*/
{
//DoraemonKitDemo
//沙盒测试Demo
"沙盒测试Demo" = "Sandbox test Demo";
"添加一条json到沙盒中" = "Add json into sandbox";
"添加一张图片到沙盒中" = "Add image into sandbox";
"添加一段mp4到沙盒中" = "add mp4 into sandbox";
"添加doc、xlsx、pdf到沙盒中" = "Add doc、xlsx、pdf into sandbox";
"添加html到沙盒中" = "Add html into sandbox";
"添加DB到沙盒中" = "Add DB into sandbox";
//日志测试Demo
"日志测试Demo" = "Log test Demo";
"添加一条NSLog日志" = "Add NSLog log";
"添加一条CocoaLumberjack日志" = "Add CocoaLumberjack log";
//性能测试Demo
"性能测试Demo" = "Performance Test Demo";
"低FPS操作打开" = "Low FPS operation";
"高CPU操作打开" = "High CPU operation";
"高CPU操作关闭" = "High CPU operation off";
"高内存操作打开" = "High memory operation";
"高内存操作关闭" = "High memory operation off";
"高流量操作打开" = "High network traffic operation";
"卡顿操作打开" = "ANR operation";
//视觉测试Demo
"视觉测试Demo" = "UI test Demo";
"我是来测试的" = "Test";
//网络测试Demo
"网络测试Demo" = "Networking test Demo";
"发送一条URLConnection请求" = "Send URLConnection request";
"发送一条NSURLSession请求" = "Send NSURLSession request";
"发送一条AFNetworking请求" = "Send AFNetworking request";
"发送一条AFNetworking请求2" = "Send AFNetworking request2";
"打开UIWebView" = "Open UIWebView";
"打开WKWebView" = "Open WKWebView";
"图片测试" = "Image Test";
"Mock测试" = "Mock Test";
"Mock测试2" = "Mock Test 2";
//模拟位置Demo
"模拟位置Demo" = "Mock GPS Demo";
"模拟位置" = "Mock GPS";
//crash
"crash触发Demo" = "Crash Demo";
"uncaughtException" = "uncaughtException";
"signalException" = "signalException";
//通用测试Demo
"通用测试Demo" = "Common test Demo";
"子线程UI操作" = "Sub Thread UI";
"显示入口" = "Show Doraemon";
"隐藏入口" = "Hidden Doraemon";
//测试泄漏测试
"内存泄漏测试" = "Memory Leak Test";
//Other
"block方式加入插件" = "Add plugins from block";
"测试插件" = "Test plugin";
}
/*
DoraemonKitDemo.strings
DoraemonKitDemo
Created by didi on 2020/4/4.
Copyright © 2020 yixiang. All rights reserved.
*/
{
//DoraemonKitDemo
//沙盒测试Demo
"沙盒测试Demo" = "沙盒测试Demo";
"添加一条json到沙盒中" = "添加一条json到沙盒中";
"添加一张图片到沙盒中" = "添加一张图片到沙盒中";
"添加一段mp4到沙盒中" = "添加一段mp4到沙盒中";
"添加doc、xlsx、pdf到沙盒中" = "添加doc、xlsx、pdf到沙盒中";
"添加html到沙盒中" = "添加html到沙盒中";
"添加DB到沙盒中" = "添加DB到沙盒中";
//日志测试Demo
"日志测试Demo" = "日志测试Demo";
"添加一条NSLog日志" = "添加一条NSLog日志";
"添加一条CocoaLumberjack日志" = "添加一条CocoaLumberjack日志";
//性能测试Demo
"性能测试Demo" = "性能测试Demo";
"低FPS操作打开" = "低FPS操作打开";
"高CPU操作打开" = "高CPU操作打开";
"高CPU操作关闭" = "高CPU操作关闭";
"高内存操作打开" = "高内存操作打开";
"高内存操作关闭" = "高内存操作关闭";
"高流量操作打开" = "高流量操作打开";
"卡顿操作打开" = "卡顿操作打开";
//视觉测试Demo
"视觉测试Demo" = "视觉测试Demo";
"我是来测试的" = "我是来测试的";
//网络测试Demo
"网络测试Demo" = "网络测试Demo";
"发送一条URLConnection请求" = "发送一条URLConnection请求";
"发送一条NSURLSession请求" = "发送一条NSURLSession请求";
"发送一条AFNetworking请求" = "发送一条AFNetworking请求";
"发送一条AFNetworking请求2" = "发送一条AFNetworking请求2";
"打开UIWebView" = "打开UIWebView";
"打开WKWebView" = "打开WKWebView";
"图片测试" = "图片测试";
"Mock测试" = "Mock测试";
"Mock测试2" = "Mock测试2";
//模拟位置Demo
"模拟位置Demo" = "模拟位置Demo";
"模拟位置" = "模拟位置";
//crash
"crash触发Demo" = "crash触发Demo";
"uncaughtException" = "uncaughtException";
"signalException" = "signalException";
//通用测试Demo
"通用测试Demo" = "通用测试Demo";
"子线程UI操作" = "子线程UI操作";
"显示入口" = "显示入口";
"隐藏入口" = "隐藏入口";
//测试泄漏测试
"内存泄漏测试" = "内存泄漏测试";
//Other
"block方式加入插件" = "block方式加入插件";
"测试插件" = "测试插件";
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册