Browse Source

修复backWithCallback多层返回的问题

liuql6 5 years ago
parent
commit
f130e2dbb1
24 changed files with 40 additions and 47 deletions
  1. 5 0
      IPUCommon/IPUMobile.framework/Headers/IPUFlipperView.h
  2. 0 4
      IPUCommon/IPUMobile.framework/Headers/IPUPlugin.h
  3. BIN
      IPUCommon/IPUMobile.framework/IPUMobile
  4. BIN
      IPUCommon/IPUMobile.framework/Info.plist
  5. BIN
      IPUCommon/IPUMobileFunc.framework/IPUMobileFunc
  6. BIN
      IPUCommon/IPUMobileFunc.framework/Info.plist
  7. BIN
      IPUCommon/IPUMobileUI.framework/IPUMobileUI
  8. 14 16
      IPUMobileFunc/IPUMobileFunc/IPUMobileUIPlugin.m
  9. 1 1
      display-center/ReactNative/node_modules/react-native-camera/ios/RNCamera.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  10. 1 1
      display-center/ReactNative/node_modules/react-native-gesture-handler/ios/RNGestureHandler.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  11. 1 1
      display-center/ReactNative/node_modules/react-native-vector-icons/RNVectorIcons.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  12. 1 1
      display-center/ReactNative/node_modules/react-native-webview/ios/RNCWebView.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  13. 1 1
      display-center/ReactNative/node_modules/react-native/Libraries/ART/ART.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  14. 1 1
      display-center/ReactNative/node_modules/react-native/Libraries/CameraRoll/RCTCameraRoll.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  15. 1 1
      display-center/ReactNative/node_modules/react-native/Libraries/Image/RCTImage.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  16. 1 1
      display-center/ReactNative/node_modules/react-native/Libraries/LinkingIOS/RCTLinking.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  17. 1 1
      display-center/ReactNative/node_modules/react-native/Libraries/NativeAnimation/RCTAnimation.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  18. 1 1
      display-center/ReactNative/node_modules/react-native/Libraries/Network/RCTNetwork.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  19. 1 1
      display-center/ReactNative/node_modules/react-native/Libraries/Settings/RCTSettings.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  20. 1 1
      display-center/ReactNative/node_modules/react-native/Libraries/Text/RCTText.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  21. 2 2
      display-center/ReactNative/node_modules/react-native/Libraries/WebSocket/RCTWebSocket.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  22. 7 7
      display-center/ReactNative/node_modules/react-native/React/React.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  23. 0 6
      display-center/display-center.xcworkspace/contents.xcworkspacedata
  24. BIN
      display-center/display-center.xcworkspace/xcuserdata/benny.xcuserdatad/UserInterfaceState.xcuserstate

+ 5 - 0
IPUCommon/IPUMobile.framework/Headers/IPUFlipperView.h

@ -128,6 +128,11 @@ typedef NS_OPTIONS(NSUInteger, IPUAnimationType) {
128 128
 */
129 129
- (NSUInteger)getViewOffset:(NSString *)pageAction;
130 130
131
/// 获取指定pageAction View的offset以及视图对象
132
/// @param pageAction <#pageAction description#>
133
/// @param destinationView <#destinationView description#>
134
- (NSUInteger)getViewOffert:(NSString *)pageAction view:(UIView **)destinationView;
135
131 136
@end
132 137
133 138
NS_ASSUME_NONNULL_END

+ 0 - 4
IPUCommon/IPUMobile.framework/Headers/IPUPlugin.h

@ -12,8 +12,6 @@
12 12
13 13
#import "IPUMobileDelegate.h"
14 14
15
typedef void(^IPUPlugnCompletion)(BOOL success, NSString *result);
16
17 15
@protocol IPUPluginProtocol;
18 16
19 17
@class IPUMobileWebView;
@ -36,6 +34,4 @@ typedef void(^IPUPlugnCompletion)(BOOL success, NSString *result);
36 34
37 35
- (UIViewController *)getViewController;
38 36
39
@property (nonatomic, copy) IPUPlugnCompletion success;
40
41 37
@end

BIN
IPUCommon/IPUMobile.framework/IPUMobile


BIN
IPUCommon/IPUMobile.framework/Info.plist


BIN
IPUCommon/IPUMobileFunc.framework/IPUMobileFunc


BIN
IPUCommon/IPUMobileFunc.framework/Info.plist


BIN
IPUCommon/IPUMobileUI.framework/IPUMobileUI


+ 14 - 16
IPUMobileFunc/IPUMobileFunc/IPUMobileUIPlugin.m

@ -673,7 +673,18 @@
673 673
    }
674 674
    NSString *result = param[0];    // 回调数据
675 675
    IPUFlipperView *flipperView = (IPUFlipperView *)[(UIView *)[self.mobileDelegate getCurrentView] superview];
676
    UIView *formerView = [flipperView getFormerView];   // 获取上一个视图
676
    UIView *formerView = nil;
677
    if (!param[1] || [param[1] isKindOfClass:[NSNull class]]) {
678
        formerView = [flipperView getFormerView];   // 获取上一个视图
679
        [flipperView backWithCount:1];
680
    } else {
681
        // 多层级返回
682
        NSString *pageAction = param[1];
683
        NSInteger count = [flipperView getViewOffert:pageAction view:&formerView];
684
            
685
        [flipperView backWithCount:count];
686
    }
687
677 688
    if ([formerView isKindOfClass:[UIWebView class]] ||
678 689
        [formerView isKindOfClass:NSClassFromString(@"WKWebView")]) {   // 上一个视图注入js
679 690
        // 构造需要注入的js
@ -683,11 +694,6 @@
683 694
        // ReactNative RCTRootView 预留
684 695
        // ...
685 696
    }
686
    // 返回到上一个页面
687
    NSString *pageAction = param[1];
688
    // 目标视图与当前视图的偏移量,默认为1,即当前视图的上一层视图
689
    NSInteger count = [flipperView getViewOffset:pageAction];
690
    [flipperView backWithCount:count];
691 697
}
692 698
693 699
- (void)openWindow:(NSArray *)param {
@ -703,19 +709,12 @@
703 709
    
704 710
    UIViewController *rootCtrl = [self getViewController];
705 711
    if (rootCtrl.presentedViewController) {
706
        [rootCtrl dismissViewControllerAnimated:NO completion:nil];
712
        [rootCtrl.presentedViewController dismissViewControllerAnimated:NO completion:nil];
707 713
    }
708 714
    
709 715
    IPUWindowViewController *window = [[IPUWindowViewController alloc] init];
710 716
    window.modalPresentationStyle = UIModalPresentationFullScreen;
711 717
    
712
    // 设置透明效果
713
    if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0) {
714
            
715
    } else {
716
        rootCtrl.modalPresentationStyle = UIModalPresentationCurrentContext;
717
    }
718
    
719 718
    window.pageAction = pageAction;
720 719
    window.pageData = pageParam;
721 720
    window.plugin = self;
@ -749,8 +748,7 @@
749 748
750 749
- (void)getPage:(NSArray *)param {
751 750
    NSString *pageAction = param[0];
752
    NSObject *dataParam = param[1];
753
    
751
    NSObject *dataParam = param[1];    
754 752
    NSString *dataAction = [IPUServerPage getData:pageAction];
755 753
    IPUDataMap *pageParam = nil;
756 754
    if (dataAction) {

+ 1 - 1
display-center/ReactNative/node_modules/react-native-camera/ios/RNCamera.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -9,7 +9,7 @@
9 9
			<key>isShown</key>
10 10
			<false/>
11 11
			<key>orderHint</key>
12
			<integer>28</integer>
12
			<integer>27</integer>
13 13
		</dict>
14 14
	</dict>
15 15
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native-gesture-handler/ios/RNGestureHandler.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -9,7 +9,7 @@
9 9
			<key>isShown</key>
10 10
			<false/>
11 11
			<key>orderHint</key>
12
			<integer>24</integer>
12
			<integer>23</integer>
13 13
		</dict>
14 14
	</dict>
15 15
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native-vector-icons/RNVectorIcons.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -16,7 +16,7 @@
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>26</integer>
19
			<integer>25</integer>
20 20
		</dict>
21 21
	</dict>
22 22
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native-webview/ios/RNCWebView.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -9,7 +9,7 @@
9 9
			<key>isShown</key>
10 10
			<false/>
11 11
			<key>orderHint</key>
12
			<integer>23</integer>
12
			<integer>22</integer>
13 13
		</dict>
14 14
	</dict>
15 15
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native/Libraries/ART/ART.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -16,7 +16,7 @@
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>31</integer>
19
			<integer>30</integer>
20 20
		</dict>
21 21
	</dict>
22 22
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native/Libraries/CameraRoll/RCTCameraRoll.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -9,7 +9,7 @@
9 9
			<key>isShown</key>
10 10
			<false/>
11 11
			<key>orderHint</key>
12
			<integer>32</integer>
12
			<integer>31</integer>
13 13
		</dict>
14 14
	</dict>
15 15
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native/Libraries/Image/RCTImage.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -16,7 +16,7 @@
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>30</integer>
19
			<integer>29</integer>
20 20
		</dict>
21 21
	</dict>
22 22
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native/Libraries/LinkingIOS/RCTLinking.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -16,7 +16,7 @@
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>34</integer>
19
			<integer>33</integer>
20 20
		</dict>
21 21
	</dict>
22 22
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native/Libraries/NativeAnimation/RCTAnimation.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -16,7 +16,7 @@
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>29</integer>
19
			<integer>28</integer>
20 20
		</dict>
21 21
	</dict>
22 22
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native/Libraries/Network/RCTNetwork.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -16,7 +16,7 @@
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>27</integer>
19
			<integer>26</integer>
20 20
		</dict>
21 21
	</dict>
22 22
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native/Libraries/Settings/RCTSettings.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -16,7 +16,7 @@
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>35</integer>
19
			<integer>34</integer>
20 20
		</dict>
21 21
	</dict>
22 22
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native/Libraries/Text/RCTText.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -16,7 +16,7 @@
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>36</integer>
19
			<integer>35</integer>
20 20
		</dict>
21 21
	</dict>
22 22
	<key>SuppressBuildableAutocreation</key>

+ 2 - 2
display-center/ReactNative/node_modules/react-native/Libraries/WebSocket/RCTWebSocket.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -16,7 +16,7 @@
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>37</integer>
19
			<integer>36</integer>
20 20
		</dict>
21 21
		<key>fishhook-tvOS.xcscheme_^#shared#^_</key>
22 22
		<dict>
@ -30,7 +30,7 @@
30 30
			<key>isShown</key>
31 31
			<false/>
32 32
			<key>orderHint</key>
33
			<integer>33</integer>
33
			<integer>32</integer>
34 34
		</dict>
35 35
	</dict>
36 36
	<key>SuppressBuildableAutocreation</key>

+ 7 - 7
display-center/ReactNative/node_modules/react-native/React/React.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -30,7 +30,7 @@
30 30
			<key>isShown</key>
31 31
			<false/>
32 32
			<key>orderHint</key>
33
			<integer>38</integer>
33
			<integer>37</integer>
34 34
		</dict>
35 35
		<key>double-conversion-tvOS.xcscheme_^#shared#^_</key>
36 36
		<dict>
@ -44,7 +44,7 @@
44 44
			<key>isShown</key>
45 45
			<false/>
46 46
			<key>orderHint</key>
47
			<integer>40</integer>
47
			<integer>39</integer>
48 48
		</dict>
49 49
		<key>jsi-tvOS.xcscheme_^#shared#^_</key>
50 50
		<dict>
@ -58,7 +58,7 @@
58 58
			<key>isShown</key>
59 59
			<false/>
60 60
			<key>orderHint</key>
61
			<integer>43</integer>
61
			<integer>42</integer>
62 62
		</dict>
63 63
		<key>jsiexecutor-tvOS.xcscheme_^#shared#^_</key>
64 64
		<dict>
@ -72,7 +72,7 @@
72 72
			<key>isShown</key>
73 73
			<false/>
74 74
			<key>orderHint</key>
75
			<integer>44</integer>
75
			<integer>43</integer>
76 76
		</dict>
77 77
		<key>jsinspector-tvOS.xcscheme_^#shared#^_</key>
78 78
		<dict>
@ -86,7 +86,7 @@
86 86
			<key>isShown</key>
87 87
			<false/>
88 88
			<key>orderHint</key>
89
			<integer>41</integer>
89
			<integer>40</integer>
90 90
		</dict>
91 91
		<key>third-party-tvOS.xcscheme_^#shared#^_</key>
92 92
		<dict>
@ -100,7 +100,7 @@
100 100
			<key>isShown</key>
101 101
			<false/>
102 102
			<key>orderHint</key>
103
			<integer>42</integer>
103
			<integer>41</integer>
104 104
		</dict>
105 105
		<key>yoga-tvOS.xcscheme_^#shared#^_</key>
106 106
		<dict>
@ -114,7 +114,7 @@
114 114
			<key>isShown</key>
115 115
			<false/>
116 116
			<key>orderHint</key>
117
			<integer>39</integer>
117
			<integer>38</integer>
118 118
		</dict>
119 119
	</dict>
120 120
	<key>SuppressBuildableAutocreation</key>

+ 0 - 6
display-center/display-center.xcworkspace/contents.xcworkspacedata

@ -11,12 +11,6 @@
11 11
      location = "group:../../iOS/IPUMobileUI/IPUMobileUI.xcodeproj">
12 12
   </FileRef>
13 13
   <FileRef
14
      location = "group:../../iOS-Plugin/IpuPush/IpuPush.xcodeproj">
15
   </FileRef>
16
   <FileRef
17
      location = "group:../../iOS-Plugin/IPUBaiduMap/IPUBaiduMap.xcodeproj">
18
   </FileRef>
19
   <FileRef
20 14
      location = "group:display-center.xcodeproj">
21 15
   </FileRef>
22 16
</Workspace>

BIN
display-center/display-center.xcworkspace/xcuserdata/benny.xcuserdatad/UserInterfaceState.xcuserstate