Pārlūkot izejas kodu

修改IOS客户端灰度发布需求

liufl5 5 gadi atpakaļ
vecāks
revīzija
f33b949349

+ 3 - 3
IpuLib/IpuLib.xcodeproj/xcuserdata/mac.xcuserdatad/xcschemes/xcschememanagement.plist

@ -12,7 +12,7 @@
12 12
		<key>IpuLib.xcscheme_^#shared#^_</key>
13 13
		<dict>
14 14
			<key>orderHint</key>
15
			<integer>7</integer>
15
			<integer>4</integer>
16 16
		</dict>
17 17
		<key>IpuLib4Appstore.xcscheme</key>
18 18
		<dict>
@ -22,7 +22,7 @@
22 22
		<key>IpuLib4Appstore.xcscheme_^#shared#^_</key>
23 23
		<dict>
24 24
			<key>orderHint</key>
25
			<integer>14</integer>
25
			<integer>3</integer>
26 26
		</dict>
27 27
		<key>IpuLib4Develop.xcscheme</key>
28 28
		<dict>
@ -32,7 +32,7 @@
32 32
		<key>IpuLib4Develop.xcscheme_^#shared#^_</key>
33 33
		<dict>
34 34
			<key>orderHint</key>
35
			<integer>15</integer>
35
			<integer>5</integer>
36 36
		</dict>
37 37
	</dict>
38 38
</dict>

BIN
SuperMenu/SuperMenu.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate


+ 1 - 1
SuperMenu/SuperMenu.xcodeproj/xcuserdata/mac.xcuserdatad/xcschemes/xcschememanagement.plist

@ -12,7 +12,7 @@
12 12
		<key>SuperMenu.xcscheme_^#shared#^_</key>
13 13
		<dict>
14 14
			<key>orderHint</key>
15
			<integer>3</integer>
15
			<integer>2</integer>
16 16
		</dict>
17 17
	</dict>
18 18
</dict>

BIN
SuperMenu/SuperMenu.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate


+ 8 - 9
WadeMobileFunc/WadeMobileFunc.xcodeproj/project.pbxproj

@ -38,13 +38,13 @@
38 38
		01FC20812007700C00FA8B40 /* WDFSocial.h in Headers */ = {isa = PBXBuildFile; fileRef = 01FC207D2007700C00FA8B40 /* WDFSocial.h */; settings = {ATTRIBUTES = (Public, ); }; };
39 39
		0429A26021805228003CEE83 /* WDFResourceVersion.m in Sources */ = {isa = PBXBuildFile; fileRef = 0429A25E21805228003CEE83 /* WDFResourceVersion.m */; };
40 40
		0429A26121805228003CEE83 /* WDFResourceVersion.h in Headers */ = {isa = PBXBuildFile; fileRef = 0429A25F21805228003CEE83 /* WDFResourceVersion.h */; settings = {ATTRIBUTES = (Public, ); }; };
41
		04327F3522F9642400B7670A /* WDFScreenCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = 04327F3322F9642400B7670A /* WDFScreenCapture.h */; };
41
		04327F3522F9642400B7670A /* WDFScreenCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = 04327F3322F9642400B7670A /* WDFScreenCapture.h */; settings = {ATTRIBUTES = (Public, ); }; };
42 42
		04327F3622F9642400B7670A /* WDFScreenCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 04327F3422F9642400B7670A /* WDFScreenCapture.m */; };
43 43
		0455D01A224B4DEC006B3F28 /* WDFTipsHUD.h in Headers */ = {isa = PBXBuildFile; fileRef = 0455D018224B4DEC006B3F28 /* WDFTipsHUD.h */; settings = {ATTRIBUTES = (Public, ); }; };
44 44
		0455D01B224B4DEC006B3F28 /* WDFTipsHUD.m in Sources */ = {isa = PBXBuildFile; fileRef = 0455D019224B4DEC006B3F28 /* WDFTipsHUD.m */; };
45 45
		046DC4F1211D21BC00BCA3F5 /* WDFImageCache.h in Headers */ = {isa = PBXBuildFile; fileRef = 046DC4EF211D21BC00BCA3F5 /* WDFImageCache.h */; settings = {ATTRIBUTES = (Public, ); }; };
46 46
		046DC4F2211D21BC00BCA3F5 /* WDFImageCache.m in Sources */ = {isa = PBXBuildFile; fileRef = 046DC4F0211D21BC00BCA3F5 /* WDFImageCache.m */; };
47
		04B7AB5D22FBCE57009B6449 /* IPUGrayPlugin.h in Headers */ = {isa = PBXBuildFile; fileRef = 04B7AB5B22FBCE57009B6449 /* IPUGrayPlugin.h */; };
47
		04B7AB5D22FBCE57009B6449 /* IPUGrayPlugin.h in Headers */ = {isa = PBXBuildFile; fileRef = 04B7AB5B22FBCE57009B6449 /* IPUGrayPlugin.h */; settings = {ATTRIBUTES = (Public, ); }; };
48 48
		04B7AB5E22FBCE57009B6449 /* IPUGrayPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = 04B7AB5C22FBCE57009B6449 /* IPUGrayPlugin.m */; };
49 49
		0A0A235D1CACB92100947564 /* WDFMobileContacts.h in Headers */ = {isa = PBXBuildFile; fileRef = 0A0A235B1CACB92100947564 /* WDFMobileContacts.h */; settings = {ATTRIBUTES = (Public, ); }; };
50 50
		0A0A235E1CACB92100947564 /* WDFMobileContacts.m in Sources */ = {isa = PBXBuildFile; fileRef = 0A0A235C1CACB92100947564 /* WDFMobileContacts.m */; };
@ -457,6 +457,8 @@
457 457
			isa = PBXHeadersBuildPhase;
458 458
			buildActionMask = 2147483647;
459 459
			files = (
460
				04327F3522F9642400B7670A /* WDFScreenCapture.h in Headers */,
461
				04B7AB5D22FBCE57009B6449 /* IPUGrayPlugin.h in Headers */,
460 462
				0455D01A224B4DEC006B3F28 /* WDFTipsHUD.h in Headers */,
461 463
				B2E8BEB82175D89700A06A13 /* ImageDetailViewController.h in Headers */,
462 464
				B2E8BEBA2175D89700A06A13 /* WDFCustomCamera.h in Headers */,
@ -480,14 +482,12 @@
480 482
				0A0A235D1CACB92100947564 /* WDFMobileContacts.h in Headers */,
481 483
				E2DE1B0F1B42DE6A00762141 /* WDFMobileLocation.h in Headers */,
482 484
				E2DE1B0D1B42DE6A00762141 /* WDFMobileFile.h in Headers */,
483
				04327F3522F9642400B7670A /* WDFScreenCapture.h in Headers */,
484 485
				E2DE1B151B42DE6A00762141 /* WDFMobileUI.h in Headers */,
485 486
				B2ADA4292186DEDB00F0E722 /* IpuAuthentication.h in Headers */,
486 487
				E2DE1B111B42DE6A00762141 /* WDFMobileNetwork.h in Headers */,
487 488
				E2DE1B131B42DE6A00762141 /* WDFMobileStorage.h in Headers */,
488 489
				B21A33FC20B516A700920072 /* WDFSystemPermissionPlugin.h in Headers */,
489 490
				E2DE1B091B42DE6A00762141 /* WDFMobileBasic.h in Headers */,
490
				04B7AB5D22FBCE57009B6449 /* IPUGrayPlugin.h in Headers */,
491 491
			);
492 492
			runOnlyForDeploymentPostprocessing = 0;
493 493
		};
@ -550,7 +550,6 @@
550 550
					};
551 551
					E2DE1AD31B42DD9500762141 = {
552 552
						CreatedOnToolsVersion = 6.3.2;
553
						DevelopmentTeam = AKH3YVA3CT;
554 553
						ProvisioningStyle = Manual;
555 554
					};
556 555
				};
@ -859,7 +858,7 @@
859 858
				CODE_SIGN_IDENTITY = "iPhone Developer";
860 859
				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
861 860
				DEFINES_MODULE = YES;
862
				DEVELOPMENT_TEAM = AKH3YVA3CT;
861
				DEVELOPMENT_TEAM = "";
863 862
				DYLIB_COMPATIBILITY_VERSION = 1;
864 863
				DYLIB_CURRENT_VERSION = 1;
865 864
				DYLIB_INSTALL_NAME_BASE = "@rpath";
@ -876,7 +875,7 @@
876 875
				);
877 876
				INFOPLIST_FILE = WadeMobileFunc/Info.plist;
878 877
				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
879
				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
878
				IPHONEOS_DEPLOYMENT_TARGET = 9.3;
880 879
				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
881 880
				LIBRARY_SEARCH_PATHS = (
882 881
					"$(inherited)",
@ -902,7 +901,7 @@
902 901
				CODE_SIGN_IDENTITY = "iPhone Developer";
903 902
				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
904 903
				DEFINES_MODULE = YES;
905
				DEVELOPMENT_TEAM = AKH3YVA3CT;
904
				DEVELOPMENT_TEAM = "";
906 905
				DYLIB_COMPATIBILITY_VERSION = 1;
907 906
				DYLIB_CURRENT_VERSION = 1;
908 907
				DYLIB_INSTALL_NAME_BASE = "@rpath";
@ -918,7 +917,7 @@
918 917
				);
919 918
				INFOPLIST_FILE = WadeMobileFunc/Info.plist;
920 919
				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
921
				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
920
				IPHONEOS_DEPLOYMENT_TARGET = 9.3;
922 921
				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
923 922
				LIBRARY_SEARCH_PATHS = (
924 923
					"$(inherited)",

+ 2 - 2
WadeMobileFunc/WadeMobileFunc.xcodeproj/xcuserdata/mac.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist

@ -26,7 +26,7 @@
26 26
                  moduleName = "WadeMobileFunc"
27 27
                  usesParentBreakpointCondition = "Yes"
28 28
                  urlString = "file:///Users/mac/work/asiainfo/ios-share/WadeMobileFunc/WadeMobileFunc/WDFSocial.m"
29
                  timestampString = "586926506.670706"
29
                  timestampString = "588065480.98122"
30 30
                  startingColumnNumber = "9223372036854775807"
31 31
                  endingColumnNumber = "9223372036854775807"
32 32
                  startingLineNumber = "291"
@ -41,7 +41,7 @@
41 41
                  moduleName = "WadeMobileFunc"
42 42
                  usesParentBreakpointCondition = "Yes"
43 43
                  urlString = "file:///Users/mac/work/asiainfo/ios-share/WadeMobileFunc/WadeMobileFunc/WDFSocial.m"
44
                  timestampString = "586926506.673286"
44
                  timestampString = "588065480.983206"
45 45
                  startingColumnNumber = "9223372036854775807"
46 46
                  endingColumnNumber = "9223372036854775807"
47 47
                  startingLineNumber = "292"

+ 3 - 3
WadeMobileFunc/WadeMobileFunc.xcodeproj/xcuserdata/mac.xcuserdatad/xcschemes/xcschememanagement.plist

@ -12,7 +12,7 @@
12 12
		<key>WadeMobileFunc.xcscheme_^#shared#^_</key>
13 13
		<dict>
14 14
			<key>orderHint</key>
15
			<integer>4</integer>
15
			<integer>7</integer>
16 16
		</dict>
17 17
		<key>WadeMobileFunc4Appstore.xcscheme</key>
18 18
		<dict>
@ -22,7 +22,7 @@
22 22
		<key>WadeMobileFunc4Appstore.xcscheme_^#shared#^_</key>
23 23
		<dict>
24 24
			<key>orderHint</key>
25
			<integer>6</integer>
25
			<integer>5</integer>
26 26
		</dict>
27 27
		<key>WadeMobileFuncAggregate.xcscheme</key>
28 28
		<dict>
@ -32,7 +32,7 @@
32 32
		<key>WadeMobileFuncAggregate.xcscheme_^#shared#^_</key>
33 33
		<dict>
34 34
			<key>orderHint</key>
35
			<integer>5</integer>
35
			<integer>6</integer>
36 36
		</dict>
37 37
	</dict>
38 38
</dict>

+ 0 - 4
WadeMobileFunc/WadeMobileFunc/IPUGrayPlugin.h

@ -12,10 +12,6 @@
12 12
13 13
/*
14 14
 设置主应用灰度环境
15
 a.输入参数:主应用灰度环境参数:g_user_flag,g_request_host,g_request_path,g_res_host
16
 b.如果g_user_flag=1,则根据灰度环境的参数,对主应用进行资源更新,并且保存灰度环境参数,下次启动app之后直接使用灰度环境参数进行,如果更新完成,则静默走success回调
17
 c.资源更新完成后,直接弹窗提示,“灰度环境资源更新完成,请重新进入蜂行动”,点击确定后关闭app
18
 d.如果g_user_flag=0,则直接使用mobile-config的资源路径与主环境资源进行比较,进行资源更新(如果无需更新则不更新),更新完成后提示,“资源更新完成,请重新进入蜂行动”,点击确定后关闭app,下次进入
19 15
 */
20 16
-(void)updateGrayInfo:(NSArray *)params;
21 17

+ 49 - 38
WadeMobileFunc/WadeMobileFunc/IPUGrayPlugin.m

@ -19,11 +19,11 @@
19 19
 */
20 20
-(void)updateGrayInfo:(NSArray *)params{
21 21
    if (params && params.count>0) {
22
        BOOL isGrayUser = false;
22
        NSString *isGrayUser = nil;
23 23
        if (params[0]==[NSNull null]) {
24
            isGrayUser = false;
24
            isGrayUser = nil;
25 25
        }else{
26
            isGrayUser = [params[0] boolValue];
26
            isGrayUser = [NSString stringWithFormat:@"%@",params[0]];
27 27
        }
28 28
        
29 29
        NSString *grayRequestHost = nil;
@ -53,48 +53,59 @@
53 53
            }
54 54
        }
55 55
        
56
        NSString * userFlag = [[NSUserDefaults standardUserDefaults] valueForKey:@"GRAY_USER_FLAG"];
57
        if (isGrayUser != [userFlag boolValue]) {//环境发生变化
56
        NSString * userFlag = [[NSUserDefaults standardUserDefaults] valueForKey:@"IS_GRAY_USER"];
57
        if (![isGrayUser isEqualToString:userFlag]) {//环境发生变化
58 58
            UIAlertController* alert = nil;
59
            if (isGrayUser==YES) {//灰度
60
                alert = [UIAlertController alertControllerWithTitle:nil
61
                       message:@"服务器环境发生变化,是否退出重新打开以切换到灰度服务器?"  preferredStyle:UIAlertControllerStyleAlert];
62
                UIAlertAction* confirmAction = [UIAlertAction actionWithTitle:@"确定"     style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) {
63
                    
64
                    [self setGrayIsGrayUser:isGrayUser grayRequestHost:grayRequestHost grayRequestPath:grayRequestPath grayResourceHost:grayResourceHost];
65
                    
66
                    [[NSUserDefaults standardUserDefaults] setValue:@"1" forKey:@"GRAY_USER_FLAG"];
67
                    [[NSUserDefaults standardUserDefaults] synchronize];
68
                    exit(0);
69
                }];
70
                UIAlertAction* cancelAction = [UIAlertAction actionWithTitle:@"取消"     style:UIAlertActionStyleCancel handler:^(UIAlertAction * action) {
71
                    
72
                }];
73
                [alert addAction:confirmAction];
74
                [alert addAction:cancelAction];
75
            }else{//生产
76
                alert = [UIAlertController alertControllerWithTitle:nil
77
                         message:@"服务器环境发生变化,是否退出重新打开以切换到生产服务器?"  preferredStyle:UIAlertControllerStyleAlert];
78
                UIAlertAction* confirmAction = [UIAlertAction actionWithTitle:@"确定"     style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) {
79
                    [[NSUserDefaults standardUserDefaults] setValue:@"0" forKey:@"GRAY_USER_FLAG"];
80
                    [[NSUserDefaults standardUserDefaults] synchronize];
81
                    exit(0);
82
                }];
83
                UIAlertAction* cancelAction = [UIAlertAction actionWithTitle:@"取消"     style:UIAlertActionStyleCancel handler:^(UIAlertAction * action) {
59
            if ([isGrayUser isEqualToString:@"0"]) {
60
                if ([userFlag isEqualToString:@"1"]){//主应用子应用从灰度切换到生产
61
                    [self alert:alert message:@"发现正式版本,选择更新后将关闭应用,请重新打开" userFlag:isGrayUser requestHost:grayRequestHost requestPath:grayRequestPath resourceHost:grayResourceHost isExit:YES];
62
                }
63
                else if ([userFlag isEqualToString:@"2"]){//主应用子应用切换到生产
64
                    [self alert:alert message:@"发现正式版本,选择更新后将关闭应用,请重新打开" userFlag:isGrayUser requestHost:grayRequestHost requestPath:grayRequestPath resourceHost:grayResourceHost isExit:YES];
65
                }
66
            }
67
            else if ([isGrayUser isEqualToString:@"1"]){
68
                if ([userFlag isEqualToString:@"0"]) {//主应用子应用从生产切换到灰度
69
                    [self alert:alert message:@"发现新版本,选择更新后将关闭应用,请重新打开" userFlag:isGrayUser requestHost:grayRequestHost requestPath:grayRequestPath resourceHost:grayResourceHost isExit:YES];
70
                }
71
                else if ([userFlag isEqualToString:@"2"]){//主应用切换到灰度
72
                    [self alert:alert message:@"发现新版本,选择更新后将关闭应用,请重新打开" userFlag:isGrayUser requestHost:grayRequestHost requestPath:grayRequestPath resourceHost:grayResourceHost isExit:YES];
73
                }
74
            }
75
            else if ([isGrayUser isEqualToString:@"2"]){
76
                if ([userFlag isEqualToString:@"0"]) {//子应用切换到灰度
77
                    [self alert:alert message:@"子应用发现新版本,选择更新后将加载新版本" userFlag:isGrayUser requestHost:grayRequestHost requestPath:grayRequestPath resourceHost:grayResourceHost isExit:NO];
78
                }
79
            }
80
            
81
            if (alert) {
82
                [[self getViewController] presentViewController:alert animated:YES completion:^{
84 83
                    
85 84
                }];
86
                [alert addAction:confirmAction];
87
                [alert addAction:cancelAction];
88 85
            }
89
            [[self getViewController] presentViewController:alert animated:YES completion:^{
90
                
91
            }];
92 86
        }
93 87
    }
94 88
}
95
-(void)setGrayIsGrayUser:(BOOL)isGrayUser grayRequestHost:(NSString *)grayRequestHost grayRequestPath:(NSString *)grayRequestPath grayResourceHost:(NSString *)grayResourceHost{
96
    [[NSUserDefaults standardUserDefaults] setBool:isGrayUser forKey:@"IS_GRAY_USER"];
97
    if (isGrayUser) {//灰度用户
89
    
90
-(void)alert:(UIAlertController *)alert message:(NSString *)message userFlag:(NSString *)userFlag requestHost:(NSString *)requestHost requestPath:(NSString *)requestPath resourceHost:(NSString *)resourceHost isExit:(BOOL)isExit{
91
        alert = [UIAlertController alertControllerWithTitle:nil
92
                                                    message:message  preferredStyle:UIAlertControllerStyleAlert];
93
        UIAlertAction* confirmAction = [UIAlertAction actionWithTitle:@"马上更新"     style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) {
94
            [self setGrayIsGrayUser:userFlag grayRequestHost:requestHost grayRequestPath:requestPath grayResourceHost:resourceHost];
95
            if (isExit) {
96
                exit(0);
97
            }
98
        }];
99
        UIAlertAction* cancelAction = [UIAlertAction actionWithTitle:@"下次提醒"     style:UIAlertActionStyleCancel handler:^(UIAlertAction * action) {
100
            
101
        }];
102
        [alert addAction:confirmAction];
103
        [alert addAction:cancelAction];
104
    }
105
    
106
-(void)setGrayIsGrayUser:(NSString *)isGrayUser grayRequestHost:(NSString *)grayRequestHost grayRequestPath:(NSString *)grayRequestPath grayResourceHost:(NSString *)grayResourceHost{
107
    [[NSUserDefaults standardUserDefaults] setValue:isGrayUser forKey:@"IS_GRAY_USER"];
108
    if ([isGrayUser isEqualToString:@"1"]) {//灰度用户
98 109
        if (grayRequestHost) {
99 110
            [[NSUserDefaults standardUserDefaults] setValue:grayRequestHost forKey:@"GRAY_REQUEST_HOST"];
100 111
        }