Explorar o código

1.升级RTC SDK 。
2.16旋转屏幕兼容

Steven %!s(int64=2) %!d(string=hai) anos
pai
achega
8ce00ab66a
Modificáronse 100 ficheiros con 3922 adicións e 3600 borrados
  1. 2 12
      KulexiuForTeacher/KulexiuForTeacher.xcodeproj/project.pbxproj
  2. BIN=BIN
      KulexiuForTeacher/KulexiuForTeacher.xcworkspace/xcuserdata/wangzhi.xcuserdatad/UserInterfaceState.xcuserstate
  3. 20 4
      KulexiuForTeacher/KulexiuForTeacher.xcworkspace/xcuserdata/wangzhi.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
  4. 2 2
      KulexiuForTeacher/KulexiuForTeacher/Common/Base/KSBaseWKWebViewController.m
  5. 5 4
      KulexiuForTeacher/KulexiuForTeacher/Common/Tools/Category/UIDevice+TFDevice.h
  6. 34 5
      KulexiuForTeacher/KulexiuForTeacher/Common/Tools/Category/UIDevice+TFDevice.m
  7. 1 10
      KulexiuForTeacher/KulexiuForTeacher/Module/Chat/Controller/KSChatListViewController.m
  8. 0 17
      KulexiuForTeacher/KulexiuForTeacher/Module/Chat/View/KSChatGroupListCell.h
  9. 0 92
      KulexiuForTeacher/KulexiuForTeacher/Module/Chat/View/KSChatGroupListCell.m
  10. 0 91
      KulexiuForTeacher/KulexiuForTeacher/Module/Chat/View/KSChatGroupListCell.xib
  11. 3 3
      KulexiuForTeacher/KulexiuForTeacher/Module/Classroom/ClassroomSong/MusicScoreViewController.m
  12. 1 1
      KulexiuForTeacher/KulexiuForTeacher/Module/Classroom/ClassroomSong/SongListViewController.m
  13. 10 10
      KulexiuForTeacher/KulexiuForTeacher/Module/Classroom/Controller/NewClassRoomViewController.m
  14. 1 1
      KulexiuForTeacher/KulexiuForTeacher/Module/Classroom/View/MemberList/ClassMemberListView.m
  15. 1 1
      KulexiuForTeacher/KulexiuForTeacher/Module/Classroom/View/MetronomeView/MetronomeAlertView.m
  16. 2 2
      KulexiuForTeacher/KulexiuForTeacher/Module/Classroom/View/MetronomeView/MetronomeControlView.m
  17. 1 1
      KulexiuForTeacher/KulexiuForTeacher/Module/Live/Controller/LiveRoomViewController.m
  18. 25 11
      KulexiuForTeacher/KulexiuForTeacher/Module/Live/View/SeatContentView.m
  19. 5 6
      KulexiuForTeacher/KulexiuForTeacher/Module/SealClass/Sections/Classroom/View/MainContainer/MainContainerView.m
  20. 4 23
      KulexiuForTeacher/KulexiuForTeacher/Module/SealClass/Sections/Classroom/View/MainContainer/VideoMaskView.m
  21. 5 5
      KulexiuForTeacher/Podfile
  22. 34 37
      KulexiuForTeacher/Podfile.lock
  23. 34 37
      KulexiuForTeacher/Pods/Manifest.lock
  24. 2126 2106
      KulexiuForTeacher/Pods/Pods.xcodeproj/project.pbxproj
  25. 8 8
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongChatRoom.xcframework/Info.plist
  26. 50 29
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongChatRoom.xcframework/ios-arm64_armv7/RongChatRoom.framework/Headers/RCChatRoomClient.h
  27. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongChatRoom.xcframework/ios-arm64_armv7/RongChatRoom.framework/Info.plist
  28. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongChatRoom.xcframework/ios-arm64_armv7/RongChatRoom.framework/RongChatRoom
  29. 4 4
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongChatRoom.xcframework/ios-arm64_armv7/RongChatRoom.framework/_CodeSignature/CodeResources
  30. 50 29
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongChatRoom.xcframework/ios-i386_x86_64-simulator/RongChatRoom.framework/Headers/RCChatRoomClient.h
  31. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongChatRoom.xcframework/ios-i386_x86_64-simulator/RongChatRoom.framework/Info.plist
  32. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongChatRoom.xcframework/ios-i386_x86_64-simulator/RongChatRoom.framework/RongChatRoom
  33. 4 4
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongChatRoom.xcframework/ios-i386_x86_64-simulator/RongChatRoom.framework/_CodeSignature/CodeResources
  34. 8 8
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongCustomerService.xcframework/Info.plist
  35. 21 17
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongCustomerService.xcframework/ios-arm64_armv7/RongCustomerService.framework/Headers/RCCustomerServiceClient.h
  36. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongCustomerService.xcframework/ios-arm64_armv7/RongCustomerService.framework/Info.plist
  37. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongCustomerService.xcframework/ios-arm64_armv7/RongCustomerService.framework/RongCustomerService
  38. 4 4
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongCustomerService.xcframework/ios-arm64_armv7/RongCustomerService.framework/_CodeSignature/CodeResources
  39. 21 17
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongCustomerService.xcframework/ios-i386_x86_64-simulator/RongCustomerService.framework/Headers/RCCustomerServiceClient.h
  40. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongCustomerService.xcframework/ios-i386_x86_64-simulator/RongCustomerService.framework/Info.plist
  41. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongCustomerService.xcframework/ios-i386_x86_64-simulator/RongCustomerService.framework/RongCustomerService
  42. 4 4
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongCustomerService.xcframework/ios-i386_x86_64-simulator/RongCustomerService.framework/_CodeSignature/CodeResources
  43. 2 2
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-arm64_armv7/RongDiscussion.framework/Headers/RCDiscussion.h
  44. 19 16
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-arm64_armv7/RongDiscussion.framework/Headers/RCDiscussionClient.h
  45. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-arm64_armv7/RongDiscussion.framework/Info.plist
  46. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-arm64_armv7/RongDiscussion.framework/RongDiscussion
  47. 7 7
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-arm64_armv7/RongDiscussion.framework/_CodeSignature/CodeResources
  48. 2 2
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-i386_x86_64-simulator/RongDiscussion.framework/Headers/RCDiscussion.h
  49. 19 16
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-i386_x86_64-simulator/RongDiscussion.framework/Headers/RCDiscussionClient.h
  50. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-i386_x86_64-simulator/RongDiscussion.framework/Info.plist
  51. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-i386_x86_64-simulator/RongDiscussion.framework/RongDiscussion
  52. 7 7
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-i386_x86_64-simulator/RongDiscussion.framework/_CodeSignature/CodeResources
  53. 8 8
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/Info.plist
  54. 10 2
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/Headers/RCChatSessionInputBarControl.h
  55. 17 0
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/Headers/RCConversationModel.h
  56. 14 4
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/Headers/RCConversationViewController.h
  57. 28 28
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/Headers/RCIM+Deprecated.h
  58. 8 8
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/Headers/RCIM.h
  59. 1 1
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/Headers/RCKitUIConf.h
  60. 3 0
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/Headers/RongIMKit.h
  61. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/Info.plist
  62. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/RongIMKit
  63. 37 22
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/_CodeSignature/CodeResources
  64. 10 2
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/Headers/RCChatSessionInputBarControl.h
  65. 17 0
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/Headers/RCConversationModel.h
  66. 14 4
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/Headers/RCConversationViewController.h
  67. 28 28
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/Headers/RCIM+Deprecated.h
  68. 8 8
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/Headers/RCIM.h
  69. 1 1
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/Headers/RCKitUIConf.h
  70. 3 0
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/Headers/RongIMKit.h
  71. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/Info.plist
  72. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/RongIMKit
  73. 37 22
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/_CodeSignature/CodeResources
  74. 232 183
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-arm64_armv7/RongIMLib.framework/Headers/RCIMClient.h
  75. 0 1
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-arm64_armv7/RongIMLib.framework/Headers/RongIMLibHeader.h
  76. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-arm64_armv7/RongIMLib.framework/Info.plist
  77. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-arm64_armv7/RongIMLib.framework/RongIMLib
  78. 7 7
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-arm64_armv7/RongIMLib.framework/_CodeSignature/CodeResources
  79. 232 183
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-i386_x86_64-simulator/RongIMLib.framework/Headers/RCIMClient.h
  80. 0 1
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-i386_x86_64-simulator/RongIMLib.framework/Headers/RongIMLibHeader.h
  81. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-i386_x86_64-simulator/RongIMLib.framework/Info.plist
  82. BIN=BIN
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-i386_x86_64-simulator/RongIMLib.framework/RongIMLib
  83. 7 7
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-i386_x86_64-simulator/RongIMLib.framework/_CodeSignature/CodeResources
  84. 8 8
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/Info.plist
  85. 5 3
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCAMRDataConverter.h
  86. 34 27
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCAndroidConfig.h
  87. 20 2
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCBlockedMessageInfo.h
  88. 203 178
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCChannelClient.h
  89. 5 2
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCCommandMessage.h
  90. 5 2
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCCommandNotificationMessage.h
  91. 4 1
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCContactNotificationMessage.h
  92. 31 12
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCConversation.h
  93. 61 1
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCConversationChannelProtocol.h
  94. 11 4
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCConversationStatusInfo.h
  95. 1 0
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCConversationTagInfo.h
  96. 239 174
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCCoreClient.h
  97. 4 4
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCDownloadItem.h
  98. 8 4
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCFileMessage.h
  99. 6 1
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCFileUtility.h
  100. 9 2
      KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCFwLog.h

+ 2 - 12
KulexiuForTeacher/KulexiuForTeacher.xcodeproj/project.pbxproj

@@ -996,8 +996,6 @@
 		BCEA752D2819134400886A86 /* CardBindResultBodyView.xib in Resources */ = {isa = PBXBuildFile; fileRef = BCEA752C2819134400886A86 /* CardBindResultBodyView.xib */; };
 		BCEA75302819336200886A86 /* WithdrawBodyView.m in Sources */ = {isa = PBXBuildFile; fileRef = BCEA752F2819336200886A86 /* WithdrawBodyView.m */; };
 		BCEA75322819336A00886A86 /* WithdrawBodyView.xib in Resources */ = {isa = PBXBuildFile; fileRef = BCEA75312819336A00886A86 /* WithdrawBodyView.xib */; };
-		BCEBB8F62840D68400A76BE8 /* KSChatGroupListCell.m in Sources */ = {isa = PBXBuildFile; fileRef = BCEBB8F42840D68400A76BE8 /* KSChatGroupListCell.m */; };
-		BCEBB8F72840D68400A76BE8 /* KSChatGroupListCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = BCEBB8F52840D68400A76BE8 /* KSChatGroupListCell.xib */; };
 		BCED5CAA284F5D8D009A42DE /* FriendListModel.m in Sources */ = {isa = PBXBuildFile; fileRef = BCED5CA9284F5D8D009A42DE /* FriendListModel.m */; };
 		BCED5CAE28507E5F009A42DE /* KSChatLiveMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = BCED5CAD28507E5F009A42DE /* KSChatLiveMessage.m */; };
 		BCED5CB128507E85009A42DE /* KSChatMusicMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = BCED5CB028507E85009A42DE /* KSChatMusicMessage.m */; };
@@ -2726,9 +2724,6 @@
 		BCEA752E2819336200886A86 /* WithdrawBodyView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WithdrawBodyView.h; sourceTree = "<group>"; };
 		BCEA752F2819336200886A86 /* WithdrawBodyView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = WithdrawBodyView.m; sourceTree = "<group>"; };
 		BCEA75312819336A00886A86 /* WithdrawBodyView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = WithdrawBodyView.xib; sourceTree = "<group>"; };
-		BCEBB8F32840D68400A76BE8 /* KSChatGroupListCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = KSChatGroupListCell.h; sourceTree = "<group>"; };
-		BCEBB8F42840D68400A76BE8 /* KSChatGroupListCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = KSChatGroupListCell.m; sourceTree = "<group>"; };
-		BCEBB8F52840D68400A76BE8 /* KSChatGroupListCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = KSChatGroupListCell.xib; sourceTree = "<group>"; };
 		BCED5CA8284F5D8D009A42DE /* FriendListModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FriendListModel.h; sourceTree = "<group>"; };
 		BCED5CA9284F5D8D009A42DE /* FriendListModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FriendListModel.m; sourceTree = "<group>"; };
 		BCED5CAC28507E5F009A42DE /* KSChatLiveMessage.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = KSChatLiveMessage.h; sourceTree = "<group>"; };
@@ -4255,9 +4250,6 @@
 				27F9CAFD27EC3D41003E0FE4 /* GroupListViewCell.h */,
 				27F9CAFE27EC3D41003E0FE4 /* GroupListViewCell.m */,
 				27F9CAFF27EC3D42003E0FE4 /* GroupListViewCell.xib */,
-				BCEBB8F32840D68400A76BE8 /* KSChatGroupListCell.h */,
-				BCEBB8F42840D68400A76BE8 /* KSChatGroupListCell.m */,
-				BCEBB8F52840D68400A76BE8 /* KSChatGroupListCell.xib */,
 				BCED5CB928508823009A42DE /* KSChatLiveShareCell.h */,
 				BCED5CBA28508823009A42DE /* KSChatLiveShareCell.m */,
 				BCED5CBF28508F21009A42DE /* ShareLiveCellContentView.h */,
@@ -4886,11 +4878,11 @@
 		BC0A229A284751F80065C1AB /* FullVideo */ = {
 			isa = PBXGroup;
 			children = (
-				BC0A229B284751F80065C1AB /* FullVideoView.m */,
+				BC0A229F284751F80065C1AB /* FullVideoCell.h */,
 				BC0A229C284751F80065C1AB /* FullVideoCell.m */,
 				BC0A229D284751F80065C1AB /* FullVideoCell.xib */,
 				BC0A229E284751F80065C1AB /* FullVideoView.h */,
-				BC0A229F284751F80065C1AB /* FullVideoCell.h */,
+				BC0A229B284751F80065C1AB /* FullVideoView.m */,
 			);
 			path = FullVideo;
 			sourceTree = "<group>";
@@ -6950,7 +6942,6 @@
 				BC7CFFAE2817E6C900CAEB21 /* IncomeCountBottomView.xib in Resources */,
 				27A2F62A27E6C996009E2380 /* KSImageAlert.xib in Resources */,
 				BCE6A0AA27F852CD00C97704 /* MineFansGroupCell.xib in Resources */,
-				BCEBB8F72840D68400A76BE8 /* KSChatGroupListCell.xib in Resources */,
 				BCB399B327F94B5A00AFF376 /* LTSCalendarBottomView.xib in Resources */,
 				BCC5840728A9FA8100BAB4CF /* cloud_animation_12.png in Resources */,
 				2708565327ED8B8C00EC8E72 /* GroupApplyChooseAllCell.xib in Resources */,
@@ -7251,7 +7242,6 @@
 				BC0A22A6284751F80065C1AB /* DownloadStatusCell.m in Sources */,
 				2779326F27E30FD80010E277 /* FSCalendarHeaderView.m in Sources */,
 				275E3DF727F467ED0010EC30 /* LiveRoomLikeLayer.m in Sources */,
-				BCEBB8F62840D68400A76BE8 /* KSChatGroupListCell.m in Sources */,
 				BC0238062865C4F6005560CA /* KSLiveChatroomMemberUp.m in Sources */,
 				277931E827E30FC20010E277 /* KSUtilities.m in Sources */,
 				2779326327E30FD80010E277 /* FSCalendarCollectionView.m in Sources */,

BIN=BIN
KulexiuForTeacher/KulexiuForTeacher.xcworkspace/xcuserdata/wangzhi.xcuserdatad/UserInterfaceState.xcuserstate


+ 20 - 4
KulexiuForTeacher/KulexiuForTeacher.xcworkspace/xcuserdata/wangzhi.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist

@@ -112,8 +112,8 @@
             endingColumnNumber = "9223372036854775807"
             startingLineNumber = "1361"
             endingLineNumber = "1361"
-            landmarkName = "KSNetworkingManager"
-            landmarkType = "3">
+            landmarkName = "+liveRoomSetMicApplyEnable:roomUid:whetherMic:success:faliure:"
+            landmarkType = "7">
          </BreakpointContent>
       </BreakpointProxy>
       <BreakpointProxy
@@ -142,8 +142,8 @@
             filePath = "KulexiuForTeacher/Module/Live/View/SeatContentView.m"
             startingColumnNumber = "9223372036854775807"
             endingColumnNumber = "9223372036854775807"
-            startingLineNumber = "108"
-            endingLineNumber = "108"
+            startingLineNumber = "122"
+            endingLineNumber = "122"
             landmarkName = "-queryUserInfoWithUserId:"
             landmarkType = "7">
          </BreakpointContent>
@@ -180,5 +180,21 @@
             landmarkType = "7">
          </BreakpointContent>
       </BreakpointProxy>
+      <BreakpointProxy
+         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
+         <BreakpointContent
+            uuid = "14DD535F-C194-4907-BF6B-0DB631D7DAF7"
+            shouldBeEnabled = "Yes"
+            ignoreCount = "0"
+            continueAfterRunningActions = "No"
+            filePath = "KulexiuForTeacher/Module/Live/Controller/LiveRoomViewController.m"
+            startingColumnNumber = "9223372036854775807"
+            endingColumnNumber = "9223372036854775807"
+            startingLineNumber = "881"
+            endingLineNumber = "881"
+            landmarkName = "-subscribeRemoteResource:isTiny:"
+            landmarkType = "7">
+         </BreakpointContent>
+      </BreakpointProxy>
    </Breakpoints>
 </Bucket>

+ 2 - 2
KulexiuForTeacher/KulexiuForTeacher/Common/Base/KSBaseWKWebViewController.m

@@ -132,12 +132,12 @@ typedef NS_ENUM(NSInteger, CHOOSETYPE) {
         // 切换到横屏
         AppDelegate* delegate = (AppDelegate*)[UIApplication sharedApplication].delegate;
         delegate.allowAutoRotate = YES;
-        [UIDevice switchNewOrientation:UIInterfaceOrientationLandscapeRight];
+        [UIDevice switchNewOrientation:UIInterfaceOrientationLandscapeRight inController:self];
     }
     else {
         AppDelegate* delegate = (AppDelegate*)[UIApplication sharedApplication].delegate;
         delegate.allowAutoRotate = NO;
-        [UIDevice switchNewOrientation:UIInterfaceOrientationPortrait];
+        [UIDevice switchNewOrientation:UIInterfaceOrientationPortrait inController:self];
     }
 }
 

+ 5 - 4
KulexiuForTeacher/KulexiuForTeacher/Common/Tools/Category/UIDevice+TFDevice.h

@@ -11,10 +11,11 @@ NS_ASSUME_NONNULL_BEGIN
 
 @interface UIDevice (TFDevice)
 
-/**
- * @interfaceOrientation 输入要强制转屏的方向
- */
-+ (void)switchNewOrientation:(UIInterfaceOrientation)interfaceOrientation;
+/// 旋转屏幕
+/// - Parameters:
+///   - interfaceOrientation: 输入要强制转屏的方向
+///   - controller: 当前旋转的控制器
++ (void)switchNewOrientation:(UIInterfaceOrientation)interfaceOrientation inController:(UIViewController *)controller;
 
 @end
 

+ 34 - 5
KulexiuForTeacher/KulexiuForTeacher/Common/Tools/Category/UIDevice+TFDevice.m

@@ -10,12 +10,41 @@
 
 @implementation UIDevice (TFDevice)
 
-+ (void)switchNewOrientation:(UIInterfaceOrientation)interfaceOrientation {
+/// 旋转屏幕
+/// - Parameters:
+///   - interfaceOrientation: 输入要强制转屏的方向
+///   - controller: 当前旋转的控制器
++ (void)switchNewOrientation:(UIInterfaceOrientation)interfaceOrientation inController:(UIViewController *)controller {
     
-    NSNumber *resetOrientationTarget = [NSNumber numberWithInt:UIInterfaceOrientationUnknown];
-    [[UIDevice currentDevice] setValue:resetOrientationTarget forKey:@"orientation"];
-    NSNumber *orientationTarget = [NSNumber numberWithInteger:interfaceOrientation];
-    [[UIDevice currentDevice] setValue:orientationTarget forKey:@"orientation"];
+    if (@available(iOS 16.0, *)) {
+        if ([controller respondsToSelector: @selector(setNeedsUpdateOfSupportedInterfaceOrientations)]) {
+            [controller performSelector: @selector(setNeedsUpdateOfSupportedInterfaceOrientations)];
+        }
+        UIInterfaceOrientationMask interfaceOrientations;
+        if (interfaceOrientation == UIInterfaceOrientationPortrait) {
+            interfaceOrientations = UIInterfaceOrientationMaskPortrait;
+        }
+        else {
+            interfaceOrientations = UIInterfaceOrientationMaskLandscapeRight;
+        }
+        NSArray *array = [[[UIApplication sharedApplication] connectedScenes] allObjects];
+        UIWindowScene *scene = (UIWindowScene *)array[0];
+        UIWindowSceneGeometryPreferencesIOS *geometryPreferences = [[UIWindowSceneGeometryPreferencesIOS alloc] initWithInterfaceOrientations:interfaceOrientations];
+        [scene requestGeometryUpdateWithPreferences:geometryPreferences
+                                       errorHandler:^(NSError * _Nonnull error) {
+            
+            NSLog(@"wuwuFQ:%@", error);
+        }];
+    } else {
+        // Fallback on earlier versions
+        NSNumber *resetOrientationTarget = [NSNumber numberWithInt:UIInterfaceOrientationUnknown];
+        [[UIDevice currentDevice] setValue:resetOrientationTarget forKey:@"orientation"];
+        
+        NSNumber *orientationTarget = [NSNumber numberWithInteger:interfaceOrientation];
+        [[UIDevice currentDevice] setValue:orientationTarget forKey:@"orientation"];
+        
+        
+    }
 }
 
 @end

+ 1 - 10
KulexiuForTeacher/KulexiuForTeacher/Module/Chat/Controller/KSChatListViewController.m

@@ -11,7 +11,6 @@
 #import "KSSearchHistoryMessageController.h"
 #import "KSChatConversationViewController.h"
 #import "KSTabBarViewController.h"
-#import "KSChatGroupListCell.h"
 
 @interface KSChatListViewController ()
 
@@ -83,8 +82,6 @@
     self.conversationListTableView.tableFooterView = [UIView new];
     self.isShowNetworkIndicatorView = YES;
     self.emptyConversationView = self.stateView;
-    
-    [self.conversationListTableView registerNib:[UINib nibWithNibName:@"KSChatGroupListCell" bundle:[NSBundle mainBundle]] forCellReuseIdentifier:@"KSChatGroupListCell"];
 }
 
 - (void)allocTitle:(NSString *)titleStr {
@@ -182,13 +179,7 @@
 }
 
 
-- (RCConversationBaseCell *)rcConversationListTableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
-    RCConversationModel *model = self.conversationListDataSource[indexPath.row];
-    KSChatGroupListCell *cell = [tableView dequeueReusableCellWithIdentifier:@"KSChatGroupListCell"];
-    [cell setDataModel:model];
-    [self willDisplayConversationTableCell:cell atIndexPath:indexPath];
-    return cell;
-}
+
 
 - (CGFloat)rcConversationListTableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
     return 80.0f;

+ 0 - 17
KulexiuForTeacher/KulexiuForTeacher/Module/Chat/View/KSChatGroupListCell.h

@@ -1,17 +0,0 @@
-//
-//  KSChatGroupListCell.h
-//  KulexiuForTeacher
-//
-//  Created by 王智 on 2022/5/27.
-//
-
-#import <RongIMKit/RongIMKit.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface KSChatGroupListCell : RCConversationBaseCell
-
-
-@end
-
-NS_ASSUME_NONNULL_END

+ 0 - 92
KulexiuForTeacher/KulexiuForTeacher/Module/Chat/View/KSChatGroupListCell.m

@@ -1,92 +0,0 @@
-//
-//  KSChatGroupListCell.m
-//  KulexiuForTeacher
-//
-//  Created by 王智 on 2022/5/27.
-//
-
-#import "KSChatGroupListCell.h"
-
-
-
-@interface KSChatGroupListCell ()
-
-@property (weak, nonatomic) IBOutlet UIImageView *groupLogo;
-
-@property (weak, nonatomic) IBOutlet UIImageView *typeLogo;
-
-@property (weak, nonatomic) IBOutlet UILabel *groupTitle;
-
-@property (weak, nonatomic) IBOutlet UILabel *timeLabel;
-
-@property (weak, nonatomic) IBOutlet UILabel *descLabel;
-
-@end
-
-@implementation KSChatGroupListCell
-
-- (void)awakeFromNib {
-    [super awakeFromNib];
-    // Initialization code
-    self.selectionStyle = UITableViewCellSelectionStyleNone;
-}
-
-
-- (void)setDataModel:(RCConversationModel *)model {
-    NSString *defaultLogo = @"";
-    NSString *typeLogo = @"";
-    if ([model.targetId containsString:@"COURSE"]) {
-        defaultLogo = GROUP_COURSE_LOGO;
-        typeLogo = @"group_course";
-    }
-    else {
-        defaultLogo = GROUP_FAN_LOGO;
-        typeLogo = @"group_fans";
-    }
-//    RCGroup
-    self.groupTitle.text = [NSString returnNoNullStringWithString:model.conversationTitle];
-    [self.groupLogo setImage:[UIImage imageNamed:defaultLogo]];
-    [self.typeLogo setImage:[UIImage imageNamed:typeLogo]];
-    
-    // 时间和描述
-    self.timeLabel.text = [RCKitUtility convertConversationTime:model.sentTime / 1000];
-//    RCUserInfo *memberInfo = [[RCUserInfoCacheManager sharedManager] getUserInfo:model.senderUserId inGroupId:model.targetId];
-//    RCUserInfo *userInfo = [[RCUserInfoCache sharedCache] getUserInfo:model.senderUserId];
-//    NSString *messageContent = [NSString stringWithFormat:@"%@: %@", @"", [self formatMessageContent:model]];
-    NSString *messageContent = [NSString stringWithFormat:@"%@", [self formatMessageContent:model]];
-    self.descLabel.text = messageContent;
-}
-
-//- (RCUserInfo *)queryUserInfo:(NSString *)userId inGroupId:(NSString *)groupId {
-//    if (userId && groupId) {
-//        RCUserInfo *cacheUserInfo = [rcconversa]
-//    }
-//    return
-//}
-
-- (NSString *)formatMessageContent:(RCConversationModel *)model {
-    NSString *objectName = model.objectName;
-    if (model.conversationType == ConversationType_Encrypted &&
-        ([objectName isEqualToString:RCTextMessageTypeIdentifier] ||
-         [objectName isEqualToString:RCVoiceMessageTypeIdentifier] ||
-         [objectName isEqualToString:RCImageMessageTypeIdentifier] || [objectName isEqualToString:@"RC:SightMsg"] ||
-         [objectName isEqualToString:RCLocationMessageTypeIdentifier] || [objectName isEqualToString:@"RC:CardMsg"])) {
-        return RCLocalizedString(@"Message");
-    }
-    if ([RCKitUtility isUnkownMessage:model.lastestMessageId content:model.lastestMessage] &&
-        RCKitConfigCenter.message.showUnkownMessage) {
-        return RCLocalizedString(@"unknown_message_cell_tip");
-    } else {
-        return [RCKitUtility formatMessage:model.lastestMessage
-                                  targetId:model.targetId
-                          conversationType:model.conversationType];
-    }
-}
-
-- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
-    [super setSelected:selected animated:animated];
-
-    // Configure the view for the selected state
-}
-
-@end

+ 0 - 91
KulexiuForTeacher/KulexiuForTeacher/Module/Chat/View/KSChatGroupListCell.xib

@@ -1,91 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="20037" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
-    <device id="retina6_1" orientation="portrait" appearance="light"/>
-    <dependencies>
-        <deployment identifier="iOS"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="20020"/>
-        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
-        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
-    </dependencies>
-    <objects>
-        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
-        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
-        <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" id="KGk-i7-Jjw" customClass="KSChatGroupListCell">
-            <rect key="frame" x="0.0" y="0.0" width="320" height="80"/>
-            <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
-            <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="KGk-i7-Jjw" id="H2p-sc-9uM">
-                <rect key="frame" x="0.0" y="0.0" width="320" height="80"/>
-                <autoresizingMask key="autoresizingMask"/>
-                <subviews>
-                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="chat_fansGroup_logo" translatesAutoresizingMaskIntoConstraints="NO" id="SET-l4-XHK">
-                        <rect key="frame" x="14" y="16" width="48" height="48"/>
-                        <constraints>
-                            <constraint firstAttribute="height" constant="48" id="jNW-wV-92J"/>
-                            <constraint firstAttribute="width" constant="48" id="wgr-Qy-kXr"/>
-                        </constraints>
-                    </imageView>
-                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="长笛直播课" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="AAp-b4-W9H">
-                        <rect key="frame" x="73" y="16" width="82" height="22"/>
-                        <constraints>
-                            <constraint firstAttribute="height" constant="22" id="Oid-Qe-V6o"/>
-                        </constraints>
-                        <fontDescription key="fontDescription" type="system" pointSize="16"/>
-                        <color key="textColor" red="0.10196078431372549" green="0.10196078431372549" blue="0.10196078431372549" alpha="1" colorSpace="calibratedRGB"/>
-                        <nil key="highlightedColor"/>
-                    </label>
-                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="groupType_fans" translatesAutoresizingMaskIntoConstraints="NO" id="p6t-t4-XCz">
-                        <rect key="frame" x="157" y="18.5" width="45" height="17"/>
-                        <constraints>
-                            <constraint firstAttribute="height" constant="17" id="PqG-AF-eiS"/>
-                            <constraint firstAttribute="width" constant="45" id="p2z-Hz-4kR"/>
-                        </constraints>
-                    </imageView>
-                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="下午 1:34" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="2fi-Y5-v8D">
-                        <rect key="frame" x="255.5" y="16" width="52.5" height="22"/>
-                        <constraints>
-                            <constraint firstAttribute="height" constant="22" id="UVv-uY-oq9"/>
-                        </constraints>
-                        <fontDescription key="fontDescription" type="system" pointSize="12"/>
-                        <color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="calibratedRGB"/>
-                        <nil key="highlightedColor"/>
-                    </label>
-                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="张豆豆:今天的直播课几点开始?" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="OB2-CR-phP">
-                        <rect key="frame" x="73" y="40" width="235" height="20"/>
-                        <constraints>
-                            <constraint firstAttribute="height" constant="20" id="T7a-AC-1cp"/>
-                        </constraints>
-                        <fontDescription key="fontDescription" type="system" pointSize="12"/>
-                        <color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="calibratedRGB"/>
-                        <nil key="highlightedColor"/>
-                    </label>
-                </subviews>
-                <constraints>
-                    <constraint firstItem="p6t-t4-XCz" firstAttribute="centerY" secondItem="AAp-b4-W9H" secondAttribute="centerY" id="5dT-6x-EjW"/>
-                    <constraint firstItem="p6t-t4-XCz" firstAttribute="leading" secondItem="AAp-b4-W9H" secondAttribute="trailing" constant="2" id="6Mq-TO-q1s"/>
-                    <constraint firstItem="SET-l4-XHK" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="14" id="98x-qg-KJx"/>
-                    <constraint firstItem="SET-l4-XHK" firstAttribute="centerY" secondItem="H2p-sc-9uM" secondAttribute="centerY" id="BvC-wI-TQv"/>
-                    <constraint firstAttribute="trailing" secondItem="OB2-CR-phP" secondAttribute="trailing" constant="12" id="KuK-oH-AWC"/>
-                    <constraint firstAttribute="trailing" secondItem="2fi-Y5-v8D" secondAttribute="trailing" constant="12" id="Z9i-8n-zO2"/>
-                    <constraint firstItem="OB2-CR-phP" firstAttribute="leading" secondItem="AAp-b4-W9H" secondAttribute="leading" id="ekd-XL-ie0"/>
-                    <constraint firstItem="OB2-CR-phP" firstAttribute="top" secondItem="AAp-b4-W9H" secondAttribute="bottom" constant="2" id="f0z-Qn-ONe"/>
-                    <constraint firstItem="2fi-Y5-v8D" firstAttribute="centerY" secondItem="p6t-t4-XCz" secondAttribute="centerY" id="h5l-2R-uMr"/>
-                    <constraint firstItem="AAp-b4-W9H" firstAttribute="top" secondItem="SET-l4-XHK" secondAttribute="top" id="nfb-EB-1QK"/>
-                    <constraint firstItem="AAp-b4-W9H" firstAttribute="leading" secondItem="SET-l4-XHK" secondAttribute="trailing" constant="11" id="uff-jh-slU"/>
-                </constraints>
-            </tableViewCellContentView>
-            <viewLayoutGuide key="safeArea" id="aW0-zy-SZf"/>
-            <connections>
-                <outlet property="descLabel" destination="OB2-CR-phP" id="1PU-hH-3qR"/>
-                <outlet property="groupLogo" destination="SET-l4-XHK" id="HOZ-A8-16B"/>
-                <outlet property="groupTitle" destination="AAp-b4-W9H" id="KeI-fE-cgz"/>
-                <outlet property="timeLabel" destination="2fi-Y5-v8D" id="0DK-pw-6ZJ"/>
-                <outlet property="typeLogo" destination="p6t-t4-XCz" id="N23-rn-kqY"/>
-            </connections>
-            <point key="canvasLocation" x="131.8840579710145" y="56.919642857142854"/>
-        </tableViewCell>
-    </objects>
-    <resources>
-        <image name="chat_fansGroup_logo" width="44" height="44"/>
-        <image name="groupType_fans" width="45" height="17"/>
-    </resources>
-</document>

+ 3 - 3
KulexiuForTeacher/KulexiuForTeacher/Module/Classroom/ClassroomSong/MusicScoreViewController.m

@@ -28,7 +28,7 @@
     // 竖屏
     AppDelegate* delegate = (AppDelegate*)[UIApplication sharedApplication].delegate;
     delegate.allowAutoRotate = NO;
-    [UIDevice switchNewOrientation:UIInterfaceOrientationPortrait];
+    [UIDevice switchNewOrientation:UIInterfaceOrientationPortrait inController:self];
     [[UIApplication sharedApplication] setIdleTimerDisabled:NO];
 }
 
@@ -37,7 +37,7 @@
     // 切换到横屏
     AppDelegate* delegate = (AppDelegate*)[UIApplication sharedApplication].delegate;
     delegate.allowAutoRotate = YES;
-    [UIDevice switchNewOrientation:UIInterfaceOrientationLandscapeRight];
+    [UIDevice switchNewOrientation:UIInterfaceOrientationLandscapeRight inController:self];
     [[UIApplication sharedApplication] setIdleTimerDisabled:YES];
 }
 
@@ -47,7 +47,7 @@
     
     AppDelegate* delegate = (AppDelegate*)[UIApplication sharedApplication].delegate;
     delegate.allowAutoRotate = NO;
-    [UIDevice switchNewOrientation:UIInterfaceOrientationPortrait];
+    [UIDevice switchNewOrientation:UIInterfaceOrientationPortrait inController:self];
     [[UIApplication sharedApplication] setIdleTimerDisabled:NO];
     // Do any additional setup after loading the view.
     [self configUI];

+ 1 - 1
KulexiuForTeacher/KulexiuForTeacher/Module/Classroom/ClassroomSong/SongListViewController.m

@@ -26,7 +26,7 @@
     
     AppDelegate* delegate = (AppDelegate*)[UIApplication sharedApplication].delegate;
     delegate.allowAutoRotate = YES;
-    [UIDevice switchNewOrientation:UIInterfaceOrientationLandscapeRight];
+    [UIDevice switchNewOrientation:UIInterfaceOrientationLandscapeRight inController:self];
     
     [self allocTitle:@"教学伴奏"];
     [self configUI];

+ 10 - 10
KulexiuForTeacher/KulexiuForTeacher/Module/Classroom/Controller/NewClassRoomViewController.m

@@ -142,7 +142,7 @@
     // 切换到横屏
     AppDelegate* delegate = (AppDelegate*)[UIApplication sharedApplication].delegate;
     delegate.allowAutoRotate = YES;
-    [UIDevice switchNewOrientation:UIInterfaceOrientationLandscapeRight];
+    [UIDevice switchNewOrientation:UIInterfaceOrientationLandscapeRight inController:self];
     [[UIApplication sharedApplication] setIdleTimerDisabled:YES];
     [RCRTCEngine sharedInstance].statusReportDelegate = self;
     _isPushChooseView = NO;
@@ -156,7 +156,7 @@
     // 竖屏
     AppDelegate* delegate = (AppDelegate*)[UIApplication sharedApplication].delegate;
     delegate.allowAutoRotate = NO;
-    [UIDevice switchNewOrientation:UIInterfaceOrientationPortrait];
+    [UIDevice switchNewOrientation:UIInterfaceOrientationPortrait inController:self];
     [[UIApplication sharedApplication] setIdleTimerDisabled:NO];
     self.zh_statusBarHidden = NO;
     if (_isPushChooseView == NO) {
@@ -217,7 +217,7 @@
     // 切换到横屏
     AppDelegate* delegate = (AppDelegate*)[UIApplication sharedApplication].delegate;
     delegate.allowAutoRotate = YES;
-    [UIDevice switchNewOrientation:UIInterfaceOrientationLandscapeRight];
+    [UIDevice switchNewOrientation:UIInterfaceOrientationLandscapeRight inController:self];
     [self configBeatConfig]; // 设置默认节拍器数据
     [self configDefaultSoundVolume]; // 设置默认伴奏音量
     [self addSubviews];
@@ -1125,7 +1125,7 @@
     if(!_videoListView) {
         CGFloat width = 0.0f;
         CGFloat height = 0.0f;
-        height = kScreenHeight - 10;
+        height = KLandscapeHeight - 10;
         width = height / 3.0f * 4;
         if (width > KLandscapeWidth - 160) {
             width = KLandscapeWidth - 160;
@@ -1138,7 +1138,7 @@
 
 - (ClassMemberListView *)memberListView {
     if (!_memberListView) {
-        _memberListView = [[ClassMemberListView alloc] initWithFrame:CGRectMake(KLandscapeWidth - iPhoneXSafeBottomMargin - PersonListViewWidth, 0, PersonListViewWidth, kScreenHeight)];
+        _memberListView = [[ClassMemberListView alloc] initWithFrame:CGRectMake(KLandscapeWidth - iPhoneXSafeBottomMargin - PersonListViewWidth, 0, PersonListViewWidth, KLandscapeHeight)];
         _memberListView.delegate = self;
     }
     return _memberListView;
@@ -1154,7 +1154,7 @@
 
 - (ChatAreaView *)chatAreaView {
     if(!_chatAreaView) {
-        _chatAreaView = [[ChatAreaView alloc] initWithFrame:CGRectMake(KLandscapeWidth - iPhoneXSafeBottomMargin - 300,0, 300, UIScreenHeight) conversationType:ConversationType_GROUP targetId:[ClassroomService sharedService].currentRoom.roomId];
+        _chatAreaView = [[ChatAreaView alloc] initWithFrame:CGRectMake(KLandscapeWidth - iPhoneXSafeBottomMargin - 300,0, 300, KLandscapeHeight) conversationType:ConversationType_GROUP targetId:[ClassroomService sharedService].currentRoom.roomId];
     }
     return _chatAreaView;
 }
@@ -1174,7 +1174,7 @@
 
 - (WhiteboardListView *)whiteboardListView {
     if (!_whiteboardListView) {
-        _whiteboardListView = [[WhiteboardListView alloc] initWithFrame:CGRectMake(-140+iPhoneXSafeTopMargin, 0, WhiteboardListWidth, UIScreenHeight)];
+        _whiteboardListView = [[WhiteboardListView alloc] initWithFrame:CGRectMake(-140+iPhoneXSafeTopMargin, 0, WhiteboardListWidth, KLandscapeHeight)];
         _whiteboardListView.delegate = self;
         _whiteboardListView.whiteboardCtrl = self.wBoardCtrl;
     }
@@ -1184,7 +1184,7 @@
 
 - (FullVideoView *)squareView {
     if (!_squareView) {
-        _squareView = [[FullVideoView alloc] initWithFrame:CGRectMake(0, 0, KLandscapeWidth, kScreenHeight)];
+        _squareView = [[FullVideoView alloc] initWithFrame:CGRectMake(0, 0, KLandscapeWidth, KLandscapeHeight)];
         _squareView.delegate = self;
     }
     return _squareView;
@@ -1225,8 +1225,8 @@
 
 - (VideoMaskView *)maskView {
     if (!_maskView) {
-        CGFloat width = (UIScreenWidth - iPhoneXSafeTopMargin - iPhoneXSafeBottomMargin);
-        CGRect frame = CGRectMake(iPhoneXSafeTopMargin, 0, width, kScreenHeight);
+        CGFloat width = (KLandscapeWidth - iPhoneXSafeTopMargin - iPhoneXSafeBottomMargin);
+        CGRect frame = CGRectMake(iPhoneXSafeTopMargin, 0, width, KLandscapeHeight);
         _maskView = [[VideoMaskView alloc] initWithFrame:frame];
         [_maskView addDismisTarget:self action:@selector(dismissMaskViewEvent)];
     }

+ 1 - 1
KulexiuForTeacher/KulexiuForTeacher/Module/Classroom/View/MemberList/ClassMemberListView.m

@@ -59,7 +59,7 @@
     self.categoryView.indicators = @[lineView];
     
     _pagerView = [self preferredPagingView];
-    self.pagerView.frame = CGRectMake(0, 0, VIEW_WIDTH, kScreenHeight);
+    self.pagerView.frame = CGRectMake(0, 0, VIEW_WIDTH, KLandscapeHeight);
     self.pagerView.backgroundColor = [UIColor clearColor];
     self.pagerView.mainTableView.backgroundColor = [UIColor clearColor];
     self.pagerView.listContainerView.backgroundColor = [UIColor clearColor];

+ 1 - 1
KulexiuForTeacher/KulexiuForTeacher/Module/Classroom/View/MetronomeView/MetronomeAlertView.m

@@ -38,7 +38,7 @@
 }
 
 - (void)createUI {
-    self.frame = CGRectMake(0, 0, kScreenWidth, kScreenHeight);
+    self.frame = CGRectMake(0, 0, KLandscapeWidth, KLandscapeHeight);
     self.backgroundColor = [UIColor clearColor];
     [self addSubview:self.controlView];
 }

+ 2 - 2
KulexiuForTeacher/KulexiuForTeacher/Module/Classroom/View/MetronomeView/MetronomeControlView.m

@@ -42,7 +42,7 @@
     self = [super init];
     
     if (self) {
-        self.frame = CGRectMake((kScreenWidth - kScreenHeight) / 2.0f, 0, kScreenHeight, kScreenHeight);
+        self.frame = CGRectMake((KLandscapeWidth - KLandscapeHeight) / 2.0f, 0, KLandscapeHeight, KLandscapeHeight);
         [self creatUI];
     }
     return self;
@@ -50,7 +50,7 @@
 
 - (void)creatUI {
     self.backgroundColor = [UIColor clearColor];
-    _centerPoint = CGPointMake(kScreenHeight /2, kScreenHeight /2);//中心点
+    _centerPoint = CGPointMake(KLandscapeHeight /2, KLandscapeHeight /2);//中心点
 
     self.bgView = [[UIView alloc] init];
     [self addSubview:self.bgView];

+ 1 - 1
KulexiuForTeacher/KulexiuForTeacher/Module/Live/Controller/LiveRoomViewController.m

@@ -925,8 +925,8 @@ typedef NS_ENUM(NSInteger, LIVEPAGE) {
             [self removeMember:user.userId];
             [self refreshSeatApplyView];
         }
+        [self renderSeatView];
     }
-    [self renderSeatView];
     
     NSLog(@"didSwitchRoleWithUser --------");
 }

+ 25 - 11
KulexiuForTeacher/KulexiuForTeacher/Module/Live/View/SeatContentView.m

@@ -11,6 +11,8 @@
 
 @interface SeatMemberView : UIView
 
+@property (nonatomic, strong) UIImageView *userAvatar;
+
 @property (nonatomic, strong) NSString *userId;
 
 @property (nonatomic, strong) NSString *userName;
@@ -36,12 +38,12 @@
     self.backgroundColor = [UIColor clearColor];
     
     if ([self.userId isEqualToString:UserDefault(UIDKey)]) { // 自己
-        UIImageView *bgImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"seat_mine"]];
-        [self addSubview:bgImage];
-        [bgImage mas_makeConstraints:^(MASConstraintMaker *make) {
+        [self.userAvatar sd_setImageWithURL:[NSURL URLWithString:[UserDefault(AvatarUrlKey) getUrlEndcodeString]] placeholderImage:[UIImage imageNamed:USERDEFAULT_LOGO]];
+        [self addSubview:self.userAvatar];
+        [self.userAvatar mas_makeConstraints:^(MASConstraintMaker *make) {
             make.centerX.mas_equalTo(self.mas_centerX);
             make.top.mas_equalTo(self.mas_top);
-            make.width.height.mas_equalTo(54);
+            make.width.height.mas_equalTo(46);
         }];
         UIView *bgView = [[UIView alloc] initWithFrame:CGRectZero];
         bgView.layer.cornerRadius = 7.0f;
@@ -52,15 +54,15 @@
             make.centerX.mas_equalTo(self.mas_centerX);
             make.left.mas_greaterThanOrEqualTo(self.mas_left).offset(5);
             make.height.mas_equalTo(15);
-            make.top.mas_equalTo(bgImage.mas_bottom).offset(-2);
+            make.top.mas_equalTo(self.userAvatar.mas_bottom).offset(2);
         }];
         
         [bgView addSubview:self.nameLabel];
         [self.nameLabel mas_makeConstraints:^(MASConstraintMaker *make) {
             make.centerX.mas_equalTo(bgView.mas_centerX);
             make.centerY.mas_equalTo(bgView.mas_centerY);
-            make.left.mas_equalTo(bgView.mas_left).offset(6);
-            make.right.mas_equalTo(bgView.mas_right).offset(-6);
+            make.left.mas_equalTo(bgView.mas_left).offset(3);
+            make.right.mas_equalTo(bgView.mas_right).offset(-3);
         }];
         
         
@@ -69,9 +71,10 @@
         
     }
     else { // 其他人
-        UIImageView *bgImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"seat_other"]];
-        [self addSubview:bgImage];
-        [bgImage mas_makeConstraints:^(MASConstraintMaker *make) {
+        [self.userAvatar setImage:[UIImage imageNamed:USERDEFAULT_LOGO]];
+
+        [self addSubview:self.userAvatar];
+        [self.userAvatar mas_makeConstraints:^(MASConstraintMaker *make) {
             make.centerX.mas_equalTo(self.mas_centerX);
             make.top.mas_equalTo(self.mas_top).offset(4);
             make.width.height.mas_equalTo(46);
@@ -80,7 +83,7 @@
         [self addSubview:self.nameLabel];
         [self.nameLabel mas_makeConstraints:^(MASConstraintMaker *make) {
             make.left.right.mas_equalTo(self);
-            make.top.mas_equalTo(bgImage.mas_bottom).offset(2);
+            make.top.mas_equalTo(self.userAvatar.mas_bottom).offset(2);
             make.height.mas_equalTo(13);
         }];
         [self queryUserInfoWithUserId:self.userId];
@@ -97,12 +100,23 @@
     return _nameLabel;
 }
 
+- (UIImageView *)userAvatar {
+    if (!_userAvatar) {
+        _userAvatar = [[UIImageView alloc] init];
+        _userAvatar.contentMode = UIViewContentModeScaleAspectFill;
+        _userAvatar.layer.cornerRadius = 23.0f;
+        [_userAvatar.layer setMasksToBounds:YES];
+    }
+    return _userAvatar;
+}
+
 - (void)queryUserInfoWithUserId:(NSString *)userId {
     [KSNetworkingManager imUserFriendQueryDetail:KS_POST userId:userId success:^(NSDictionary * _Nonnull dic) {
         if ([dic integerValueForKey:@"code"] == 200 && [dic boolValueForKey:@"status"]) {
             NSDictionary *result = [dic dictionaryValueForKey:@"data"];
             if (self) {
                 self.nameLabel.text = [result stringValueForKey:@"friendNickname"];
+                [self.userAvatar sd_setImageWithURL:[NSURL URLWithString:[[result stringValueForKey:@"friendAvatar"] getUrlEndcodeString]] placeholderImage:[UIImage imageNamed:USERDEFAULT_LOGO]];
             }
             else {
                 NSLog(@"-delloc------");

+ 5 - 6
KulexiuForTeacher/KulexiuForTeacher/Module/SealClass/Sections/Classroom/View/MainContainer/MainContainerView.m

@@ -96,7 +96,6 @@
             [v removeFromSuperview];
         }
     }
-    
 }
 
 #pragma mark - private method
@@ -108,15 +107,15 @@
         [self.superview bringSubviewToFront:self.videoBackView];
         CGFloat width = 0.0f;
         CGFloat height = 0.0f;
-        height = kScreen_Width / 4.0f * 3;
-        if (height > kScreenHeight) {
-            height = kScreenHeight;
+        height = KLandscapeWidth / 4.0f * 3;
+        if (height > KLandscapeHeight) {
+            height = KLandscapeHeight;
             width = height / 3.0f * 4;
         }
         else {
-            width = kScreenHeight;
+            width = KLandscapeHeight;
         }
-        self.videoView.frame = CGRectMake((kScreenWidth - width) / 2.0f, 0, width, height);
+        self.videoView.frame = CGRectMake((KLandscapeWidth - width) / 2.0f, 0, width, height);
     }else {
         [self.videoBackView removeFromSuperview];
         [self addSubview:self.videoBackView];

+ 4 - 23
KulexiuForTeacher/KulexiuForTeacher/Module/SealClass/Sections/Classroom/View/MainContainer/VideoMaskView.m

@@ -54,45 +54,26 @@
         CGPoint center = self.center;
         CGFloat width = 0.0f;
         CGFloat height = 0.0f;
-        height = kScreen_Width / 4.0f * 3;
-        if (height > kScreenHeight) {
-            height = kScreenHeight;
+        height = KLandscapeWidth / 4.0f * 3;
+        if (height > KLandscapeHeight) {
+            height = KLandscapeHeight;
             width = height / 3.0f * 4;
         }
         else {
-            width = kScreenHeight;
+            width = KLandscapeHeight;
         }
         _maskVideoView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, width, height)];
         _maskVideoView.center = center;
         _maskVideoView.backgroundColor = [UIColor colorWithHexString:@"3D4041" alpha:1];
-        
-//        CGFloat topMargin = 10;
-//        CGFloat leftMargin = 10;
-//        CGRect frame = self.backView.bounds;
-//        frame.origin.x += leftMargin;
-//        frame.origin.y += topMargin;
-//        frame.size.width -= leftMargin * 2;
-//        frame.size.height -= topMargin * 2;
-//        _maskVideoView = [[UIView alloc] initWithFrame:frame];
-//        _maskVideoView.backgroundColor = [UIColor colorWithHexString:@"3D4041" alpha:1];
     }
     return _maskVideoView;
 }
 
 - (UIView *)backView {
     if(!_backView) {
-//        CGFloat topMargin = 13;
-//        CGFloat leftMargin = 10.5;
-//        CGRect frame = self.bounds;
-//        frame.origin.x += leftMargin;
-//        frame.origin.y += topMargin;
-//        frame.size.width -= leftMargin * 2;
-//        frame.size.height -= topMargin * 2;
-//        _backView = [[UIView alloc] initWithFrame:frame];
         _backView = [[UIView alloc] initWithFrame:self.bounds];
         _backView.backgroundColor = [UIColor whiteColor];
         _backView.layer.masksToBounds = YES;
-//        _backView.layer.cornerRadius = 10;
     }
     return _backView;
 }

+ 5 - 5
KulexiuForTeacher/Podfile

@@ -40,11 +40,11 @@
     
   pod 'SSZipArchive'
   pod 'SocketRocket'
-  pod 'RongCloudIM/IMLib',  '~> 5.2.3'
-  pod 'RongCloudIM/IMKit',  '~> 5.2.3'
-  pod 'RongCloudIM/Sight',  '~> 5.2.3'
-  pod 'RongCloudRTC/RongRTCLib','~> 5.2.3'
-  pod 'RongCloudRTC/RongFaceBeautifier','~> 5.2.3'
+  pod 'RongCloudIM/IMLib',  '~> 5.2.5'
+  pod 'RongCloudIM/IMKit',  '~> 5.2.5'
+  pod 'RongCloudIM/Sight',  '~> 5.2.5'
+  pod 'RongCloudRTC/RongRTCLib','~> 5.2.5'
+  pod 'RongCloudRTC/RongFaceBeautifier','~> 5.2.5'
   
   pod "iOS-KS3SDK", "~>1.0.5"
 #  pod "WechatOpenSDK"

+ 34 - 37
KulexiuForTeacher/Podfile.lock

@@ -28,34 +28,31 @@ PODS:
   - MBProgressHUD (1.2.0)
   - MJExtension (3.3.0)
   - MJRefresh (3.1.17)
-  - NTLBridge (3.1.2)
+  - NTLBridge (3.1.4)
   - Reachability (3.2)
-  - RongCloudIM/ChatRoom (5.2.3):
+  - RongCloudIM/ChatRoom (5.2.5):
     - RongCloudIM/IMLibCore
-  - RongCloudIM/CustomerService (5.2.3):
+  - RongCloudIM/CustomerService (5.2.5):
     - RongCloudIM/IMLibCore
-  - RongCloudIM/Discussion (5.2.3):
+  - RongCloudIM/Discussion (5.2.5):
     - RongCloudIM/IMLibCore
-  - RongCloudIM/IMKit (5.2.3):
+  - RongCloudIM/IMKit (5.2.5):
     - RongCloudIM/IMLib
-  - RongCloudIM/IMLib (5.2.3):
+  - RongCloudIM/IMLib (5.2.5):
     - RongCloudIM/ChatRoom
     - RongCloudIM/CustomerService
     - RongCloudIM/Discussion
     - RongCloudIM/IMLibCore
-    - RongCloudIM/Location
     - RongCloudIM/PublicService
-  - RongCloudIM/IMLibCore (5.2.3)
-  - RongCloudIM/Location (5.2.3):
+  - RongCloudIM/IMLibCore (5.2.5)
+  - RongCloudIM/PublicService (5.2.5):
     - RongCloudIM/IMLibCore
-  - RongCloudIM/PublicService (5.2.3):
-    - RongCloudIM/IMLibCore
-  - RongCloudIM/Sight (5.2.3):
+  - RongCloudIM/Sight (5.2.5):
     - RongCloudIM/IMKit
-  - RongCloudRTC/RongFaceBeautifier (5.2.3):
+  - RongCloudRTC/RongFaceBeautifier (5.2.5):
     - RongCloudRTC/RongRTCLib
-  - RongCloudRTC/RongRTCLib (5.2.3):
-    - RongCloudIM/IMLibCore (>= 5.1.3)
+  - RongCloudRTC/RongRTCLib (5.2.5):
+    - RongCloudIM/IMLibCore (>= 5.2.5)
   - RSKImageCropper (3.0.2)
   - SDWebImage (5.12.5):
     - SDWebImage/Core (= 5.12.5)
@@ -63,25 +60,25 @@ PODS:
   - SocketRocket (0.6.0)
   - SSZipArchive (2.4.3)
   - TYCyclePagerView (1.2.0)
-  - Whiteboard (2.16.27):
-    - Whiteboard/Whiteboard-YYModel (= 2.16.27)
-  - Whiteboard/Base (2.16.27):
-    - NTLBridge (~> 3.1.2)
+  - Whiteboard (2.16.39):
+    - Whiteboard/Whiteboard-YYModel (= 2.16.39)
+  - Whiteboard/Base (2.16.39):
+    - NTLBridge (~> 3.1.4)
     - Whiteboard/Object
-  - Whiteboard/Converter (2.16.27):
+  - Whiteboard/Converter (2.16.39):
     - Whiteboard/Object
-  - Whiteboard/Model (2.16.27):
+  - Whiteboard/Model (2.16.39):
     - YYModel
-  - Whiteboard/NativeReplayer (2.16.27):
+  - Whiteboard/NativeReplayer (2.16.39):
     - Whiteboard/Replayer
-  - Whiteboard/Object (2.16.27):
+  - Whiteboard/Object (2.16.39):
     - Whiteboard/Model
-  - Whiteboard/Replayer (2.16.27):
+  - Whiteboard/Replayer (2.16.39):
     - Whiteboard/Base
-  - Whiteboard/Resource (2.16.27)
-  - Whiteboard/Room (2.16.27):
+  - Whiteboard/Resource (2.16.39)
+  - Whiteboard/Room (2.16.39):
     - Whiteboard/Base
-  - Whiteboard/Whiteboard-YYModel (2.16.27):
+  - Whiteboard/Whiteboard-YYModel (2.16.39):
     - Whiteboard/Converter
     - Whiteboard/NativeReplayer
     - Whiteboard/Resource
@@ -104,11 +101,11 @@ DEPENDENCIES:
   - MJExtension (~> 3.3.0)
   - MJRefresh (~> 3.1.12)
   - Reachability (~> 3.2)
-  - RongCloudIM/IMKit (~> 5.2.3)
-  - RongCloudIM/IMLib (~> 5.2.3)
-  - RongCloudIM/Sight (~> 5.2.3)
-  - RongCloudRTC/RongFaceBeautifier (~> 5.2.3)
-  - RongCloudRTC/RongRTCLib (~> 5.2.3)
+  - RongCloudIM/IMKit (~> 5.2.5)
+  - RongCloudIM/IMLib (~> 5.2.5)
+  - RongCloudIM/Sight (~> 5.2.5)
+  - RongCloudRTC/RongFaceBeautifier (~> 5.2.5)
+  - RongCloudRTC/RongRTCLib (~> 5.2.5)
   - RSKImageCropper
   - SDWebImage (~> 5.12.5)
   - SocketRocket
@@ -159,18 +156,18 @@ SPEC CHECKSUMS:
   MBProgressHUD: 3ee5efcc380f6a79a7cc9b363dd669c5e1ae7406
   MJExtension: 01704cca2b60a214c10761b6491eab74069d68a9
   MJRefresh: ee5b68f639775462faba4db0fd243baf4d42c2cf
-  NTLBridge: b3433dc0dbe85c803e92a742328dc3119e331ed3
+  NTLBridge: 49780dc966976d3221a0eb03c7368617c1987cb6
   Reachability: 33e18b67625424e47b6cde6d202dce689ad7af96
-  RongCloudIM: be2941344f84bfa7ec6ea60e6379333a652bd8e3
-  RongCloudRTC: 6b9921f0680b2d95742e21210ef6eb79722a2dd8
+  RongCloudIM: 4c3befbe6e9dd813a87c499c81fb2eac54c354b3
+  RongCloudRTC: 4ddffa66488977243b32e92923f03af9423b4f29
   RSKImageCropper: 1ac71e9a82e3f41eea3eedfff8eacb0d3821c9ec
   SDWebImage: 0905f1b7760fc8ac4198cae0036600d67478751e
   SocketRocket: fccef3f9c5cedea1353a9ef6ada904fde10d6608
   SSZipArchive: fe6a26b2a54d5a0890f2567b5cc6de5caa600aef
   TYCyclePagerView: 2b051dade0615c70784aa34f40c646feeddb7344
-  Whiteboard: dc3d59f1f826e6065bd054bf499650c829753aff
+  Whiteboard: 4622f3866b7c35a9c757955619ba0a2b26d968f5
   YYModel: 2a7fdd96aaa4b86a824e26d0c517de8928c04b30
 
-PODFILE CHECKSUM: cf2d25529bb7afc537ba3188b6ef15ad3edac34b
+PODFILE CHECKSUM: a520ff64fea337dfa85d00561e36446ee3feb62a
 
 COCOAPODS: 1.11.3

+ 34 - 37
KulexiuForTeacher/Pods/Manifest.lock

@@ -28,34 +28,31 @@ PODS:
   - MBProgressHUD (1.2.0)
   - MJExtension (3.3.0)
   - MJRefresh (3.1.17)
-  - NTLBridge (3.1.2)
+  - NTLBridge (3.1.4)
   - Reachability (3.2)
-  - RongCloudIM/ChatRoom (5.2.3):
+  - RongCloudIM/ChatRoom (5.2.5):
     - RongCloudIM/IMLibCore
-  - RongCloudIM/CustomerService (5.2.3):
+  - RongCloudIM/CustomerService (5.2.5):
     - RongCloudIM/IMLibCore
-  - RongCloudIM/Discussion (5.2.3):
+  - RongCloudIM/Discussion (5.2.5):
     - RongCloudIM/IMLibCore
-  - RongCloudIM/IMKit (5.2.3):
+  - RongCloudIM/IMKit (5.2.5):
     - RongCloudIM/IMLib
-  - RongCloudIM/IMLib (5.2.3):
+  - RongCloudIM/IMLib (5.2.5):
     - RongCloudIM/ChatRoom
     - RongCloudIM/CustomerService
     - RongCloudIM/Discussion
     - RongCloudIM/IMLibCore
-    - RongCloudIM/Location
     - RongCloudIM/PublicService
-  - RongCloudIM/IMLibCore (5.2.3)
-  - RongCloudIM/Location (5.2.3):
+  - RongCloudIM/IMLibCore (5.2.5)
+  - RongCloudIM/PublicService (5.2.5):
     - RongCloudIM/IMLibCore
-  - RongCloudIM/PublicService (5.2.3):
-    - RongCloudIM/IMLibCore
-  - RongCloudIM/Sight (5.2.3):
+  - RongCloudIM/Sight (5.2.5):
     - RongCloudIM/IMKit
-  - RongCloudRTC/RongFaceBeautifier (5.2.3):
+  - RongCloudRTC/RongFaceBeautifier (5.2.5):
     - RongCloudRTC/RongRTCLib
-  - RongCloudRTC/RongRTCLib (5.2.3):
-    - RongCloudIM/IMLibCore (>= 5.1.3)
+  - RongCloudRTC/RongRTCLib (5.2.5):
+    - RongCloudIM/IMLibCore (>= 5.2.5)
   - RSKImageCropper (3.0.2)
   - SDWebImage (5.12.5):
     - SDWebImage/Core (= 5.12.5)
@@ -63,25 +60,25 @@ PODS:
   - SocketRocket (0.6.0)
   - SSZipArchive (2.4.3)
   - TYCyclePagerView (1.2.0)
-  - Whiteboard (2.16.27):
-    - Whiteboard/Whiteboard-YYModel (= 2.16.27)
-  - Whiteboard/Base (2.16.27):
-    - NTLBridge (~> 3.1.2)
+  - Whiteboard (2.16.39):
+    - Whiteboard/Whiteboard-YYModel (= 2.16.39)
+  - Whiteboard/Base (2.16.39):
+    - NTLBridge (~> 3.1.4)
     - Whiteboard/Object
-  - Whiteboard/Converter (2.16.27):
+  - Whiteboard/Converter (2.16.39):
     - Whiteboard/Object
-  - Whiteboard/Model (2.16.27):
+  - Whiteboard/Model (2.16.39):
     - YYModel
-  - Whiteboard/NativeReplayer (2.16.27):
+  - Whiteboard/NativeReplayer (2.16.39):
     - Whiteboard/Replayer
-  - Whiteboard/Object (2.16.27):
+  - Whiteboard/Object (2.16.39):
     - Whiteboard/Model
-  - Whiteboard/Replayer (2.16.27):
+  - Whiteboard/Replayer (2.16.39):
     - Whiteboard/Base
-  - Whiteboard/Resource (2.16.27)
-  - Whiteboard/Room (2.16.27):
+  - Whiteboard/Resource (2.16.39)
+  - Whiteboard/Room (2.16.39):
     - Whiteboard/Base
-  - Whiteboard/Whiteboard-YYModel (2.16.27):
+  - Whiteboard/Whiteboard-YYModel (2.16.39):
     - Whiteboard/Converter
     - Whiteboard/NativeReplayer
     - Whiteboard/Resource
@@ -104,11 +101,11 @@ DEPENDENCIES:
   - MJExtension (~> 3.3.0)
   - MJRefresh (~> 3.1.12)
   - Reachability (~> 3.2)
-  - RongCloudIM/IMKit (~> 5.2.3)
-  - RongCloudIM/IMLib (~> 5.2.3)
-  - RongCloudIM/Sight (~> 5.2.3)
-  - RongCloudRTC/RongFaceBeautifier (~> 5.2.3)
-  - RongCloudRTC/RongRTCLib (~> 5.2.3)
+  - RongCloudIM/IMKit (~> 5.2.5)
+  - RongCloudIM/IMLib (~> 5.2.5)
+  - RongCloudIM/Sight (~> 5.2.5)
+  - RongCloudRTC/RongFaceBeautifier (~> 5.2.5)
+  - RongCloudRTC/RongRTCLib (~> 5.2.5)
   - RSKImageCropper
   - SDWebImage (~> 5.12.5)
   - SocketRocket
@@ -159,18 +156,18 @@ SPEC CHECKSUMS:
   MBProgressHUD: 3ee5efcc380f6a79a7cc9b363dd669c5e1ae7406
   MJExtension: 01704cca2b60a214c10761b6491eab74069d68a9
   MJRefresh: ee5b68f639775462faba4db0fd243baf4d42c2cf
-  NTLBridge: b3433dc0dbe85c803e92a742328dc3119e331ed3
+  NTLBridge: 49780dc966976d3221a0eb03c7368617c1987cb6
   Reachability: 33e18b67625424e47b6cde6d202dce689ad7af96
-  RongCloudIM: be2941344f84bfa7ec6ea60e6379333a652bd8e3
-  RongCloudRTC: 6b9921f0680b2d95742e21210ef6eb79722a2dd8
+  RongCloudIM: 4c3befbe6e9dd813a87c499c81fb2eac54c354b3
+  RongCloudRTC: 4ddffa66488977243b32e92923f03af9423b4f29
   RSKImageCropper: 1ac71e9a82e3f41eea3eedfff8eacb0d3821c9ec
   SDWebImage: 0905f1b7760fc8ac4198cae0036600d67478751e
   SocketRocket: fccef3f9c5cedea1353a9ef6ada904fde10d6608
   SSZipArchive: fe6a26b2a54d5a0890f2567b5cc6de5caa600aef
   TYCyclePagerView: 2b051dade0615c70784aa34f40c646feeddb7344
-  Whiteboard: dc3d59f1f826e6065bd054bf499650c829753aff
+  Whiteboard: 4622f3866b7c35a9c757955619ba0a2b26d968f5
   YYModel: 2a7fdd96aaa4b86a824e26d0c517de8928c04b30
 
-PODFILE CHECKSUM: cf2d25529bb7afc537ba3188b6ef15ad3edac34b
+PODFILE CHECKSUM: a520ff64fea337dfa85d00561e36446ee3feb62a
 
 COCOAPODS: 1.11.3

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 2126 - 2106
KulexiuForTeacher/Pods/Pods.xcodeproj/project.pbxproj


+ 8 - 8
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongChatRoom.xcframework/Info.plist

@@ -6,31 +6,31 @@
 	<array>
 		<dict>
 			<key>LibraryIdentifier</key>
-			<string>ios-i386_x86_64-simulator</string>
+			<string>ios-arm64_armv7</string>
 			<key>LibraryPath</key>
 			<string>RongChatRoom.framework</string>
 			<key>SupportedArchitectures</key>
 			<array>
-				<string>i386</string>
-				<string>x86_64</string>
+				<string>arm64</string>
+				<string>armv7</string>
 			</array>
 			<key>SupportedPlatform</key>
 			<string>ios</string>
-			<key>SupportedPlatformVariant</key>
-			<string>simulator</string>
 		</dict>
 		<dict>
 			<key>LibraryIdentifier</key>
-			<string>ios-arm64_armv7</string>
+			<string>ios-i386_x86_64-simulator</string>
 			<key>LibraryPath</key>
 			<string>RongChatRoom.framework</string>
 			<key>SupportedArchitectures</key>
 			<array>
-				<string>arm64</string>
-				<string>armv7</string>
+				<string>i386</string>
+				<string>x86_64</string>
 			</array>
 			<key>SupportedPlatform</key>
 			<string>ios</string>
+			<key>SupportedPlatformVariant</key>
+			<string>simulator</string>
 		</dict>
 	</array>
 	<key>CFBundlePackageType</key>

+ 50 - 29
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongChatRoom.xcframework/ios-arm64_armv7/RongChatRoom.framework/Headers/RCChatRoomClient.h

@@ -38,8 +38,8 @@ NS_ASSUME_NONNULL_BEGIN
  */
 - (void)joinChatRoom:(NSString *)targetId
         messageCount:(int)messageCount
-             success:(void (^)(void))successBlock
-               error:(void (^)(RCErrorCode status))errorBlock;
+             success:(nullable void (^)(void))successBlock
+               error:(nullable void (^)(RCErrorCode status))errorBlock;
 
 /*!
  加入已经存在的聊天室(如果聊天室不存在返回错误 23410,人数超限返回错误 23411)
@@ -66,8 +66,8 @@ NS_ASSUME_NONNULL_BEGIN
  */
 - (void)joinExistChatRoom:(NSString *)targetId
              messageCount:(int)messageCount
-                  success:(void (^)(void))successBlock
-                    error:(void (^)(RCErrorCode status))errorBlock;
+                  success:(nullable void (^)(void))successBlock
+                    error:(nullable void (^)(RCErrorCode status))errorBlock;
 
 /*!
  退出聊天室
@@ -80,8 +80,8 @@ NS_ASSUME_NONNULL_BEGIN
  @remarks 聊天室
  */
 - (void)quitChatRoom:(NSString *)targetId
-             success:(void (^)(void))successBlock
-               error:(void (^)(RCErrorCode status))errorBlock;
+             success:(nullable void (^)(void))successBlock
+               error:(nullable void (^)(RCErrorCode status))errorBlock;
 
 /*!
  获取聊天室的信息(包含部分成员信息和当前聊天室中的成员总数)
@@ -104,8 +104,8 @@ NS_ASSUME_NONNULL_BEGIN
 - (void)getChatRoomInfo:(NSString *)targetId
                   count:(int)count
                   order:(RCChatRoomMemberOrder)order
-                success:(void (^)(RCChatRoomInfo *chatRoomInfo))successBlock
-                  error:(void (^)(RCErrorCode status))errorBlock;
+                success:(nullable void (^)(RCChatRoomInfo *chatRoomInfo))successBlock
+                  error:(nullable void (^)(RCErrorCode status))errorBlock;
 
 /*!
  设置 IMLib 的聊天室状态监听器
@@ -117,6 +117,27 @@ NS_ASSUME_NONNULL_BEGIN
 - (void)setChatRoomStatusDelegate:(id<RCChatRoomStatusDelegate>)delegate;
 
 /*!
+ 添加 IMLib 的聊天室状态监听器
+
+ @param delegate IMLib 聊天室状态监听器
+ */
+- (void)addChatRoomStatusDelegate:(id<RCChatRoomStatusDelegate>)delegate;
+
+/*!
+ 移除 IMLib 的聊天室状态监听器
+
+ @param delegate IMLib 聊天室状态监听器
+ */
+- (void)removeChatRoomStatusDelegate:(id<RCChatRoomStatusDelegate>)delegate;
+
+/*!
+ 获取 IMLib 的聊天室状态监听器
+ 
+ @return 所有 IMLib 聊天室状态监听器
+ */
+- (NSArray <id<RCChatRoomStatusDelegate>> *)allChatRoomStatusDelegates;
+
+/*!
  从服务器端获取聊天室的历史消息
  @param targetId            聊天室ID
  @param recordTime          起始的消息发送时间戳,毫秒
@@ -134,8 +155,8 @@ NS_ASSUME_NONNULL_BEGIN
                               recordTime:(long long)recordTime
                                    count:(int)count
                                    order:(RCTimestampOrder)order
-                                 success:(void (^)(NSArray<RCMessage *> *messages, long long syncTime))successBlock
-                                   error:(void (^)(RCErrorCode status))errorBlock;
+                                 success:(nullable void (^)(NSArray<RCMessage *> *messages, long long syncTime))successBlock
+                                   error:(nullable void (^)(RCErrorCode status))errorBlock;
 
 #pragma mark - 聊天室状态存储 (使用前必须先联系商务开通)
 /*!
@@ -197,8 +218,8 @@ NS_ASSUME_NONNULL_BEGIN
         sendNotification:(BOOL)sendNotification
               autoDelete:(BOOL)autoDelete
        notificationExtra:(NSString *)notificationExtra
-                 success:(void (^)(void))successBlock
-                   error:(void (^)(RCErrorCode nErrorCode))errorBlock;
+                 success:(nullable void (^)(void))successBlock
+                   error:(nullable void (^)(RCErrorCode nErrorCode))errorBlock;
 
 /**
  强制设置聊天室自定义属性
@@ -224,8 +245,8 @@ NS_ASSUME_NONNULL_BEGIN
              sendNotification:(BOOL)sendNotification
                    autoDelete:(BOOL)autoDelete
             notificationExtra:(NSString *)notificationExtra
-                      success:(void (^)(void))successBlock
-                        error:(void (^)(RCErrorCode nErrorCode))errorBlock;
+                      success:(nullable void (^)(void))successBlock
+                        error:(nullable void (^)(RCErrorCode nErrorCode))errorBlock;
 
 /**
  批量设置聊天室自定义属性
@@ -245,8 +266,8 @@ NS_ASSUME_NONNULL_BEGIN
                    entries:(NSDictionary<NSString *, NSString *> *)entries
                    isForce:(BOOL)isForce
                 autoDelete:(BOOL)autoDelete
-                   success:(void (^)(void))successBlock
-                     error:(void (^)(RCErrorCode nErrorCode, NSDictionary<NSString *,NSNumber *> *failureEntries))errorBlock;
+                   success:(nullable void (^)(void))successBlock
+                     error:(nullable void (^)(RCErrorCode nErrorCode, NSDictionary<NSString *,NSNumber *> *failureEntries))errorBlock;
 
 /**
  获取聊天室单个属性
@@ -262,8 +283,8 @@ NS_ASSUME_NONNULL_BEGIN
  */
 - (void)getChatRoomEntry:(NSString *)chatroomId
                      key:(NSString *)key
-                 success:(void (^)(NSDictionary<NSString *,NSString *> *entry))successBlock
-                   error:(void (^)(RCErrorCode nErrorCode))errorBlock;
+                 success:(nullable void (^)(NSDictionary<NSString *,NSString *> *entry))successBlock
+                   error:(nullable void (^)(RCErrorCode nErrorCode))errorBlock;
 
 /**
  获取聊天室所有自定义属性
@@ -277,8 +298,8 @@ NS_ASSUME_NONNULL_BEGIN
  @remarks 聊天室
  */
 - (void)getAllChatRoomEntries:(NSString *)chatroomId
-                      success:(void (^)(NSDictionary<NSString *, NSString *> *entry))successBlock
-                        error:(void (^)(RCErrorCode nErrorCode))errorBlock;
+                      success:(nullable void (^)(NSDictionary<NSString *, NSString *> *entry))successBlock
+                        error:(nullable void (^)(RCErrorCode nErrorCode))errorBlock;
 
 /**
  删除聊天室自定义属性
@@ -300,8 +321,8 @@ NS_ASSUME_NONNULL_BEGIN
                         key:(NSString *)key
            sendNotification:(BOOL)sendNotification
           notificationExtra:(NSString *)notificationExtra
-                    success:(void (^)(void))successBlock
-                      error:(void (^)(RCErrorCode nErrorCode))errorBlock;
+                    success:(nullable void (^)(void))successBlock
+                      error:(nullable void (^)(RCErrorCode nErrorCode))errorBlock;
 
 /**
  强制删除聊天室自定义属性
@@ -323,8 +344,8 @@ NS_ASSUME_NONNULL_BEGIN
                              key:(NSString *)key
                 sendNotification:(BOOL)sendNotification
                notificationExtra:(NSString *)notificationExtra
-                         success:(void (^)(void))successBlock
-                           error:(void (^)(RCErrorCode nErrorCode))errorBlock;
+                         success:(nullable void (^)(void))successBlock
+                           error:(nullable void (^)(RCErrorCode nErrorCode))errorBlock;
 
 /**
  批量删除聊天室自定义属性
@@ -342,8 +363,8 @@ NS_ASSUME_NONNULL_BEGIN
 - (void)removeChatRoomEntries:(NSString *)chatroomId
                          keys:(NSArray<NSString *> *)keys
                       isForce:(BOOL)isForce
-                      success:(void (^)(void))successBlock
-                        error:(void (^)(RCErrorCode nErrorCode, NSDictionary<NSString *, NSNumber *> *failureEntries))errorBlock;
+                      success:(nullable void (^)(void))successBlock
+                        error:(nullable void (^)(RCErrorCode nErrorCode, NSDictionary<NSString *, NSNumber *> *failureEntries))errorBlock;
 
 #pragma mark - 聊天室成员变化监听器
 
@@ -354,7 +375,7 @@ NS_ASSUME_NONNULL_BEGIN
 
  @remarks 功能设置
  */
-@property (nonatomic, weak) id<RCChatRoomMemberDelegate> memberDelegate;
+@property (nonatomic, weak, nullable) id<RCChatRoomMemberDelegate> memberDelegate;
 
 
 
@@ -365,8 +386,8 @@ NS_ASSUME_NONNULL_BEGIN
 /// @param errorBlock 失败回调
 - (void)bindChatRoom:(NSString *)chatRoomId
          withRTCRoom:(NSString *)rtcRoomId
-             success:(void(^)(void))successBlock
-               error:(void (^)(RCErrorCode nErrorCode))errorBlock;
+             success:(nullable void(^)(void))successBlock
+               error:(nullable void (^)(RCErrorCode nErrorCode))errorBlock;
 @end
 
 NS_ASSUME_NONNULL_END

BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongChatRoom.xcframework/ios-arm64_armv7/RongChatRoom.framework/Info.plist


BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongChatRoom.xcframework/ios-arm64_armv7/RongChatRoom.framework/RongChatRoom


+ 4 - 4
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongChatRoom.xcframework/ios-arm64_armv7/RongChatRoom.framework/_CodeSignature/CodeResources

@@ -6,7 +6,7 @@
 	<dict>
 		<key>Headers/RCChatRoomClient.h</key>
 		<data>
-		ESkeGc7kJkRzwCd4xaTjJgGfIKI=
+		95x2+ttdbgpkOW+vQ3q9x2CnHeQ=
 		</data>
 		<key>Headers/RCChatRoomEnumDefine.h</key>
 		<data>
@@ -38,7 +38,7 @@
 		</data>
 		<key>Info.plist</key>
 		<data>
-		WP9njzZiihlteTD51yIKxhubQzs=
+		zW4AriErKQ/Zw9q8qzx1p77w03s=
 		</data>
 		<key>Modules/module.modulemap</key>
 		<data>
@@ -51,11 +51,11 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			ESkeGc7kJkRzwCd4xaTjJgGfIKI=
+			95x2+ttdbgpkOW+vQ3q9x2CnHeQ=
 			</data>
 			<key>hash2</key>
 			<data>
-			Y4q5YzgfW+0eMzMNFboa3HWg+sy3OzXYN6cJQ7tuahQ=
+			l9nV49kTOTSS9haInC4zbR8gK3OztIWSToalEAicUM0=
 			</data>
 		</dict>
 		<key>Headers/RCChatRoomEnumDefine.h</key>

+ 50 - 29
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongChatRoom.xcframework/ios-i386_x86_64-simulator/RongChatRoom.framework/Headers/RCChatRoomClient.h

@@ -38,8 +38,8 @@ NS_ASSUME_NONNULL_BEGIN
  */
 - (void)joinChatRoom:(NSString *)targetId
         messageCount:(int)messageCount
-             success:(void (^)(void))successBlock
-               error:(void (^)(RCErrorCode status))errorBlock;
+             success:(nullable void (^)(void))successBlock
+               error:(nullable void (^)(RCErrorCode status))errorBlock;
 
 /*!
  加入已经存在的聊天室(如果聊天室不存在返回错误 23410,人数超限返回错误 23411)
@@ -66,8 +66,8 @@ NS_ASSUME_NONNULL_BEGIN
  */
 - (void)joinExistChatRoom:(NSString *)targetId
              messageCount:(int)messageCount
-                  success:(void (^)(void))successBlock
-                    error:(void (^)(RCErrorCode status))errorBlock;
+                  success:(nullable void (^)(void))successBlock
+                    error:(nullable void (^)(RCErrorCode status))errorBlock;
 
 /*!
  退出聊天室
@@ -80,8 +80,8 @@ NS_ASSUME_NONNULL_BEGIN
  @remarks 聊天室
  */
 - (void)quitChatRoom:(NSString *)targetId
-             success:(void (^)(void))successBlock
-               error:(void (^)(RCErrorCode status))errorBlock;
+             success:(nullable void (^)(void))successBlock
+               error:(nullable void (^)(RCErrorCode status))errorBlock;
 
 /*!
  获取聊天室的信息(包含部分成员信息和当前聊天室中的成员总数)
@@ -104,8 +104,8 @@ NS_ASSUME_NONNULL_BEGIN
 - (void)getChatRoomInfo:(NSString *)targetId
                   count:(int)count
                   order:(RCChatRoomMemberOrder)order
-                success:(void (^)(RCChatRoomInfo *chatRoomInfo))successBlock
-                  error:(void (^)(RCErrorCode status))errorBlock;
+                success:(nullable void (^)(RCChatRoomInfo *chatRoomInfo))successBlock
+                  error:(nullable void (^)(RCErrorCode status))errorBlock;
 
 /*!
  设置 IMLib 的聊天室状态监听器
@@ -117,6 +117,27 @@ NS_ASSUME_NONNULL_BEGIN
 - (void)setChatRoomStatusDelegate:(id<RCChatRoomStatusDelegate>)delegate;
 
 /*!
+ 添加 IMLib 的聊天室状态监听器
+
+ @param delegate IMLib 聊天室状态监听器
+ */
+- (void)addChatRoomStatusDelegate:(id<RCChatRoomStatusDelegate>)delegate;
+
+/*!
+ 移除 IMLib 的聊天室状态监听器
+
+ @param delegate IMLib 聊天室状态监听器
+ */
+- (void)removeChatRoomStatusDelegate:(id<RCChatRoomStatusDelegate>)delegate;
+
+/*!
+ 获取 IMLib 的聊天室状态监听器
+ 
+ @return 所有 IMLib 聊天室状态监听器
+ */
+- (NSArray <id<RCChatRoomStatusDelegate>> *)allChatRoomStatusDelegates;
+
+/*!
  从服务器端获取聊天室的历史消息
  @param targetId            聊天室ID
  @param recordTime          起始的消息发送时间戳,毫秒
@@ -134,8 +155,8 @@ NS_ASSUME_NONNULL_BEGIN
                               recordTime:(long long)recordTime
                                    count:(int)count
                                    order:(RCTimestampOrder)order
-                                 success:(void (^)(NSArray<RCMessage *> *messages, long long syncTime))successBlock
-                                   error:(void (^)(RCErrorCode status))errorBlock;
+                                 success:(nullable void (^)(NSArray<RCMessage *> *messages, long long syncTime))successBlock
+                                   error:(nullable void (^)(RCErrorCode status))errorBlock;
 
 #pragma mark - 聊天室状态存储 (使用前必须先联系商务开通)
 /*!
@@ -197,8 +218,8 @@ NS_ASSUME_NONNULL_BEGIN
         sendNotification:(BOOL)sendNotification
               autoDelete:(BOOL)autoDelete
        notificationExtra:(NSString *)notificationExtra
-                 success:(void (^)(void))successBlock
-                   error:(void (^)(RCErrorCode nErrorCode))errorBlock;
+                 success:(nullable void (^)(void))successBlock
+                   error:(nullable void (^)(RCErrorCode nErrorCode))errorBlock;
 
 /**
  强制设置聊天室自定义属性
@@ -224,8 +245,8 @@ NS_ASSUME_NONNULL_BEGIN
              sendNotification:(BOOL)sendNotification
                    autoDelete:(BOOL)autoDelete
             notificationExtra:(NSString *)notificationExtra
-                      success:(void (^)(void))successBlock
-                        error:(void (^)(RCErrorCode nErrorCode))errorBlock;
+                      success:(nullable void (^)(void))successBlock
+                        error:(nullable void (^)(RCErrorCode nErrorCode))errorBlock;
 
 /**
  批量设置聊天室自定义属性
@@ -245,8 +266,8 @@ NS_ASSUME_NONNULL_BEGIN
                    entries:(NSDictionary<NSString *, NSString *> *)entries
                    isForce:(BOOL)isForce
                 autoDelete:(BOOL)autoDelete
-                   success:(void (^)(void))successBlock
-                     error:(void (^)(RCErrorCode nErrorCode, NSDictionary<NSString *,NSNumber *> *failureEntries))errorBlock;
+                   success:(nullable void (^)(void))successBlock
+                     error:(nullable void (^)(RCErrorCode nErrorCode, NSDictionary<NSString *,NSNumber *> *failureEntries))errorBlock;
 
 /**
  获取聊天室单个属性
@@ -262,8 +283,8 @@ NS_ASSUME_NONNULL_BEGIN
  */
 - (void)getChatRoomEntry:(NSString *)chatroomId
                      key:(NSString *)key
-                 success:(void (^)(NSDictionary<NSString *,NSString *> *entry))successBlock
-                   error:(void (^)(RCErrorCode nErrorCode))errorBlock;
+                 success:(nullable void (^)(NSDictionary<NSString *,NSString *> *entry))successBlock
+                   error:(nullable void (^)(RCErrorCode nErrorCode))errorBlock;
 
 /**
  获取聊天室所有自定义属性
@@ -277,8 +298,8 @@ NS_ASSUME_NONNULL_BEGIN
  @remarks 聊天室
  */
 - (void)getAllChatRoomEntries:(NSString *)chatroomId
-                      success:(void (^)(NSDictionary<NSString *, NSString *> *entry))successBlock
-                        error:(void (^)(RCErrorCode nErrorCode))errorBlock;
+                      success:(nullable void (^)(NSDictionary<NSString *, NSString *> *entry))successBlock
+                        error:(nullable void (^)(RCErrorCode nErrorCode))errorBlock;
 
 /**
  删除聊天室自定义属性
@@ -300,8 +321,8 @@ NS_ASSUME_NONNULL_BEGIN
                         key:(NSString *)key
            sendNotification:(BOOL)sendNotification
           notificationExtra:(NSString *)notificationExtra
-                    success:(void (^)(void))successBlock
-                      error:(void (^)(RCErrorCode nErrorCode))errorBlock;
+                    success:(nullable void (^)(void))successBlock
+                      error:(nullable void (^)(RCErrorCode nErrorCode))errorBlock;
 
 /**
  强制删除聊天室自定义属性
@@ -323,8 +344,8 @@ NS_ASSUME_NONNULL_BEGIN
                              key:(NSString *)key
                 sendNotification:(BOOL)sendNotification
                notificationExtra:(NSString *)notificationExtra
-                         success:(void (^)(void))successBlock
-                           error:(void (^)(RCErrorCode nErrorCode))errorBlock;
+                         success:(nullable void (^)(void))successBlock
+                           error:(nullable void (^)(RCErrorCode nErrorCode))errorBlock;
 
 /**
  批量删除聊天室自定义属性
@@ -342,8 +363,8 @@ NS_ASSUME_NONNULL_BEGIN
 - (void)removeChatRoomEntries:(NSString *)chatroomId
                          keys:(NSArray<NSString *> *)keys
                       isForce:(BOOL)isForce
-                      success:(void (^)(void))successBlock
-                        error:(void (^)(RCErrorCode nErrorCode, NSDictionary<NSString *, NSNumber *> *failureEntries))errorBlock;
+                      success:(nullable void (^)(void))successBlock
+                        error:(nullable void (^)(RCErrorCode nErrorCode, NSDictionary<NSString *, NSNumber *> *failureEntries))errorBlock;
 
 #pragma mark - 聊天室成员变化监听器
 
@@ -354,7 +375,7 @@ NS_ASSUME_NONNULL_BEGIN
 
  @remarks 功能设置
  */
-@property (nonatomic, weak) id<RCChatRoomMemberDelegate> memberDelegate;
+@property (nonatomic, weak, nullable) id<RCChatRoomMemberDelegate> memberDelegate;
 
 
 
@@ -365,8 +386,8 @@ NS_ASSUME_NONNULL_BEGIN
 /// @param errorBlock 失败回调
 - (void)bindChatRoom:(NSString *)chatRoomId
          withRTCRoom:(NSString *)rtcRoomId
-             success:(void(^)(void))successBlock
-               error:(void (^)(RCErrorCode nErrorCode))errorBlock;
+             success:(nullable void(^)(void))successBlock
+               error:(nullable void (^)(RCErrorCode nErrorCode))errorBlock;
 @end
 
 NS_ASSUME_NONNULL_END

BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongChatRoom.xcframework/ios-i386_x86_64-simulator/RongChatRoom.framework/Info.plist


BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongChatRoom.xcframework/ios-i386_x86_64-simulator/RongChatRoom.framework/RongChatRoom


+ 4 - 4
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongChatRoom.xcframework/ios-i386_x86_64-simulator/RongChatRoom.framework/_CodeSignature/CodeResources

@@ -6,7 +6,7 @@
 	<dict>
 		<key>Headers/RCChatRoomClient.h</key>
 		<data>
-		ESkeGc7kJkRzwCd4xaTjJgGfIKI=
+		95x2+ttdbgpkOW+vQ3q9x2CnHeQ=
 		</data>
 		<key>Headers/RCChatRoomEnumDefine.h</key>
 		<data>
@@ -38,7 +38,7 @@
 		</data>
 		<key>Info.plist</key>
 		<data>
-		qsT3izmLTR6eQ7Zk6OlbPTmP94g=
+		qghAnXsMl+VQQ6CCrN44ImlFl0A=
 		</data>
 		<key>Modules/module.modulemap</key>
 		<data>
@@ -51,11 +51,11 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			ESkeGc7kJkRzwCd4xaTjJgGfIKI=
+			95x2+ttdbgpkOW+vQ3q9x2CnHeQ=
 			</data>
 			<key>hash2</key>
 			<data>
-			Y4q5YzgfW+0eMzMNFboa3HWg+sy3OzXYN6cJQ7tuahQ=
+			l9nV49kTOTSS9haInC4zbR8gK3OztIWSToalEAicUM0=
 			</data>
 		</dict>
 		<key>Headers/RCChatRoomEnumDefine.h</key>

+ 8 - 8
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongCustomerService.xcframework/Info.plist

@@ -6,31 +6,31 @@
 	<array>
 		<dict>
 			<key>LibraryIdentifier</key>
-			<string>ios-i386_x86_64-simulator</string>
+			<string>ios-arm64_armv7</string>
 			<key>LibraryPath</key>
 			<string>RongCustomerService.framework</string>
 			<key>SupportedArchitectures</key>
 			<array>
-				<string>i386</string>
-				<string>x86_64</string>
+				<string>arm64</string>
+				<string>armv7</string>
 			</array>
 			<key>SupportedPlatform</key>
 			<string>ios</string>
-			<key>SupportedPlatformVariant</key>
-			<string>simulator</string>
 		</dict>
 		<dict>
 			<key>LibraryIdentifier</key>
-			<string>ios-arm64_armv7</string>
+			<string>ios-i386_x86_64-simulator</string>
 			<key>LibraryPath</key>
 			<string>RongCustomerService.framework</string>
 			<key>SupportedArchitectures</key>
 			<array>
-				<string>arm64</string>
-				<string>armv7</string>
+				<string>i386</string>
+				<string>x86_64</string>
 			</array>
 			<key>SupportedPlatform</key>
 			<string>ios</string>
+			<key>SupportedPlatformVariant</key>
+			<string>simulator</string>
 		</dict>
 	</array>
 	<key>CFBundlePackageType</key>

+ 21 - 17
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongCustomerService.xcframework/ios-arm64_armv7/RongCustomerService.framework/Headers/RCCustomerServiceClient.h

@@ -12,6 +12,8 @@
 #import "RCCustomerServiceInfo.h"
 #import "RCCustomerServiceDefine.h"
 
+NS_ASSUME_NONNULL_BEGIN
+
 @interface RCCustomerServiceClient : NSObject
 
 + (instancetype)sharedCustomerServiceClient;
@@ -41,12 +43,12 @@
  */
 - (void)startCustomerService:(NSString *)kefuId
                         info:(RCCustomerServiceInfo *)csInfo
-                   onSuccess:(void (^)(RCCustomerServiceConfig *config))successBlock
-                     onError:(void (^)(int errorCode, NSString *errMsg))errorBlock
-                  onModeType:(void (^)(RCCSModeType mode))modeTypeBlock
-            onPullEvaluation:(void (^)(NSString *dialogId))pullEvaluationBlock
-               onSelectGroup:(void (^)(NSArray<RCCustomerServiceGroupItem *> *groupList))selectGroupBlock
-                      onQuit:(void (^)(NSString *quitMsg))quitBlock;
+                   onSuccess:(nullable void (^)(RCCustomerServiceConfig *config))successBlock
+                     onError:(nullable void (^)(int errorCode, NSString *errMsg))errorBlock
+                  onModeType:(nullable void (^)(RCCSModeType mode))modeTypeBlock
+            onPullEvaluation:(nullable void (^)(NSString *dialogId))pullEvaluationBlock
+               onSelectGroup:(nullable void (^)(NSArray<RCCustomerServiceGroupItem *> *groupList))selectGroupBlock
+                      onQuit:(nullable void (^)(NSString *quitMsg))quitBlock;
 
 /*!
  客服后台关于评价相关的客服参数配置
@@ -58,7 +60,7 @@
 
  @remarks 客服
  */
-- (void)getHumanEvaluateCustomerServiceConfig:(void (^)(NSDictionary *evaConfig))evaConfigBlock;
+- (void)getHumanEvaluateCustomerServiceConfig:(nullable void (^)(NSDictionary *evaConfig))evaConfigBlock;
 
 /*!
  结束客服聊天
@@ -120,9 +122,9 @@
  @remarks 客服
  */
 - (void)evaluateCustomerService:(NSString *)kefuId
-                   knownledgeId:(NSString *)knownledgeId
+                   knownledgeId:(nullable NSString *)knownledgeId
                      robotValue:(BOOL)isRobotResolved
-                        suggest:(NSString *)suggest;
+                        suggest:(nullable NSString *)suggest;
 
 /*!
  评价人工客服。
@@ -146,12 +148,12 @@
  @remarks 客服
  */
 - (void)evaluateCustomerService:(NSString *)kefuId
-                       dialogId:(NSString *)dialogId
+                       dialogId:(nullable NSString *)dialogId
                       starValue:(int)value
-                        suggest:(NSString *)suggest
+                        suggest:(nullable NSString *)suggest
                   resolveStatus:(RCCSResolveStatus)resolveStatus
-                        tagText:(NSString *)tagText
-                          extra:(NSDictionary *)extra;
+                        tagText:(nullable NSString *)tagText
+                          extra:(nullable NSDictionary *)extra;
 
 /*!
  通用客服评价,不区分机器人人工
@@ -171,9 +173,9 @@
  @remarks 客服
  */
 - (void)evaluateCustomerService:(NSString *)kefuId
-                       dialogId:(NSString *)dialogId
+                       dialogId:(nullable NSString *)dialogId
                       starValue:(int)value
-                        suggest:(NSString *)suggest
+                        suggest:(nullable NSString *)suggest
                   resolveStatus:(RCCSResolveStatus)resolveStatus;
 
 /*!
@@ -192,6 +194,8 @@
  */
 - (void)leaveMessageCustomerService:(NSString *)kefuId
                     leaveMessageDic:(NSDictionary *)leaveMessageDic
-                            success:(void (^)(void))successBlock
-                            failure:(void (^)(void))failureBlock;
+                            success:(nullable void (^)(void))successBlock
+                            failure:(nullable void (^)(void))failureBlock;
 @end
+
+NS_ASSUME_NONNULL_END

BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongCustomerService.xcframework/ios-arm64_armv7/RongCustomerService.framework/Info.plist


BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongCustomerService.xcframework/ios-arm64_armv7/RongCustomerService.framework/RongCustomerService


+ 4 - 4
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongCustomerService.xcframework/ios-arm64_armv7/RongCustomerService.framework/_CodeSignature/CodeResources

@@ -18,7 +18,7 @@
 		</data>
 		<key>Headers/RCCustomerServiceClient.h</key>
 		<data>
-		UtLsI/W1IaC+rck6lPTxT8efqyg=
+		InJKvA/v3zT70qqgX40RwVv++sY=
 		</data>
 		<key>Headers/RCCustomerServiceConfig.h</key>
 		<data>
@@ -46,7 +46,7 @@
 		</data>
 		<key>Info.plist</key>
 		<data>
-		MJngpaKukoA8r4fvmrWlDMj85as=
+		1SUEaNXskmnVcRfKJ8CbF/OoX88=
 		</data>
 		<key>Modules/module.modulemap</key>
 		<data>
@@ -92,11 +92,11 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			UtLsI/W1IaC+rck6lPTxT8efqyg=
+			InJKvA/v3zT70qqgX40RwVv++sY=
 			</data>
 			<key>hash2</key>
 			<data>
-			PY87RmNBfbmpz5syGED5TMLutjSvrGp0loU2x5Bzs+I=
+			0kimGge6yUjOm9v81yOGIatqy86a7VBjbUx8+/5gkbc=
 			</data>
 		</dict>
 		<key>Headers/RCCustomerServiceConfig.h</key>

+ 21 - 17
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongCustomerService.xcframework/ios-i386_x86_64-simulator/RongCustomerService.framework/Headers/RCCustomerServiceClient.h

@@ -12,6 +12,8 @@
 #import "RCCustomerServiceInfo.h"
 #import "RCCustomerServiceDefine.h"
 
+NS_ASSUME_NONNULL_BEGIN
+
 @interface RCCustomerServiceClient : NSObject
 
 + (instancetype)sharedCustomerServiceClient;
@@ -41,12 +43,12 @@
  */
 - (void)startCustomerService:(NSString *)kefuId
                         info:(RCCustomerServiceInfo *)csInfo
-                   onSuccess:(void (^)(RCCustomerServiceConfig *config))successBlock
-                     onError:(void (^)(int errorCode, NSString *errMsg))errorBlock
-                  onModeType:(void (^)(RCCSModeType mode))modeTypeBlock
-            onPullEvaluation:(void (^)(NSString *dialogId))pullEvaluationBlock
-               onSelectGroup:(void (^)(NSArray<RCCustomerServiceGroupItem *> *groupList))selectGroupBlock
-                      onQuit:(void (^)(NSString *quitMsg))quitBlock;
+                   onSuccess:(nullable void (^)(RCCustomerServiceConfig *config))successBlock
+                     onError:(nullable void (^)(int errorCode, NSString *errMsg))errorBlock
+                  onModeType:(nullable void (^)(RCCSModeType mode))modeTypeBlock
+            onPullEvaluation:(nullable void (^)(NSString *dialogId))pullEvaluationBlock
+               onSelectGroup:(nullable void (^)(NSArray<RCCustomerServiceGroupItem *> *groupList))selectGroupBlock
+                      onQuit:(nullable void (^)(NSString *quitMsg))quitBlock;
 
 /*!
  客服后台关于评价相关的客服参数配置
@@ -58,7 +60,7 @@
 
  @remarks 客服
  */
-- (void)getHumanEvaluateCustomerServiceConfig:(void (^)(NSDictionary *evaConfig))evaConfigBlock;
+- (void)getHumanEvaluateCustomerServiceConfig:(nullable void (^)(NSDictionary *evaConfig))evaConfigBlock;
 
 /*!
  结束客服聊天
@@ -120,9 +122,9 @@
  @remarks 客服
  */
 - (void)evaluateCustomerService:(NSString *)kefuId
-                   knownledgeId:(NSString *)knownledgeId
+                   knownledgeId:(nullable NSString *)knownledgeId
                      robotValue:(BOOL)isRobotResolved
-                        suggest:(NSString *)suggest;
+                        suggest:(nullable NSString *)suggest;
 
 /*!
  评价人工客服。
@@ -146,12 +148,12 @@
  @remarks 客服
  */
 - (void)evaluateCustomerService:(NSString *)kefuId
-                       dialogId:(NSString *)dialogId
+                       dialogId:(nullable NSString *)dialogId
                       starValue:(int)value
-                        suggest:(NSString *)suggest
+                        suggest:(nullable NSString *)suggest
                   resolveStatus:(RCCSResolveStatus)resolveStatus
-                        tagText:(NSString *)tagText
-                          extra:(NSDictionary *)extra;
+                        tagText:(nullable NSString *)tagText
+                          extra:(nullable NSDictionary *)extra;
 
 /*!
  通用客服评价,不区分机器人人工
@@ -171,9 +173,9 @@
  @remarks 客服
  */
 - (void)evaluateCustomerService:(NSString *)kefuId
-                       dialogId:(NSString *)dialogId
+                       dialogId:(nullable NSString *)dialogId
                       starValue:(int)value
-                        suggest:(NSString *)suggest
+                        suggest:(nullable NSString *)suggest
                   resolveStatus:(RCCSResolveStatus)resolveStatus;
 
 /*!
@@ -192,6 +194,8 @@
  */
 - (void)leaveMessageCustomerService:(NSString *)kefuId
                     leaveMessageDic:(NSDictionary *)leaveMessageDic
-                            success:(void (^)(void))successBlock
-                            failure:(void (^)(void))failureBlock;
+                            success:(nullable void (^)(void))successBlock
+                            failure:(nullable void (^)(void))failureBlock;
 @end
+
+NS_ASSUME_NONNULL_END

BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongCustomerService.xcframework/ios-i386_x86_64-simulator/RongCustomerService.framework/Info.plist


BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongCustomerService.xcframework/ios-i386_x86_64-simulator/RongCustomerService.framework/RongCustomerService


+ 4 - 4
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongCustomerService.xcframework/ios-i386_x86_64-simulator/RongCustomerService.framework/_CodeSignature/CodeResources

@@ -18,7 +18,7 @@
 		</data>
 		<key>Headers/RCCustomerServiceClient.h</key>
 		<data>
-		UtLsI/W1IaC+rck6lPTxT8efqyg=
+		InJKvA/v3zT70qqgX40RwVv++sY=
 		</data>
 		<key>Headers/RCCustomerServiceConfig.h</key>
 		<data>
@@ -46,7 +46,7 @@
 		</data>
 		<key>Info.plist</key>
 		<data>
-		eLtjrqDJpDZrgr++JZVrRUMZhO8=
+		DDBSngDnf31UQEfr8yxGgfEtmq0=
 		</data>
 		<key>Modules/module.modulemap</key>
 		<data>
@@ -92,11 +92,11 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			UtLsI/W1IaC+rck6lPTxT8efqyg=
+			InJKvA/v3zT70qqgX40RwVv++sY=
 			</data>
 			<key>hash2</key>
 			<data>
-			PY87RmNBfbmpz5syGED5TMLutjSvrGp0loU2x5Bzs+I=
+			0kimGge6yUjOm9v81yOGIatqy86a7VBjbUx8+/5gkbc=
 			</data>
 		</dict>
 		<key>Headers/RCCustomerServiceConfig.h</key>

+ 2 - 2
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-arm64_armv7/RongDiscussion.framework/Headers/RCDiscussion.h

@@ -52,14 +52,14 @@
 
  @warning **已废弃,请勿使用。**
  */
-@property (nonatomic, assign) __deprecated_msg("已废弃,请勿使用。") int conversationType;
+@property (nonatomic, assign) int conversationType __attribute__((deprecated));
 
 /*!
  讨论组是否允许消息提醒(已废弃,请勿使用)
 
  @warning **已废弃,请勿使用。**
  */
-@property (nonatomic, assign) __deprecated_msg("已废弃,请勿使用。") int pushMessageNotificationStatus;
+@property (nonatomic, assign) int pushMessageNotificationStatus __attribute__((deprecated));
 
 /*!
  讨论组初始化方法

+ 19 - 16
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-arm64_armv7/RongDiscussion.framework/Headers/RCDiscussionClient.h

@@ -10,6 +10,7 @@
 #import <RongIMLibCore/RCStatusDefine.h>
 #import "RCDiscussion.h"
 
+NS_ASSUME_NONNULL_BEGIN
 
 @interface RCDiscussionClient : NSObject
 
@@ -29,9 +30,9 @@
  @remarks 会话
  */
 - (void)createDiscussion:(NSString *)name
-              userIdList:(NSArray *)userIdList
-                 success:(void (^)(RCDiscussion *discussion))successBlock
-                   error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+              userIdList:(NSArray<NSString *> *)userIdList
+                 success:(nullable void (^)(RCDiscussion *discussion))successBlock
+                   error:(nullable void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  讨论组加人,将用户加入讨论组
@@ -47,9 +48,9 @@
  @remarks 会话
  */
 - (void)addMemberToDiscussion:(NSString *)discussionId
-                   userIdList:(NSArray *)userIdList
-                      success:(void (^)(RCDiscussion *discussion))successBlock
-                        error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                   userIdList:(NSArray<NSString *> *)userIdList
+                      success:(nullable void (^)(RCDiscussion *discussion))successBlock
+                        error:(nullable void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  讨论组踢人,将用户移出讨论组
@@ -70,8 +71,8 @@
  */
 - (void)removeMemberFromDiscussion:(NSString *)discussionId
                             userId:(NSString *)userId
-                           success:(void (^)(RCDiscussion *discussion))successBlock
-                             error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                           success:(nullable void (^)(RCDiscussion *discussion))successBlock
+                             error:(nullable void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  退出当前讨论组
@@ -83,8 +84,8 @@
  @remarks 会话
  */
 - (void)quitDiscussion:(NSString *)discussionId
-               success:(void (^)(RCDiscussion *discussion))successBlock
-                 error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+               success:(nullable void (^)(RCDiscussion *discussion))successBlock
+                 error:(nullable void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  获取讨论组的信息
@@ -97,8 +98,8 @@
  @remarks 会话
  */
 - (void)getDiscussion:(NSString *)discussionId
-              success:(void (^)(RCDiscussion *discussion))successBlock
-                error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+              success:(nullable void (^)(RCDiscussion *discussion))successBlock
+                error:(nullable void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  设置讨论组名称
@@ -114,8 +115,8 @@
  */
 - (void)setDiscussionName:(NSString *)discussionId
                      name:(NSString *)discussionName
-                  success:(void (^)(void))successBlock
-                    error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                  success:(nullable void (^)(void))successBlock
+                    error:(nullable void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  设置讨论组是否开放加人权限
@@ -132,8 +133,10 @@
  */
 - (void)setDiscussionInviteStatus:(NSString *)discussionId
                            isOpen:(BOOL)isOpen
-                          success:(void (^)(void))successBlock
-                            error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                          success:(nullable void (^)(void))successBlock
+                            error:(nullable void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 @end
 
+NS_ASSUME_NONNULL_END
+

BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-arm64_armv7/RongDiscussion.framework/Info.plist


BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-arm64_armv7/RongDiscussion.framework/RongDiscussion


+ 7 - 7
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-arm64_armv7/RongDiscussion.framework/_CodeSignature/CodeResources

@@ -6,11 +6,11 @@
 	<dict>
 		<key>Headers/RCDiscussion.h</key>
 		<data>
-		ZMcZp7AIBiVi+FWhQqopyCM57vM=
+		gDLV5Xf6jOZU+R2u0jWODy7Pfr0=
 		</data>
 		<key>Headers/RCDiscussionClient.h</key>
 		<data>
-		p2+nW4fH+zqAsnKe9aoW5HS+IRw=
+		cuGQKJ+iXAkDPrr51a6RblC+znI=
 		</data>
 		<key>Headers/RCDiscussionNotificationMessage.h</key>
 		<data>
@@ -22,7 +22,7 @@
 		</data>
 		<key>Info.plist</key>
 		<data>
-		RiDMJ3EfW1O0d2kcFrB3HJOwA6o=
+		oCJI7OHHTS1ZZJFB92ow9mDxKVU=
 		</data>
 		<key>Modules/module.modulemap</key>
 		<data>
@@ -35,22 +35,22 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			ZMcZp7AIBiVi+FWhQqopyCM57vM=
+			gDLV5Xf6jOZU+R2u0jWODy7Pfr0=
 			</data>
 			<key>hash2</key>
 			<data>
-			r6HkAL7Y07LuVIMNT0r5Hgxv4x23fESWcpz7CRcINdQ=
+			wweJchD933kRgW6/YRDXvXwXgWLqBkZ9LZ8Awm9qWds=
 			</data>
 		</dict>
 		<key>Headers/RCDiscussionClient.h</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			p2+nW4fH+zqAsnKe9aoW5HS+IRw=
+			cuGQKJ+iXAkDPrr51a6RblC+znI=
 			</data>
 			<key>hash2</key>
 			<data>
-			zSTAHakY8agmYT8wwo7755N2mlAMvQwKHwyupQ3U7kE=
+			ufCf81zho5wQP7LoYuQtTMZuygmI/Kxs2OVqyaQtpI4=
 			</data>
 		</dict>
 		<key>Headers/RCDiscussionNotificationMessage.h</key>

+ 2 - 2
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-i386_x86_64-simulator/RongDiscussion.framework/Headers/RCDiscussion.h

@@ -52,14 +52,14 @@
 
  @warning **已废弃,请勿使用。**
  */
-@property (nonatomic, assign) __deprecated_msg("已废弃,请勿使用。") int conversationType;
+@property (nonatomic, assign) int conversationType __attribute__((deprecated));
 
 /*!
  讨论组是否允许消息提醒(已废弃,请勿使用)
 
  @warning **已废弃,请勿使用。**
  */
-@property (nonatomic, assign) __deprecated_msg("已废弃,请勿使用。") int pushMessageNotificationStatus;
+@property (nonatomic, assign) int pushMessageNotificationStatus __attribute__((deprecated));
 
 /*!
  讨论组初始化方法

+ 19 - 16
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-i386_x86_64-simulator/RongDiscussion.framework/Headers/RCDiscussionClient.h

@@ -10,6 +10,7 @@
 #import <RongIMLibCore/RCStatusDefine.h>
 #import "RCDiscussion.h"
 
+NS_ASSUME_NONNULL_BEGIN
 
 @interface RCDiscussionClient : NSObject
 
@@ -29,9 +30,9 @@
  @remarks 会话
  */
 - (void)createDiscussion:(NSString *)name
-              userIdList:(NSArray *)userIdList
-                 success:(void (^)(RCDiscussion *discussion))successBlock
-                   error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+              userIdList:(NSArray<NSString *> *)userIdList
+                 success:(nullable void (^)(RCDiscussion *discussion))successBlock
+                   error:(nullable void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  讨论组加人,将用户加入讨论组
@@ -47,9 +48,9 @@
  @remarks 会话
  */
 - (void)addMemberToDiscussion:(NSString *)discussionId
-                   userIdList:(NSArray *)userIdList
-                      success:(void (^)(RCDiscussion *discussion))successBlock
-                        error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                   userIdList:(NSArray<NSString *> *)userIdList
+                      success:(nullable void (^)(RCDiscussion *discussion))successBlock
+                        error:(nullable void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  讨论组踢人,将用户移出讨论组
@@ -70,8 +71,8 @@
  */
 - (void)removeMemberFromDiscussion:(NSString *)discussionId
                             userId:(NSString *)userId
-                           success:(void (^)(RCDiscussion *discussion))successBlock
-                             error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                           success:(nullable void (^)(RCDiscussion *discussion))successBlock
+                             error:(nullable void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  退出当前讨论组
@@ -83,8 +84,8 @@
  @remarks 会话
  */
 - (void)quitDiscussion:(NSString *)discussionId
-               success:(void (^)(RCDiscussion *discussion))successBlock
-                 error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+               success:(nullable void (^)(RCDiscussion *discussion))successBlock
+                 error:(nullable void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  获取讨论组的信息
@@ -97,8 +98,8 @@
  @remarks 会话
  */
 - (void)getDiscussion:(NSString *)discussionId
-              success:(void (^)(RCDiscussion *discussion))successBlock
-                error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+              success:(nullable void (^)(RCDiscussion *discussion))successBlock
+                error:(nullable void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  设置讨论组名称
@@ -114,8 +115,8 @@
  */
 - (void)setDiscussionName:(NSString *)discussionId
                      name:(NSString *)discussionName
-                  success:(void (^)(void))successBlock
-                    error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                  success:(nullable void (^)(void))successBlock
+                    error:(nullable void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  设置讨论组是否开放加人权限
@@ -132,8 +133,10 @@
  */
 - (void)setDiscussionInviteStatus:(NSString *)discussionId
                            isOpen:(BOOL)isOpen
-                          success:(void (^)(void))successBlock
-                            error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                          success:(nullable void (^)(void))successBlock
+                            error:(nullable void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 @end
 
+NS_ASSUME_NONNULL_END
+

BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-i386_x86_64-simulator/RongDiscussion.framework/Info.plist


BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-i386_x86_64-simulator/RongDiscussion.framework/RongDiscussion


+ 7 - 7
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongDiscussion.xcframework/ios-i386_x86_64-simulator/RongDiscussion.framework/_CodeSignature/CodeResources

@@ -6,11 +6,11 @@
 	<dict>
 		<key>Headers/RCDiscussion.h</key>
 		<data>
-		ZMcZp7AIBiVi+FWhQqopyCM57vM=
+		gDLV5Xf6jOZU+R2u0jWODy7Pfr0=
 		</data>
 		<key>Headers/RCDiscussionClient.h</key>
 		<data>
-		p2+nW4fH+zqAsnKe9aoW5HS+IRw=
+		cuGQKJ+iXAkDPrr51a6RblC+znI=
 		</data>
 		<key>Headers/RCDiscussionNotificationMessage.h</key>
 		<data>
@@ -22,7 +22,7 @@
 		</data>
 		<key>Info.plist</key>
 		<data>
-		j/Orkx+EBqC1GI1jy1oZgoDhoiY=
+		KCvqnOfMrb9Q0w0GXLDnlZlJsTU=
 		</data>
 		<key>Modules/module.modulemap</key>
 		<data>
@@ -35,22 +35,22 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			ZMcZp7AIBiVi+FWhQqopyCM57vM=
+			gDLV5Xf6jOZU+R2u0jWODy7Pfr0=
 			</data>
 			<key>hash2</key>
 			<data>
-			r6HkAL7Y07LuVIMNT0r5Hgxv4x23fESWcpz7CRcINdQ=
+			wweJchD933kRgW6/YRDXvXwXgWLqBkZ9LZ8Awm9qWds=
 			</data>
 		</dict>
 		<key>Headers/RCDiscussionClient.h</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			p2+nW4fH+zqAsnKe9aoW5HS+IRw=
+			cuGQKJ+iXAkDPrr51a6RblC+znI=
 			</data>
 			<key>hash2</key>
 			<data>
-			zSTAHakY8agmYT8wwo7755N2mlAMvQwKHwyupQ3U7kE=
+			ufCf81zho5wQP7LoYuQtTMZuygmI/Kxs2OVqyaQtpI4=
 			</data>
 		</dict>
 		<key>Headers/RCDiscussionNotificationMessage.h</key>

+ 8 - 8
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/Info.plist

@@ -6,31 +6,31 @@
 	<array>
 		<dict>
 			<key>LibraryIdentifier</key>
-			<string>ios-arm64_armv7</string>
+			<string>ios-i386_x86_64-simulator</string>
 			<key>LibraryPath</key>
 			<string>RongIMKit.framework</string>
 			<key>SupportedArchitectures</key>
 			<array>
-				<string>arm64</string>
-				<string>armv7</string>
+				<string>i386</string>
+				<string>x86_64</string>
 			</array>
 			<key>SupportedPlatform</key>
 			<string>ios</string>
+			<key>SupportedPlatformVariant</key>
+			<string>simulator</string>
 		</dict>
 		<dict>
 			<key>LibraryIdentifier</key>
-			<string>ios-i386_x86_64-simulator</string>
+			<string>ios-arm64_armv7</string>
 			<key>LibraryPath</key>
 			<string>RongIMKit.framework</string>
 			<key>SupportedArchitectures</key>
 			<array>
-				<string>i386</string>
-				<string>x86_64</string>
+				<string>arm64</string>
+				<string>armv7</string>
 			</array>
 			<key>SupportedPlatform</key>
 			<string>ios</string>
-			<key>SupportedPlatformVariant</key>
-			<string>simulator</string>
 		</dict>
 	</array>
 	<key>CFBundlePackageType</key>

+ 10 - 2
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/Headers/RCChatSessionInputBarControl.h

@@ -461,6 +461,14 @@
  */
 - (void)sightDidFinishRecord:(NSString *)url thumbnail:(UIImage *)image duration:(NSUInteger)duration;
 
+/**
+ 相机录制小视频失败后调用
+
+ @param error 错误
+ @param status AVAssetWriter 状态
+ */
+- (void)sightDidRecordFailedWith:(NSError *)error status:(NSInteger)status;
+
 /*!
  地理位置选择完成之后的回调
  @param location       位置的二维坐标
@@ -481,7 +489,7 @@
  */
 - (void)locationDidSelect:(CLLocationCoordinate2D)location
              locationName:(NSString *)locationName
-            mapScreenShot:(UIImage *)mapScreenShot __deprecated_msg("已废弃并失效, 请通过实现扩展区位置按钮点击跳转, 设置 RCLocationPickerViewController 的代理 RCLocationPickerViewControllerDelegate,来实现地理位置选择完成之后的代理回调方法");
+            mapScreenShot:(UIImage *)mapScreenShot __deprecated_msg("Use RCLocationPickerViewControllerDelegate on RCLocationPickerViewController instead");
 
 /*!
  相册选择图片列表,返回图片的 NSData
@@ -550,6 +558,6 @@
  */
 - (void)onClickEditPicture:(UIViewController *)rootCtrl
              originalImage:(UIImage *)originalImage
-            editCompletion:(void (^)(UIImage *editedImage))editCompletion __deprecated_msg("已废弃");
+            editCompletion:(void (^)(UIImage *editedImage))editCompletion __attribute__((deprecated));
 
 @end

+ 17 - 0
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/Headers/RCConversationModel.h

@@ -8,6 +8,7 @@
 
 #import <Foundation/Foundation.h>
 #import <RongIMLib/RongIMLib.h>
+#import <RongIMLibCore/RCStatusDefine.h>
 
 /*!
  会话Cell数据模型的显示类型
@@ -156,6 +157,22 @@ typedef NS_ENUM(NSUInteger, RCConversationModelType) {
 */
 @property (nonatomic, assign) int mentionedCount;
 
+
+/*!
+ 免打扰级别
+ */
+@property (nonatomic, assign) RCPushNotificationLevel notificationLevel;
+
+/*!
+ 会话中第一条未读消息时间戳(Unix时间戳、毫秒)
+
+ 仅支持 超级群会话
+ @Since 5.2.5
+
+*/
+@property (nonatomic, assign) long long firstUnreadMsgSendTime;
+
+
 /*!
  初始化会话显示数据模型
 

+ 14 - 4
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/Headers/RCConversationViewController.h

@@ -16,8 +16,8 @@
 #import "RCThemeDefine.h"
 #import <UIKit/UIKit.h>
 #import "RCReferencingView.h"
-#import <RongLocation/RCLocationMessage.h>
 
+@class RCLocationMessage;
 @class RCCustomerServiceInfo,RCPublicServiceMenuItem;
 /*!
  客服服务状态
@@ -295,6 +295,7 @@ typedef enum : NSUInteger {
 /*!
  设置进入会话页面后下拉刷新从本地数据库取的消息的条数,默认是 10。
  @discussion 此属性需要在viewDidLoad之前进行设置。
+ 从 5.2.4 及之后版本, SDK 加载消息的个数使用 defaultRemoteHistoryMessageCount, 请勿再使用该字段。
  */
 @property (nonatomic, assign) int defaultLocalHistoryMessageCount;
 
@@ -418,7 +419,7 @@ typedef enum : NSUInteger {
  如果您需要重写此接口,请注意调用super。
  因 UI 逻辑修改为将原消息移动到会话页面最下方,不删除原消息直接重新发送原消息,但是此方法会重新生成消息发送,故废弃。
  */
-- (void)resendMessage:(RCMessageContent *)messageContent __deprecated_msg("已废弃,请使用 resendMessageWithModel");
+- (void)resendMessage:(RCMessageContent *)messageContent __deprecated_msg("Use resendMessageWithModel instead");
 
 /*!
  重新发送消息
@@ -493,7 +494,7 @@ typedef enum : NSUInteger {
  @param status          发送状态,0表示成功,非0表示失败
  @param messageContent   消息内容
  */
-- (void)didSendMessage:(NSInteger)status content:(RCMessageContent *)messageContent __deprecated_msg("已废弃,请使用 - (void)didSendMessageModel:(NSInteger)status model:(RCMessageModel *)messageModel");
+- (void)didSendMessage:(NSInteger)status content:(RCMessageContent *)messageContent __deprecated_msg("Use - (void)didSendMessageModel:(NSInteger)status model:(RCMessageModel *)messageModel instead");
 
 /*!
  发送消息完成的回调
@@ -550,6 +551,14 @@ typedef enum : NSUInteger {
 
 #pragma mark - 自定义消息
 /*!
+ 用户注册自定义消息的入口
+
+ @discussion 如果有自定义消息,请在该方法内执行
+ - (void)registerClass:(Class)cellClass forMessageClass:(Class)messageClass
+ 进行消息注册
+ */
+- (void)registerCustomCellsAndMessages;
+/*!
  注册自定义消息的Cell
 
  @param cellClass     自定义消息cell的类
@@ -558,7 +567,8 @@ typedef enum : NSUInteger {
  @discussion
  你需要在cell中重写RCMessageBaseCell基类的sizeForMessageModel:withCollectionViewWidth:referenceExtraHeight:来计算cell的高度。
  
- @discussion 如果有自定义消息,在会话页面子类 viewDidLoad 方法中需优先注册自定义消息的 cell, 再做其他操作
+ @discussion 如果有自定义消息,在会话页面子类 registerCustomCellsAndMessages 方法中需优先注册自定义消息的 cell, 再做其他操作;  请不要在其他方法中进行注册, 可能会有渲染时序问题
+
  */
 - (void)registerClass:(Class)cellClass forMessageClass:(Class)messageClass;
 

+ 28 - 28
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/Headers/RCIM+Deprecated.h

@@ -21,7 +21,7 @@
  @discussion 当App处于后台时,默认会弹出本地通知提示,您可以通过将此属性设置为YES,关闭所有的本地通知。
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
-@property (nonatomic, assign) BOOL disableMessageNotificaiton __deprecated_msg("已废弃,请使用 RCKitConfigCenter.message.disableMessageNotificaiton");
+@property (nonatomic, assign) BOOL disableMessageNotificaiton __deprecated_msg("Use RCKitConfigCenter.message.disableMessageNotificaiton instead");
 
 /*!
  是否关闭所有的前台消息提示音,默认值是NO
@@ -29,13 +29,13 @@
  @discussion 当App处于前台时,默认会播放消息提示音,您可以通过将此属性设置为YES,关闭所有的前台消息提示音。
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
-@property (nonatomic, assign) BOOL disableMessageAlertSound __deprecated_msg("已废弃,请使用 RCKitConfigCenter.message.disableMessageAlertSound");
+@property (nonatomic, assign) BOOL disableMessageAlertSound __deprecated_msg("Use RCKitConfigCenter.message.disableMessageAlertSound instead");
 
 /*!
  是否开启发送输入状态,默认值是 YES,开启之后在输入消息的时候对方可以看到正在输入的提示(目前只支持单聊)
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
-@property (nonatomic, assign) BOOL enableTypingStatus __deprecated_msg("已废弃,请使用 RCKitConfigCenter.message.enableTypingStatus");
+@property (nonatomic, assign) BOOL enableTypingStatus __deprecated_msg("Use RCKitConfigCenter.message.enableTypingStatus instead");
 
 /*!
  开启已读回执功能的会话类型,默认为 单聊、群聊和讨论组
@@ -47,7 +47,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, copy) NSArray *enabledReadReceiptConversationTypeList __deprecated_msg(
-   "已废弃,请使用 RCKitConfigCenter.message.enabledReadReceiptConversationTypeList,设置开启回执的会话类型。");
+   "Use RCKitConfigCenter.message.enabledReadReceiptConversationTypeList instead");
 
 /*!
  设置群组、讨论组发送已读回执请求的有效时间,单位是秒,默认值是 120s。
@@ -56,7 +56,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) NSUInteger maxReadRequestDuration __deprecated_msg(
-  "已废弃,请使用 RCKitConfigCenter.message.maxReadRequestDuration");
+  "Use RCKitConfigCenter.message.maxReadRequestDuration instead");
 
 /*!
  是否开启多端同步未读状态的功能,默认值是 YES
@@ -65,28 +65,28 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) BOOL enableSyncReadStatus __deprecated_msg(
- "已废弃,请使用 RCKitConfigCenter.message.enableSyncReadStatus");
+ "Use RCKitConfigCenter.message.enableSyncReadStatus instead");
 
 /*!
  是否开启消息@提醒功能(只支持群聊和讨论组, App需要实现群成员数据源groupMemberDataSource),默认值是 YES。
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) BOOL enableMessageMentioned __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.enableMessageMentioned");
+"Use RCKitConfigCenter.message.enableMessageMentioned instead");
 
 /*!
  是否开启消息撤回功能,默认值是 YES。
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) BOOL enableMessageRecall __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.enableMessageRecall");
+"Use RCKitConfigCenter.message.enableMessageRecall instead");
 
 /*!
  消息可撤回的最大时间,单位是秒,默认值是120s。
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) NSUInteger maxRecallDuration __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.maxRecallDuration");
+"Use RCKitConfigCenter.message.maxRecallDuration instead");
 
 /*!
  是否在会话页面和会话列表界面显示未注册的消息类型,默认值是 YES
@@ -99,7 +99,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) BOOL showUnkownMessage __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.showUnkownMessage");
+"Use RCKitConfigCenter.message.showUnkownMessage instead");
 
 /*!
  未注册的消息类型是否显示本地通知,默认值是NO
@@ -113,7 +113,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) BOOL showUnkownMessageNotificaiton __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.showUnkownMessageNotificaiton");
+"Use RCKitConfigCenter.message.showUnkownMessageNotificaiton instead");
 
 /*!
  语音消息的最大长度
@@ -122,7 +122,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) NSUInteger maxVoiceDuration __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.maxVoiceDuration");
+"Use RCKitConfigCenter.message.maxVoiceDuration instead");
 
 /*!
  APP是否独占音频
@@ -133,7 +133,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) BOOL isExclusiveSoundPlayer __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.isExclusiveSoundPlayer");
+"Use RCKitConfigCenter.message.isExclusiveSoundPlayer instead");
 
 /*!
  选择媒体资源时,是否包含视频文件,默认值是NO
@@ -142,21 +142,21 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) BOOL isMediaSelectorContainVideo __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.isMediaSelectorContainVideo");
+"Use RCKitConfigCenter.message.isMediaSelectorContainVideo instead");
 
 /**
  GIF 消息自动下载的大小 size, 单位 KB
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) NSInteger GIFMsgAutoDownloadSize __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.GIFMsgAutoDownloadSize");
+"Use RCKitConfigCenter.message.GIFMsgAutoDownloadSize instead");
 
 /*!
  是否开启合并转发功能,默认值是NO,开启之后可以合并转发消息(目前只支持单聊和群聊)
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) BOOL enableSendCombineMessage __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.enableSendCombineMessage");
+"Use RCKitConfigCenter.message.enableSendCombineMessage instead");
 
 /*!
  是否开启阅后即焚功能,默认值是NO,开启之后可以在聊天页面扩展板中使用阅后即焚功能(目前只支持单聊)
@@ -165,7 +165,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) BOOL enableDestructMessage __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.enableDestructMessage");
+"Use RCKitConfigCenter.message.enableDestructMessage instead");
 
 /*!
  消息撤回后可重新编辑的时间,单位是秒,默认值是 300s。
@@ -174,14 +174,14 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) NSUInteger reeditDuration __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.reeditDuration");
+"Use RCKitConfigCenter.message.reeditDuration instead");
 
 /*!
  是否支持消息引用功能,默认值是YES ,聊天页面长按消息支持引用(目前仅支持文本消息、文件消息、图文消息、图片消息、引用消息的引用)
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
 */
 @property (nonatomic, assign) BOOL enableMessageReference __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.enableMessageReference");
+"Use RCKitConfigCenter.message.enableMessageReference instead");
 
 /**
 小视频的最长录制时间,单位是秒,默认值是 10s。
@@ -190,18 +190,18 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) NSUInteger sightRecordMaxDuration __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.sightRecordMaxDuration");
+"Use RCKitConfigCenter.message.sightRecordMaxDuration instead");
 
 #pragma mark 头像显示
 
 /*!
  SDK中全局的导航按钮字体颜色
 
- @discussion 默认值为[UIColor whiteColor]
+ @discussion 默认值为[UIColor blackColor]
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, strong) UIColor *globalNavigationBarTintColor __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.ui.globalNavigationBarTintColor");
+"Use RCKitConfigCenter.ui.globalNavigationBarTintColor instead");
 
 /*!
  SDK会话列表界面中显示的头像形状,矩形或者圆形
@@ -210,7 +210,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) RCUserAvatarStyle globalConversationAvatarStyle __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.ui.globalConversationAvatarStyle");
+"Use RCKitConfigCenter.ui.globalConversationAvatarStyle instead");
 
 /*!
  SDK会话列表界面中显示的头像大小,高度必须大于或者等于36
@@ -219,7 +219,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) CGSize globalConversationPortraitSize __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.ui.globalConversationPortraitSize");
+"Use RCKitConfigCenter.ui.globalConversationPortraitSize instead");
 
 /*!
  SDK会话页面中显示的头像形状,矩形或者圆形
@@ -228,7 +228,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) RCUserAvatarStyle globalMessageAvatarStyle __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.ui.globalMessageAvatarStyle");
+"Use RCKitConfigCenter.ui.globalMessageAvatarStyle instead");
 
 /*!
  SDK会话页面中显示的头像大小
@@ -237,7 +237,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) CGSize globalMessagePortraitSize __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.ui.globalMessagePortraitSize");
+"Use RCKitConfigCenter.ui.globalMessagePortraitSize instead");
 
 /*!
  SDK会话列表界面和会话页面的头像的圆角曲率半径
@@ -247,12 +247,12 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) CGFloat portraitImageViewCornerRadius __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.ui.portraitImageViewCornerRadius");
+"Use RCKitConfigCenter.ui.portraitImageViewCornerRadius instead");
 
 /*!
 是否支持暗黑模式,默认值是NO,开启之后 UI 支持暗黑模式,可以跟随系统切换
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
 */
 @property (nonatomic, assign) BOOL enableDarkMode __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.ui.enableDarkMode");
+"Use RCKitConfigCenter.ui.enableDarkMode instead");
 @end

+ 8 - 8
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/Headers/RCIM.h

@@ -289,7 +289,7 @@ FOUNDATION_EXPORT NSString *const RCKitDispatchConversationStatusChangeNotificat
 
  @discussion 被撤回的消息会变更为RCRecallNotificationMessage,App需要在UI上刷新这条消息。
  */
-- (void)onRCIMMessageRecalled:(long)messageId __deprecated_msg("已废弃,请使用 RCIM 的 messageDidRecall");
+- (void)onRCIMMessageRecalled:(long)messageId __deprecated_msg("Use  messageDidRecall on RCIM instead");
 
 /*!
  消息被撤回的回调方法
@@ -803,7 +803,7 @@ FOUNDATION_EXPORT NSString *const RCKitDispatchConversationStatusChangeNotificat
 - (void)createDiscussion:(NSString *)name
               userIdList:(NSArray *)userIdList
                  success:(void (^)(RCDiscussion *discussion))successBlock
-                   error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                   error:(void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  讨论组加人,将用户加入讨论组
@@ -818,7 +818,7 @@ FOUNDATION_EXPORT NSString *const RCKitDispatchConversationStatusChangeNotificat
 - (void)addMemberToDiscussion:(NSString *)discussionId
                    userIdList:(NSArray *)userIdList
                       success:(void (^)(RCDiscussion *discussion))successBlock
-                        error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                        error:(void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  讨论组踢人,将用户移出讨论组
@@ -836,7 +836,7 @@ FOUNDATION_EXPORT NSString *const RCKitDispatchConversationStatusChangeNotificat
 - (void)removeMemberFromDiscussion:(NSString *)discussionId
                             userId:(NSString *)userId
                            success:(void (^)(RCDiscussion *discussion))successBlock
-                             error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                             error:(void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  退出当前讨论组
@@ -847,7 +847,7 @@ FOUNDATION_EXPORT NSString *const RCKitDispatchConversationStatusChangeNotificat
  */
 - (void)quitDiscussion:(NSString *)discussionId
                success:(void (^)(RCDiscussion *discussion))successBlock
-                 error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                 error:(void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  获取讨论组的信息
@@ -858,7 +858,7 @@ FOUNDATION_EXPORT NSString *const RCKitDispatchConversationStatusChangeNotificat
  */
 - (void)getDiscussion:(NSString *)discussionId
               success:(void (^)(RCDiscussion *discussion))successBlock
-                error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                error:(void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  设置讨论组名称
@@ -873,7 +873,7 @@ FOUNDATION_EXPORT NSString *const RCKitDispatchConversationStatusChangeNotificat
 - (void)setDiscussionName:(NSString *)discussionId
                      name:(NSString *)discussionName
                   success:(void (^)(void))successBlock
-                    error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                    error:(void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  设置讨论组是否开放加人权限
@@ -889,7 +889,7 @@ FOUNDATION_EXPORT NSString *const RCKitDispatchConversationStatusChangeNotificat
 - (void)setDiscussionInviteStatus:(NSString *)discussionId
                            isOpen:(BOOL)isOpen
                           success:(void (^)(void))successBlock
-                            error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                            error:(void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 #pragma mark - 用户信息、群组信息相关
 

+ 1 - 1
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/Headers/RCKitUIConf.h

@@ -15,7 +15,7 @@
 /*!
  SDK中全局的导航按钮字体颜色
 
- @discussion 默认值为[UIColor whiteColor]
+ @discussion 默认值为[UIColor blackColor]
  */
 @property (nonatomic, strong) UIColor *globalNavigationBarTintColor;
 

+ 3 - 0
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/Headers/RongIMKit.h

@@ -48,6 +48,7 @@
 #import <RongIMKit/RCReferencingView.h>
 #import <RongIMKit/RCMessageCellTool.h>
 #import <RongIMKit/RCHQVoiceMessageCell.h>
+#import <RongIMKit/RCComplexTextMessageCell.h>
 
 /// 工具类
 #import <RongIMKit/RCKitUtility.h>
@@ -110,6 +111,8 @@
 #import "RCReferencingView.h"
 #import "RCMessageCellTool.h"
 #import "RCHQVoiceMessageCell.h"
+#import "RCComplexTextMessageCell.h"
+
 
 /// 工具类
 #import "RCKitUtility.h"

BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/Info.plist


BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/RongIMKit


+ 37 - 22
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-arm64_armv7/RongIMKit.framework/_CodeSignature/CodeResources

@@ -30,7 +30,11 @@
 		</data>
 		<key>Headers/RCChatSessionInputBarControl.h</key>
 		<data>
-		ONwkPZ5QUnDPM8vNV/zRoMADr1s=
+		DkmEa3lR09MsOHqi13Nha563dUQ=
+		</data>
+		<key>Headers/RCComplexTextMessageCell.h</key>
+		<data>
+		0rJhis1pWQ4Fn4sTJn55wGDEOks=
 		</data>
 		<key>Headers/RCContentView.h</key>
 		<data>
@@ -54,7 +58,7 @@
 		</data>
 		<key>Headers/RCConversationModel.h</key>
 		<data>
-		H6OM6XbFI7fU0O1DSZ7mNDIQELc=
+		SqE4WoQkGpIFXzIgvPSoCtjdBSI=
 		</data>
 		<key>Headers/RCConversationStatusView.h</key>
 		<data>
@@ -62,7 +66,7 @@
 		</data>
 		<key>Headers/RCConversationViewController.h</key>
 		<data>
-		bgnzdhnDELRkzP7/YnckS/JfqEY=
+		qGVOQ4BMbuEkDbLx87v/EAJk4HM=
 		</data>
 		<key>Headers/RCEmojiBoardView.h</key>
 		<data>
@@ -106,11 +110,11 @@
 		</data>
 		<key>Headers/RCIM+Deprecated.h</key>
 		<data>
-		krlIui5aUa4WyawRSq1mUSveZ4g=
+		ipPXic/+LaWjogvJXBw3Mm+5mU0=
 		</data>
 		<key>Headers/RCIM.h</key>
 		<data>
-		4x4n1A6k+0AwwloGLvl5jC4DeDg=
+		c96JpR1b2aes3WvdgptJOaYA5xY=
 		</data>
 		<key>Headers/RCImageMessageCell.h</key>
 		<data>
@@ -150,7 +154,7 @@
 		</data>
 		<key>Headers/RCKitUIConf.h</key>
 		<data>
-		p2HF3V5eQYNSG1ElS38fvsz4DAs=
+		qp6uQvPofNNZR+wBsdYr804AaH8=
 		</data>
 		<key>Headers/RCKitUtility.h</key>
 		<data>
@@ -254,7 +258,7 @@
 		</data>
 		<key>Headers/RongIMKit.h</key>
 		<data>
-		P0cOY6HNRicJhYX6JicEpd889sQ=
+		9XqFDUhAT33uLEMPYSwBoECU7Wg=
 		</data>
 		<key>Headers/RongIMKitExtensionModule.h</key>
 		<data>
@@ -262,7 +266,7 @@
 		</data>
 		<key>Info.plist</key>
 		<data>
-		kV/XNd13XLdi8kpXFumOE2LBZgs=
+		xYgWmOXNGFLaN67RHfZFReZ4uGI=
 		</data>
 		<key>Modules/module.modulemap</key>
 		<data>
@@ -341,11 +345,22 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			ONwkPZ5QUnDPM8vNV/zRoMADr1s=
+			DkmEa3lR09MsOHqi13Nha563dUQ=
+			</data>
+			<key>hash2</key>
+			<data>
+			M5S9qUIjV16y2JwOXc+ZN+lS/p3Pd6pf0YEaZL6OZSc=
+			</data>
+		</dict>
+		<key>Headers/RCComplexTextMessageCell.h</key>
+		<dict>
+			<key>hash</key>
+			<data>
+			0rJhis1pWQ4Fn4sTJn55wGDEOks=
 			</data>
 			<key>hash2</key>
 			<data>
-			CeGwo6+b/LT9xpBoFFRh2Aup6OTvgRGGPSXpIK2zknU=
+			Bd5AN8OdeB2ivh06nWBJvIeJ0MHCMk1qLpyO3evvmG0=
 			</data>
 		</dict>
 		<key>Headers/RCContentView.h</key>
@@ -407,11 +422,11 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			H6OM6XbFI7fU0O1DSZ7mNDIQELc=
+			SqE4WoQkGpIFXzIgvPSoCtjdBSI=
 			</data>
 			<key>hash2</key>
 			<data>
-			m7z0F9JNnzvhcprLrlsb0grjKUeXa6I58IMTr3GV7Ew=
+			S+wDE5EMiN/WjZ9J7InfuvP7LJuFAxBZlBCpgKSmC7s=
 			</data>
 		</dict>
 		<key>Headers/RCConversationStatusView.h</key>
@@ -429,11 +444,11 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			bgnzdhnDELRkzP7/YnckS/JfqEY=
+			qGVOQ4BMbuEkDbLx87v/EAJk4HM=
 			</data>
 			<key>hash2</key>
 			<data>
-			1ztT0zDs/YaqyRAhRA1qvUNhz9DgKoVHhFjufq7jFgA=
+			P+/GQ6sD7hWxB83M7u8kXvP/dVWfyhwPuBM6CdNg044=
 			</data>
 		</dict>
 		<key>Headers/RCEmojiBoardView.h</key>
@@ -550,22 +565,22 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			krlIui5aUa4WyawRSq1mUSveZ4g=
+			ipPXic/+LaWjogvJXBw3Mm+5mU0=
 			</data>
 			<key>hash2</key>
 			<data>
-			l3uKeyn0SHhLgP5PCftr7szJWexXrFtPh7V7LeDWIVw=
+			NXZuCPUe+HsYbEI7zsaPg4GO7ejBaIxo7b9aj3DdPGc=
 			</data>
 		</dict>
 		<key>Headers/RCIM.h</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			4x4n1A6k+0AwwloGLvl5jC4DeDg=
+			c96JpR1b2aes3WvdgptJOaYA5xY=
 			</data>
 			<key>hash2</key>
 			<data>
-			DYBzRxHZ/0TJGqKq/WVaKrYmvpuax4SPGlUHSD/0heU=
+			2ALGBrCGQjKhC+SmClhrVOn6RpogR40hjwHuAfw3gTM=
 			</data>
 		</dict>
 		<key>Headers/RCImageMessageCell.h</key>
@@ -671,11 +686,11 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			p2HF3V5eQYNSG1ElS38fvsz4DAs=
+			qp6uQvPofNNZR+wBsdYr804AaH8=
 			</data>
 			<key>hash2</key>
 			<data>
-			OTTLEgQPnKCmXN2DVUFhSmk6eiZ0nhvq5U1teX+D5F4=
+			0zmNodTl6aiR+I1yHq3j/zX7rXJdct1jYpOVO9SqzeY=
 			</data>
 		</dict>
 		<key>Headers/RCKitUtility.h</key>
@@ -957,11 +972,11 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			P0cOY6HNRicJhYX6JicEpd889sQ=
+			9XqFDUhAT33uLEMPYSwBoECU7Wg=
 			</data>
 			<key>hash2</key>
 			<data>
-			SERonG6YXAbN7pW//eWm0+6VHDsdfa5e7tHBU4ajero=
+			pX59eQrE25qxVMGohSi4QaPX0Vpzp8NFhD6StLBm0/g=
 			</data>
 		</dict>
 		<key>Headers/RongIMKitExtensionModule.h</key>

+ 10 - 2
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/Headers/RCChatSessionInputBarControl.h

@@ -461,6 +461,14 @@
  */
 - (void)sightDidFinishRecord:(NSString *)url thumbnail:(UIImage *)image duration:(NSUInteger)duration;
 
+/**
+ 相机录制小视频失败后调用
+
+ @param error 错误
+ @param status AVAssetWriter 状态
+ */
+- (void)sightDidRecordFailedWith:(NSError *)error status:(NSInteger)status;
+
 /*!
  地理位置选择完成之后的回调
  @param location       位置的二维坐标
@@ -481,7 +489,7 @@
  */
 - (void)locationDidSelect:(CLLocationCoordinate2D)location
              locationName:(NSString *)locationName
-            mapScreenShot:(UIImage *)mapScreenShot __deprecated_msg("已废弃并失效, 请通过实现扩展区位置按钮点击跳转, 设置 RCLocationPickerViewController 的代理 RCLocationPickerViewControllerDelegate,来实现地理位置选择完成之后的代理回调方法");
+            mapScreenShot:(UIImage *)mapScreenShot __deprecated_msg("Use RCLocationPickerViewControllerDelegate on RCLocationPickerViewController instead");
 
 /*!
  相册选择图片列表,返回图片的 NSData
@@ -550,6 +558,6 @@
  */
 - (void)onClickEditPicture:(UIViewController *)rootCtrl
              originalImage:(UIImage *)originalImage
-            editCompletion:(void (^)(UIImage *editedImage))editCompletion __deprecated_msg("已废弃");
+            editCompletion:(void (^)(UIImage *editedImage))editCompletion __attribute__((deprecated));
 
 @end

+ 17 - 0
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/Headers/RCConversationModel.h

@@ -8,6 +8,7 @@
 
 #import <Foundation/Foundation.h>
 #import <RongIMLib/RongIMLib.h>
+#import <RongIMLibCore/RCStatusDefine.h>
 
 /*!
  会话Cell数据模型的显示类型
@@ -156,6 +157,22 @@ typedef NS_ENUM(NSUInteger, RCConversationModelType) {
 */
 @property (nonatomic, assign) int mentionedCount;
 
+
+/*!
+ 免打扰级别
+ */
+@property (nonatomic, assign) RCPushNotificationLevel notificationLevel;
+
+/*!
+ 会话中第一条未读消息时间戳(Unix时间戳、毫秒)
+
+ 仅支持 超级群会话
+ @Since 5.2.5
+
+*/
+@property (nonatomic, assign) long long firstUnreadMsgSendTime;
+
+
 /*!
  初始化会话显示数据模型
 

+ 14 - 4
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/Headers/RCConversationViewController.h

@@ -16,8 +16,8 @@
 #import "RCThemeDefine.h"
 #import <UIKit/UIKit.h>
 #import "RCReferencingView.h"
-#import <RongLocation/RCLocationMessage.h>
 
+@class RCLocationMessage;
 @class RCCustomerServiceInfo,RCPublicServiceMenuItem;
 /*!
  客服服务状态
@@ -295,6 +295,7 @@ typedef enum : NSUInteger {
 /*!
  设置进入会话页面后下拉刷新从本地数据库取的消息的条数,默认是 10。
  @discussion 此属性需要在viewDidLoad之前进行设置。
+ 从 5.2.4 及之后版本, SDK 加载消息的个数使用 defaultRemoteHistoryMessageCount, 请勿再使用该字段。
  */
 @property (nonatomic, assign) int defaultLocalHistoryMessageCount;
 
@@ -418,7 +419,7 @@ typedef enum : NSUInteger {
  如果您需要重写此接口,请注意调用super。
  因 UI 逻辑修改为将原消息移动到会话页面最下方,不删除原消息直接重新发送原消息,但是此方法会重新生成消息发送,故废弃。
  */
-- (void)resendMessage:(RCMessageContent *)messageContent __deprecated_msg("已废弃,请使用 resendMessageWithModel");
+- (void)resendMessage:(RCMessageContent *)messageContent __deprecated_msg("Use resendMessageWithModel instead");
 
 /*!
  重新发送消息
@@ -493,7 +494,7 @@ typedef enum : NSUInteger {
  @param status          发送状态,0表示成功,非0表示失败
  @param messageContent   消息内容
  */
-- (void)didSendMessage:(NSInteger)status content:(RCMessageContent *)messageContent __deprecated_msg("已废弃,请使用 - (void)didSendMessageModel:(NSInteger)status model:(RCMessageModel *)messageModel");
+- (void)didSendMessage:(NSInteger)status content:(RCMessageContent *)messageContent __deprecated_msg("Use - (void)didSendMessageModel:(NSInteger)status model:(RCMessageModel *)messageModel instead");
 
 /*!
  发送消息完成的回调
@@ -550,6 +551,14 @@ typedef enum : NSUInteger {
 
 #pragma mark - 自定义消息
 /*!
+ 用户注册自定义消息的入口
+
+ @discussion 如果有自定义消息,请在该方法内执行
+ - (void)registerClass:(Class)cellClass forMessageClass:(Class)messageClass
+ 进行消息注册
+ */
+- (void)registerCustomCellsAndMessages;
+/*!
  注册自定义消息的Cell
 
  @param cellClass     自定义消息cell的类
@@ -558,7 +567,8 @@ typedef enum : NSUInteger {
  @discussion
  你需要在cell中重写RCMessageBaseCell基类的sizeForMessageModel:withCollectionViewWidth:referenceExtraHeight:来计算cell的高度。
  
- @discussion 如果有自定义消息,在会话页面子类 viewDidLoad 方法中需优先注册自定义消息的 cell, 再做其他操作
+ @discussion 如果有自定义消息,在会话页面子类 registerCustomCellsAndMessages 方法中需优先注册自定义消息的 cell, 再做其他操作;  请不要在其他方法中进行注册, 可能会有渲染时序问题
+
  */
 - (void)registerClass:(Class)cellClass forMessageClass:(Class)messageClass;
 

+ 28 - 28
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/Headers/RCIM+Deprecated.h

@@ -21,7 +21,7 @@
  @discussion 当App处于后台时,默认会弹出本地通知提示,您可以通过将此属性设置为YES,关闭所有的本地通知。
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
-@property (nonatomic, assign) BOOL disableMessageNotificaiton __deprecated_msg("已废弃,请使用 RCKitConfigCenter.message.disableMessageNotificaiton");
+@property (nonatomic, assign) BOOL disableMessageNotificaiton __deprecated_msg("Use RCKitConfigCenter.message.disableMessageNotificaiton instead");
 
 /*!
  是否关闭所有的前台消息提示音,默认值是NO
@@ -29,13 +29,13 @@
  @discussion 当App处于前台时,默认会播放消息提示音,您可以通过将此属性设置为YES,关闭所有的前台消息提示音。
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
-@property (nonatomic, assign) BOOL disableMessageAlertSound __deprecated_msg("已废弃,请使用 RCKitConfigCenter.message.disableMessageAlertSound");
+@property (nonatomic, assign) BOOL disableMessageAlertSound __deprecated_msg("Use RCKitConfigCenter.message.disableMessageAlertSound instead");
 
 /*!
  是否开启发送输入状态,默认值是 YES,开启之后在输入消息的时候对方可以看到正在输入的提示(目前只支持单聊)
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
-@property (nonatomic, assign) BOOL enableTypingStatus __deprecated_msg("已废弃,请使用 RCKitConfigCenter.message.enableTypingStatus");
+@property (nonatomic, assign) BOOL enableTypingStatus __deprecated_msg("Use RCKitConfigCenter.message.enableTypingStatus instead");
 
 /*!
  开启已读回执功能的会话类型,默认为 单聊、群聊和讨论组
@@ -47,7 +47,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, copy) NSArray *enabledReadReceiptConversationTypeList __deprecated_msg(
-   "已废弃,请使用 RCKitConfigCenter.message.enabledReadReceiptConversationTypeList,设置开启回执的会话类型。");
+   "Use RCKitConfigCenter.message.enabledReadReceiptConversationTypeList instead");
 
 /*!
  设置群组、讨论组发送已读回执请求的有效时间,单位是秒,默认值是 120s。
@@ -56,7 +56,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) NSUInteger maxReadRequestDuration __deprecated_msg(
-  "已废弃,请使用 RCKitConfigCenter.message.maxReadRequestDuration");
+  "Use RCKitConfigCenter.message.maxReadRequestDuration instead");
 
 /*!
  是否开启多端同步未读状态的功能,默认值是 YES
@@ -65,28 +65,28 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) BOOL enableSyncReadStatus __deprecated_msg(
- "已废弃,请使用 RCKitConfigCenter.message.enableSyncReadStatus");
+ "Use RCKitConfigCenter.message.enableSyncReadStatus instead");
 
 /*!
  是否开启消息@提醒功能(只支持群聊和讨论组, App需要实现群成员数据源groupMemberDataSource),默认值是 YES。
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) BOOL enableMessageMentioned __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.enableMessageMentioned");
+"Use RCKitConfigCenter.message.enableMessageMentioned instead");
 
 /*!
  是否开启消息撤回功能,默认值是 YES。
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) BOOL enableMessageRecall __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.enableMessageRecall");
+"Use RCKitConfigCenter.message.enableMessageRecall instead");
 
 /*!
  消息可撤回的最大时间,单位是秒,默认值是120s。
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) NSUInteger maxRecallDuration __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.maxRecallDuration");
+"Use RCKitConfigCenter.message.maxRecallDuration instead");
 
 /*!
  是否在会话页面和会话列表界面显示未注册的消息类型,默认值是 YES
@@ -99,7 +99,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) BOOL showUnkownMessage __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.showUnkownMessage");
+"Use RCKitConfigCenter.message.showUnkownMessage instead");
 
 /*!
  未注册的消息类型是否显示本地通知,默认值是NO
@@ -113,7 +113,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) BOOL showUnkownMessageNotificaiton __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.showUnkownMessageNotificaiton");
+"Use RCKitConfigCenter.message.showUnkownMessageNotificaiton instead");
 
 /*!
  语音消息的最大长度
@@ -122,7 +122,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) NSUInteger maxVoiceDuration __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.maxVoiceDuration");
+"Use RCKitConfigCenter.message.maxVoiceDuration instead");
 
 /*!
  APP是否独占音频
@@ -133,7 +133,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) BOOL isExclusiveSoundPlayer __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.isExclusiveSoundPlayer");
+"Use RCKitConfigCenter.message.isExclusiveSoundPlayer instead");
 
 /*!
  选择媒体资源时,是否包含视频文件,默认值是NO
@@ -142,21 +142,21 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) BOOL isMediaSelectorContainVideo __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.isMediaSelectorContainVideo");
+"Use RCKitConfigCenter.message.isMediaSelectorContainVideo instead");
 
 /**
  GIF 消息自动下载的大小 size, 单位 KB
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) NSInteger GIFMsgAutoDownloadSize __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.GIFMsgAutoDownloadSize");
+"Use RCKitConfigCenter.message.GIFMsgAutoDownloadSize instead");
 
 /*!
  是否开启合并转发功能,默认值是NO,开启之后可以合并转发消息(目前只支持单聊和群聊)
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) BOOL enableSendCombineMessage __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.enableSendCombineMessage");
+"Use RCKitConfigCenter.message.enableSendCombineMessage instead");
 
 /*!
  是否开启阅后即焚功能,默认值是NO,开启之后可以在聊天页面扩展板中使用阅后即焚功能(目前只支持单聊)
@@ -165,7 +165,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) BOOL enableDestructMessage __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.enableDestructMessage");
+"Use RCKitConfigCenter.message.enableDestructMessage instead");
 
 /*!
  消息撤回后可重新编辑的时间,单位是秒,默认值是 300s。
@@ -174,14 +174,14 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) NSUInteger reeditDuration __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.reeditDuration");
+"Use RCKitConfigCenter.message.reeditDuration instead");
 
 /*!
  是否支持消息引用功能,默认值是YES ,聊天页面长按消息支持引用(目前仅支持文本消息、文件消息、图文消息、图片消息、引用消息的引用)
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
 */
 @property (nonatomic, assign) BOOL enableMessageReference __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.enableMessageReference");
+"Use RCKitConfigCenter.message.enableMessageReference instead");
 
 /**
 小视频的最长录制时间,单位是秒,默认值是 10s。
@@ -190,18 +190,18 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) NSUInteger sightRecordMaxDuration __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.message.sightRecordMaxDuration");
+"Use RCKitConfigCenter.message.sightRecordMaxDuration instead");
 
 #pragma mark 头像显示
 
 /*!
  SDK中全局的导航按钮字体颜色
 
- @discussion 默认值为[UIColor whiteColor]
+ @discussion 默认值为[UIColor blackColor]
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, strong) UIColor *globalNavigationBarTintColor __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.ui.globalNavigationBarTintColor");
+"Use RCKitConfigCenter.ui.globalNavigationBarTintColor instead");
 
 /*!
  SDK会话列表界面中显示的头像形状,矩形或者圆形
@@ -210,7 +210,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) RCUserAvatarStyle globalConversationAvatarStyle __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.ui.globalConversationAvatarStyle");
+"Use RCKitConfigCenter.ui.globalConversationAvatarStyle instead");
 
 /*!
  SDK会话列表界面中显示的头像大小,高度必须大于或者等于36
@@ -219,7 +219,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) CGSize globalConversationPortraitSize __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.ui.globalConversationPortraitSize");
+"Use RCKitConfigCenter.ui.globalConversationPortraitSize instead");
 
 /*!
  SDK会话页面中显示的头像形状,矩形或者圆形
@@ -228,7 +228,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) RCUserAvatarStyle globalMessageAvatarStyle __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.ui.globalMessageAvatarStyle");
+"Use RCKitConfigCenter.ui.globalMessageAvatarStyle instead");
 
 /*!
  SDK会话页面中显示的头像大小
@@ -237,7 +237,7 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) CGSize globalMessagePortraitSize __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.ui.globalMessagePortraitSize");
+"Use RCKitConfigCenter.ui.globalMessagePortraitSize instead");
 
 /*!
  SDK会话列表界面和会话页面的头像的圆角曲率半径
@@ -247,12 +247,12 @@
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
  */
 @property (nonatomic, assign) CGFloat portraitImageViewCornerRadius __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.ui.portraitImageViewCornerRadius");
+"Use RCKitConfigCenter.ui.portraitImageViewCornerRadius instead");
 
 /*!
 是否支持暗黑模式,默认值是NO,开启之后 UI 支持暗黑模式,可以跟随系统切换
  @discussion swift 如果调用宏定义 RCKitConfigCenter 报错,替换为 RCKitConfig 的单例构造方法
 */
 @property (nonatomic, assign) BOOL enableDarkMode __deprecated_msg(
-"已废弃,请使用 RCKitConfigCenter.ui.enableDarkMode");
+"Use RCKitConfigCenter.ui.enableDarkMode instead");
 @end

+ 8 - 8
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/Headers/RCIM.h

@@ -289,7 +289,7 @@ FOUNDATION_EXPORT NSString *const RCKitDispatchConversationStatusChangeNotificat
 
  @discussion 被撤回的消息会变更为RCRecallNotificationMessage,App需要在UI上刷新这条消息。
  */
-- (void)onRCIMMessageRecalled:(long)messageId __deprecated_msg("已废弃,请使用 RCIM 的 messageDidRecall");
+- (void)onRCIMMessageRecalled:(long)messageId __deprecated_msg("Use  messageDidRecall on RCIM instead");
 
 /*!
  消息被撤回的回调方法
@@ -803,7 +803,7 @@ FOUNDATION_EXPORT NSString *const RCKitDispatchConversationStatusChangeNotificat
 - (void)createDiscussion:(NSString *)name
               userIdList:(NSArray *)userIdList
                  success:(void (^)(RCDiscussion *discussion))successBlock
-                   error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                   error:(void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  讨论组加人,将用户加入讨论组
@@ -818,7 +818,7 @@ FOUNDATION_EXPORT NSString *const RCKitDispatchConversationStatusChangeNotificat
 - (void)addMemberToDiscussion:(NSString *)discussionId
                    userIdList:(NSArray *)userIdList
                       success:(void (^)(RCDiscussion *discussion))successBlock
-                        error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                        error:(void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  讨论组踢人,将用户移出讨论组
@@ -836,7 +836,7 @@ FOUNDATION_EXPORT NSString *const RCKitDispatchConversationStatusChangeNotificat
 - (void)removeMemberFromDiscussion:(NSString *)discussionId
                             userId:(NSString *)userId
                            success:(void (^)(RCDiscussion *discussion))successBlock
-                             error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                             error:(void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  退出当前讨论组
@@ -847,7 +847,7 @@ FOUNDATION_EXPORT NSString *const RCKitDispatchConversationStatusChangeNotificat
  */
 - (void)quitDiscussion:(NSString *)discussionId
                success:(void (^)(RCDiscussion *discussion))successBlock
-                 error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                 error:(void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  获取讨论组的信息
@@ -858,7 +858,7 @@ FOUNDATION_EXPORT NSString *const RCKitDispatchConversationStatusChangeNotificat
  */
 - (void)getDiscussion:(NSString *)discussionId
               success:(void (^)(RCDiscussion *discussion))successBlock
-                error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                error:(void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  设置讨论组名称
@@ -873,7 +873,7 @@ FOUNDATION_EXPORT NSString *const RCKitDispatchConversationStatusChangeNotificat
 - (void)setDiscussionName:(NSString *)discussionId
                      name:(NSString *)discussionName
                   success:(void (^)(void))successBlock
-                    error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                    error:(void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 /*!
  设置讨论组是否开放加人权限
@@ -889,7 +889,7 @@ FOUNDATION_EXPORT NSString *const RCKitDispatchConversationStatusChangeNotificat
 - (void)setDiscussionInviteStatus:(NSString *)discussionId
                            isOpen:(BOOL)isOpen
                           success:(void (^)(void))successBlock
-                            error:(void (^)(RCErrorCode status))errorBlock __deprecated_msg("已废弃,请勿使用。");
+                            error:(void (^)(RCErrorCode status))errorBlock __attribute__((deprecated));
 
 #pragma mark - 用户信息、群组信息相关
 

+ 1 - 1
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/Headers/RCKitUIConf.h

@@ -15,7 +15,7 @@
 /*!
  SDK中全局的导航按钮字体颜色
 
- @discussion 默认值为[UIColor whiteColor]
+ @discussion 默认值为[UIColor blackColor]
  */
 @property (nonatomic, strong) UIColor *globalNavigationBarTintColor;
 

+ 3 - 0
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/Headers/RongIMKit.h

@@ -48,6 +48,7 @@
 #import <RongIMKit/RCReferencingView.h>
 #import <RongIMKit/RCMessageCellTool.h>
 #import <RongIMKit/RCHQVoiceMessageCell.h>
+#import <RongIMKit/RCComplexTextMessageCell.h>
 
 /// 工具类
 #import <RongIMKit/RCKitUtility.h>
@@ -110,6 +111,8 @@
 #import "RCReferencingView.h"
 #import "RCMessageCellTool.h"
 #import "RCHQVoiceMessageCell.h"
+#import "RCComplexTextMessageCell.h"
+
 
 /// 工具类
 #import "RCKitUtility.h"

BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/Info.plist


BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/RongIMKit


+ 37 - 22
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMKit.xcframework/ios-i386_x86_64-simulator/RongIMKit.framework/_CodeSignature/CodeResources

@@ -30,7 +30,11 @@
 		</data>
 		<key>Headers/RCChatSessionInputBarControl.h</key>
 		<data>
-		ONwkPZ5QUnDPM8vNV/zRoMADr1s=
+		DkmEa3lR09MsOHqi13Nha563dUQ=
+		</data>
+		<key>Headers/RCComplexTextMessageCell.h</key>
+		<data>
+		0rJhis1pWQ4Fn4sTJn55wGDEOks=
 		</data>
 		<key>Headers/RCContentView.h</key>
 		<data>
@@ -54,7 +58,7 @@
 		</data>
 		<key>Headers/RCConversationModel.h</key>
 		<data>
-		H6OM6XbFI7fU0O1DSZ7mNDIQELc=
+		SqE4WoQkGpIFXzIgvPSoCtjdBSI=
 		</data>
 		<key>Headers/RCConversationStatusView.h</key>
 		<data>
@@ -62,7 +66,7 @@
 		</data>
 		<key>Headers/RCConversationViewController.h</key>
 		<data>
-		bgnzdhnDELRkzP7/YnckS/JfqEY=
+		qGVOQ4BMbuEkDbLx87v/EAJk4HM=
 		</data>
 		<key>Headers/RCEmojiBoardView.h</key>
 		<data>
@@ -106,11 +110,11 @@
 		</data>
 		<key>Headers/RCIM+Deprecated.h</key>
 		<data>
-		krlIui5aUa4WyawRSq1mUSveZ4g=
+		ipPXic/+LaWjogvJXBw3Mm+5mU0=
 		</data>
 		<key>Headers/RCIM.h</key>
 		<data>
-		4x4n1A6k+0AwwloGLvl5jC4DeDg=
+		c96JpR1b2aes3WvdgptJOaYA5xY=
 		</data>
 		<key>Headers/RCImageMessageCell.h</key>
 		<data>
@@ -150,7 +154,7 @@
 		</data>
 		<key>Headers/RCKitUIConf.h</key>
 		<data>
-		p2HF3V5eQYNSG1ElS38fvsz4DAs=
+		qp6uQvPofNNZR+wBsdYr804AaH8=
 		</data>
 		<key>Headers/RCKitUtility.h</key>
 		<data>
@@ -254,7 +258,7 @@
 		</data>
 		<key>Headers/RongIMKit.h</key>
 		<data>
-		P0cOY6HNRicJhYX6JicEpd889sQ=
+		9XqFDUhAT33uLEMPYSwBoECU7Wg=
 		</data>
 		<key>Headers/RongIMKitExtensionModule.h</key>
 		<data>
@@ -262,7 +266,7 @@
 		</data>
 		<key>Info.plist</key>
 		<data>
-		QmUCgKMMK1bHsZQJY7AO1ZSrj8U=
+		jp9saJFK/E9N4zBBxq/jOdy3wlg=
 		</data>
 		<key>Modules/module.modulemap</key>
 		<data>
@@ -341,11 +345,22 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			ONwkPZ5QUnDPM8vNV/zRoMADr1s=
+			DkmEa3lR09MsOHqi13Nha563dUQ=
+			</data>
+			<key>hash2</key>
+			<data>
+			M5S9qUIjV16y2JwOXc+ZN+lS/p3Pd6pf0YEaZL6OZSc=
+			</data>
+		</dict>
+		<key>Headers/RCComplexTextMessageCell.h</key>
+		<dict>
+			<key>hash</key>
+			<data>
+			0rJhis1pWQ4Fn4sTJn55wGDEOks=
 			</data>
 			<key>hash2</key>
 			<data>
-			CeGwo6+b/LT9xpBoFFRh2Aup6OTvgRGGPSXpIK2zknU=
+			Bd5AN8OdeB2ivh06nWBJvIeJ0MHCMk1qLpyO3evvmG0=
 			</data>
 		</dict>
 		<key>Headers/RCContentView.h</key>
@@ -407,11 +422,11 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			H6OM6XbFI7fU0O1DSZ7mNDIQELc=
+			SqE4WoQkGpIFXzIgvPSoCtjdBSI=
 			</data>
 			<key>hash2</key>
 			<data>
-			m7z0F9JNnzvhcprLrlsb0grjKUeXa6I58IMTr3GV7Ew=
+			S+wDE5EMiN/WjZ9J7InfuvP7LJuFAxBZlBCpgKSmC7s=
 			</data>
 		</dict>
 		<key>Headers/RCConversationStatusView.h</key>
@@ -429,11 +444,11 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			bgnzdhnDELRkzP7/YnckS/JfqEY=
+			qGVOQ4BMbuEkDbLx87v/EAJk4HM=
 			</data>
 			<key>hash2</key>
 			<data>
-			1ztT0zDs/YaqyRAhRA1qvUNhz9DgKoVHhFjufq7jFgA=
+			P+/GQ6sD7hWxB83M7u8kXvP/dVWfyhwPuBM6CdNg044=
 			</data>
 		</dict>
 		<key>Headers/RCEmojiBoardView.h</key>
@@ -550,22 +565,22 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			krlIui5aUa4WyawRSq1mUSveZ4g=
+			ipPXic/+LaWjogvJXBw3Mm+5mU0=
 			</data>
 			<key>hash2</key>
 			<data>
-			l3uKeyn0SHhLgP5PCftr7szJWexXrFtPh7V7LeDWIVw=
+			NXZuCPUe+HsYbEI7zsaPg4GO7ejBaIxo7b9aj3DdPGc=
 			</data>
 		</dict>
 		<key>Headers/RCIM.h</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			4x4n1A6k+0AwwloGLvl5jC4DeDg=
+			c96JpR1b2aes3WvdgptJOaYA5xY=
 			</data>
 			<key>hash2</key>
 			<data>
-			DYBzRxHZ/0TJGqKq/WVaKrYmvpuax4SPGlUHSD/0heU=
+			2ALGBrCGQjKhC+SmClhrVOn6RpogR40hjwHuAfw3gTM=
 			</data>
 		</dict>
 		<key>Headers/RCImageMessageCell.h</key>
@@ -671,11 +686,11 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			p2HF3V5eQYNSG1ElS38fvsz4DAs=
+			qp6uQvPofNNZR+wBsdYr804AaH8=
 			</data>
 			<key>hash2</key>
 			<data>
-			OTTLEgQPnKCmXN2DVUFhSmk6eiZ0nhvq5U1teX+D5F4=
+			0zmNodTl6aiR+I1yHq3j/zX7rXJdct1jYpOVO9SqzeY=
 			</data>
 		</dict>
 		<key>Headers/RCKitUtility.h</key>
@@ -957,11 +972,11 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			P0cOY6HNRicJhYX6JicEpd889sQ=
+			9XqFDUhAT33uLEMPYSwBoECU7Wg=
 			</data>
 			<key>hash2</key>
 			<data>
-			SERonG6YXAbN7pW//eWm0+6VHDsdfa5e7tHBU4ajero=
+			pX59eQrE25qxVMGohSi4QaPX0Vpzp8NFhD6StLBm0/g=
 			</data>
 		</dict>
 		<key>Headers/RongIMKitExtensionModule.h</key>

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 232 - 183
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-arm64_armv7/RongIMLib.framework/Headers/RCIMClient.h


+ 0 - 1
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-arm64_armv7/RongIMLib.framework/Headers/RongIMLibHeader.h

@@ -14,6 +14,5 @@
 #import <RongDiscussion/RongDiscussion.h>
 #import <RongPublicService/RongPublicService.h>
 #import <RongCustomerService/RongCustomerService.h>
-#import <RongLocation/RongLocation.h>
 
 #endif /* RongIMLibHeader_h */

BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-arm64_armv7/RongIMLib.framework/Info.plist


BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-arm64_armv7/RongIMLib.framework/RongIMLib


+ 7 - 7
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-arm64_armv7/RongIMLib.framework/_CodeSignature/CodeResources

@@ -6,7 +6,7 @@
 	<dict>
 		<key>Headers/RCIMClient.h</key>
 		<data>
-		+CE6yBTweXygS+PCPaWpj8I6BHc=
+		a5DwyWM8vft+lPBFlzl/JERh9ro=
 		</data>
 		<key>Headers/RongIMLib.h</key>
 		<data>
@@ -14,11 +14,11 @@
 		</data>
 		<key>Headers/RongIMLibHeader.h</key>
 		<data>
-		ZAcU3HutLbon2TalM+InNpP/Dzo=
+		K3VY4dj49D9fWYiX13o+U4wVSIs=
 		</data>
 		<key>Info.plist</key>
 		<data>
-		caxooRWY/ovMA5ujUoBlPhywdlI=
+		aKbuZwCP38iY2ry0RZpAMeLH8OM=
 		</data>
 		<key>Modules/module.modulemap</key>
 		<data>
@@ -31,11 +31,11 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			+CE6yBTweXygS+PCPaWpj8I6BHc=
+			a5DwyWM8vft+lPBFlzl/JERh9ro=
 			</data>
 			<key>hash2</key>
 			<data>
-			5YGTtLa+BwwwEorI5kJO2Un4M++llw5Kf0XlP+5OFsM=
+			yVUxaMhKYelzzNUvRGIc75PWaDNLj6MkVCaw3AaWmUY=
 			</data>
 		</dict>
 		<key>Headers/RongIMLib.h</key>
@@ -53,11 +53,11 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			ZAcU3HutLbon2TalM+InNpP/Dzo=
+			K3VY4dj49D9fWYiX13o+U4wVSIs=
 			</data>
 			<key>hash2</key>
 			<data>
-			6GXAPieUqTktH4lxtZL7VyN66ibmMRAM02Jeh+d4Pd0=
+			g741YjSFJIleQqjIfRkv2SNpzqOtwPChH362fYfNSb4=
 			</data>
 		</dict>
 		<key>Modules/module.modulemap</key>

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 232 - 183
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-i386_x86_64-simulator/RongIMLib.framework/Headers/RCIMClient.h


+ 0 - 1
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-i386_x86_64-simulator/RongIMLib.framework/Headers/RongIMLibHeader.h

@@ -14,6 +14,5 @@
 #import <RongDiscussion/RongDiscussion.h>
 #import <RongPublicService/RongPublicService.h>
 #import <RongCustomerService/RongCustomerService.h>
-#import <RongLocation/RongLocation.h>
 
 #endif /* RongIMLibHeader_h */

BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-i386_x86_64-simulator/RongIMLib.framework/Info.plist


BIN=BIN
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-i386_x86_64-simulator/RongIMLib.framework/RongIMLib


+ 7 - 7
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLib.xcframework/ios-i386_x86_64-simulator/RongIMLib.framework/_CodeSignature/CodeResources

@@ -6,7 +6,7 @@
 	<dict>
 		<key>Headers/RCIMClient.h</key>
 		<data>
-		+CE6yBTweXygS+PCPaWpj8I6BHc=
+		a5DwyWM8vft+lPBFlzl/JERh9ro=
 		</data>
 		<key>Headers/RongIMLib.h</key>
 		<data>
@@ -14,11 +14,11 @@
 		</data>
 		<key>Headers/RongIMLibHeader.h</key>
 		<data>
-		ZAcU3HutLbon2TalM+InNpP/Dzo=
+		K3VY4dj49D9fWYiX13o+U4wVSIs=
 		</data>
 		<key>Info.plist</key>
 		<data>
-		5wsJI7jNwBw4AAhTrw+XMRxMY9Q=
+		0rTB3p7hVsQrZIy7YkC2ONqoOTs=
 		</data>
 		<key>Modules/module.modulemap</key>
 		<data>
@@ -31,11 +31,11 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			+CE6yBTweXygS+PCPaWpj8I6BHc=
+			a5DwyWM8vft+lPBFlzl/JERh9ro=
 			</data>
 			<key>hash2</key>
 			<data>
-			5YGTtLa+BwwwEorI5kJO2Un4M++llw5Kf0XlP+5OFsM=
+			yVUxaMhKYelzzNUvRGIc75PWaDNLj6MkVCaw3AaWmUY=
 			</data>
 		</dict>
 		<key>Headers/RongIMLib.h</key>
@@ -53,11 +53,11 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			ZAcU3HutLbon2TalM+InNpP/Dzo=
+			K3VY4dj49D9fWYiX13o+U4wVSIs=
 			</data>
 			<key>hash2</key>
 			<data>
-			6GXAPieUqTktH4lxtZL7VyN66ibmMRAM02Jeh+d4Pd0=
+			g741YjSFJIleQqjIfRkv2SNpzqOtwPChH362fYfNSb4=
 			</data>
 		</dict>
 		<key>Modules/module.modulemap</key>

+ 8 - 8
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/Info.plist

@@ -6,31 +6,31 @@
 	<array>
 		<dict>
 			<key>LibraryIdentifier</key>
-			<string>ios-arm64_armv7</string>
+			<string>ios-i386_x86_64-simulator</string>
 			<key>LibraryPath</key>
 			<string>RongIMLibCore.framework</string>
 			<key>SupportedArchitectures</key>
 			<array>
-				<string>arm64</string>
-				<string>armv7</string>
+				<string>i386</string>
+				<string>x86_64</string>
 			</array>
 			<key>SupportedPlatform</key>
 			<string>ios</string>
+			<key>SupportedPlatformVariant</key>
+			<string>simulator</string>
 		</dict>
 		<dict>
 			<key>LibraryIdentifier</key>
-			<string>ios-i386_x86_64-simulator</string>
+			<string>ios-arm64_armv7</string>
 			<key>LibraryPath</key>
 			<string>RongIMLibCore.framework</string>
 			<key>SupportedArchitectures</key>
 			<array>
-				<string>i386</string>
-				<string>x86_64</string>
+				<string>arm64</string>
+				<string>armv7</string>
 			</array>
 			<key>SupportedPlatform</key>
 			<string>ios</string>
-			<key>SupportedPlatformVariant</key>
-			<string>simulator</string>
 		</dict>
 	</array>
 	<key>CFBundlePackageType</key>

+ 5 - 3
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCAMRDataConverter.h

@@ -20,6 +20,7 @@
 #include <stdlib.h>
 #include <string.h>
 
+NS_ASSUME_NONNULL_BEGIN
 /*!
  AMR 格式与 WAV 格式音频转换工具类
  */
@@ -38,7 +39,7 @@
  @param data    AMR 格式的音频数据,可以是 AMR-NB 或者 AMR-WB 格式
  @return        WAV 格式的音频数据
  */
-- (NSData *)decodeAMRToWAVE:(NSData *)data;
+- (nullable NSData *)decodeAMRToWAVE:(NSData *)data;
 
 /*!
  将 AMR 格式的音频数据转化为 WAV 格式的音频数据
@@ -46,7 +47,7 @@
  @param data    AMR格式的音频数据,必须是 AMR-NB 的格式
  @return        WAV格式的音频数据
  */
-- (NSData *)decodeAMRToWAVEWithoutHeader:(NSData *)data;
+- (nullable NSData *)decodeAMRToWAVEWithoutHeader:(NSData *)data;
 
 /*!
  将 WAV 格式的音频数据转化为 AMR 格式的音频数据(8KHz/16KHz 采样)
@@ -55,8 +56,9 @@
  @return                AMR-NB/AMR-WB 格式的音频数据
  @discussion 如果采样率为 8KHz 则返回 AMR-NB 格式数据,如果采样率为 16KHz 则返回 AMR-WB 格式数据。
  */
-- (NSData *)encodeWAVEToAMR:(NSData *)data;
+- (nullable NSData *)encodeWAVEToAMR:(NSData *)data;
 
 @end
 
+SEC_ASSUME_NONNULL_END
 #endif

+ 34 - 27
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCAndroidConfig.h

@@ -35,64 +35,71 @@ FOUNDATION_EXPORT RCImportanceHw const RCImportanceHwLow;
  */
 @property (nonatomic, copy) NSString *notificationId;
 
+#pragma mark - 小米
+
 /*!
  小米的渠道 ID
  该条消息针对小米使用的推送渠道,如开发者集成了小米推送,需要指定 channelId 时,可向 Android 端研发人员获取,channelId 由开发者自行创建。
  */
-@property (nonatomic, copy) NSString *channelIdMi;
+@property (nonatomic, copy, nullable) NSString *channelIdMi;
 
 /*!
- 华为的渠道 ID
- 该条消息针对华为使用的推送渠道,如开发者集成了华为推送,需要指定 channelId 时,可向 Android 端研发人员获取,channelId 由开发者自行创建
+ 小米 Large icon 链接
+ Large icon 可以出现在大图版和多字版消息中,显示在右边。国内版仅 MIUI12 以上版本支持,以下版本均不支持;国际版支持。图片要求:大小 120 * 120px,格式为 png 或者 jpg 格式
  */
-@property (nonatomic, copy) NSString *channelIdHW;
+@property (nonatomic, copy, nullable) NSString *miLargeIconUrl;
 
+#pragma mark - 华为
 /*!
- OPPO 的渠道 ID
- 该条消息针对 OPPO 使用的推送渠道,如开发者集成了 OPPO 推送,需要指定 channelId 时,可向 Android 端研发人员获取,channelId 由开发者自行创建。
+ 华为的渠道 ID
+ 该条消息针对华为使用的推送渠道,如开发者集成了华为推送,需要指定 channelId 时,可向 Android 端研发人员获取,channelId 由开发者自行创建。
  */
-@property (nonatomic, copy) NSString *channelIdOPPO;
+@property (nonatomic, copy, nullable) NSString *channelIdHW;
 
 /*!
- VIVO 推送通道类型
- 开发者集成了 VIVO 推送,需要指定推送类型时,可进行设置。
- 目前可选值 "0"(运营消息) 和  "1"(系统消息)
+ 华为推送消息级别
  */
-@property (nonatomic, copy) NSString *typeVivo;
+@property (nonatomic, copy, nullable) RCImportanceHw importanceHW;
 
 /*!
- FCM 通知类型推送时所使用的分组 id
+ 华为通知栏消息右侧大图标 URL
+ 如果不设置,则不展示通知栏右侧图标。URL使用的协议必须是HTTPS协议,取值样例:https://example.com/image.png。
+ 图标文件须小于 512KB,图标建议规格大小:40dp x 40dp,弧角大小为 8dp,超出建议规格大小的图标会存在图片压缩或显示不全的情况。
  */
-@property (nonatomic, copy) NSString *fcmCollapseKey;
+@property (nonatomic, copy, nullable) NSString *hwImageUrl;
 
+#pragma mark - OPPO
 /*!
- FCM 通知类型的推送所使用的通知图片 url
+ OPPO 的渠道 ID
+ 该条消息针对 OPPO 使用的推送渠道,如开发者集成了 OPPO 推送,需要指定 channelId 时,可向 Android 端研发人员获取,channelId 由开发者自行创建。
  */
-@property (nonatomic, copy) NSString *fcmImageUrl;
+@property (nonatomic, copy, nullable) NSString *channelIdOPPO;
+
 
+#pragma mark - VIVO
 /*!
- 华为推送消息级别
+ VIVO 推送通道类型
+ 开发者集成了 VIVO 推送,需要指定推送类型时,可进行设置。
+ 目前可选值 "0"(运营消息) 和  "1"(系统消息)
  */
-@property (nonatomic, copy) RCImportanceHw importanceHW;
+@property (nonatomic, copy, nullable) NSString *typeVivo;
 
+#pragma mark - FCM
 /*!
- 华为通知栏消息右侧大图标 URL
- 如果不设置,则不展示通知栏右侧图标。URL使用的协议必须是HTTPS协议,取值样例:https://example.com/image.png。
- 图标文件须小于 512KB,图标建议规格大小:40dp x 40dp,弧角大小为 8dp,超出建议规格大小的图标会存在图片压缩或显示不全的情况。
+ FCM 通知的频道 ID
+ 该应用程序必须使用此频道 ID 创建一个频道,然后才能收到带有该频道 ID 的任何通知。如果您未在请求中发送此频道 ID,或者如果应用尚未创建提供的频道 ID,则 FCM 使用应用清单中指定的频道 ID。
  */
-@property (nonatomic, copy) NSString *hwImageUrl;
+@property (nonatomic, copy, nullable) NSString *fcmChannelId;
 
 /*!
- 小米 Large icon 链接
- Large icon 可以出现在大图版和多字版消息中,显示在右边。国内版仅 MIUI12 以上版本支持,以下版本均不支持;国际版支持。图片要求:大小 120 * 120px,格式为 png 或者 jpg 格式。
+ FCM 通知类型推送时所使用的分组 id
  */
-@property (nonatomic, copy) NSString *miLargeIconUrl;
+@property (nonatomic, copy, nullable) NSString *fcmCollapseKey;
 
 /*!
- FCM 通知的频道 ID
- 该应用程序必须使用此频道 ID 创建一个频道,然后才能收到带有该频道 ID 的任何通知。如果您未在请求中发送此频道 ID,或者如果应用尚未创建提供的频道 ID,则 FCM 使用应用清单中指定的频道 ID。
+ FCM 通知类型的推送所使用的通知图片 url
  */
-@property (nonatomic, copy) NSString *fcmChannelId;
+@property (nonatomic, copy, nullable) NSString *fcmImageUrl;
 
 @end
 

+ 20 - 2
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCBlockedMessageInfo.h

@@ -26,7 +26,7 @@ NS_ASSUME_NONNULL_BEGIN
 /**
  *  频道 ID
  */
-@property (nonatomic, copy) NSString *channelId;
+@property (nonatomic, copy, nullable) NSString *channelId;
 
 /**
  *  被拦截的消息 UID
@@ -44,7 +44,25 @@ NS_ASSUME_NONNULL_BEGIN
 /**
  *  附加信息
  */
-@property (nonatomic, copy) NSString *extra;
+@property (nonatomic, copy, nullable) NSString *extra;
+
+/*!
+ 消息的发送时间(Unix 时间戳、毫秒)
+ */
+@property (nonatomic, assign) long long sentTime;
+
+/**
+ *  消息源触发类型。0默认,原始消息;1消息扩展;2消息修改
+ */
+@property (nonatomic, assign) NSInteger sourceType;
+
+/**
+ *  源内容 Json 字符串。sourceType 为 1、2 时返回;1扩展内容,2消息内容
+ *  sourceType 为 0,sourceContent 内容为 nil
+ *  sourceType 为 1,sourceContent 是扩展内容,示例 {"mid":"xxx-xxx-xxx-xxx","put":{"key":"敏感词"}}
+ *  sourceType 为 2,sourceContent 是消息修改后内容,示例 {"content":"敏感词"}
+ */
+@property (nonatomic, copy) NSString *sourceContent;
 
 /*!
  RCBlockedMessageInfo 初始化方法

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 203 - 178
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCChannelClient.h


+ 5 - 2
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCCommandMessage.h

@@ -12,6 +12,7 @@
  */
 #define RCCommandMessageIdentifier @"RC:CmdMsg"
 
+NS_ASSUME_NONNULL_BEGIN
 /*!
  命令消息类
 
@@ -32,7 +33,7 @@
 
  @discussion 命令的扩展数据,可以为任意字符串,如存放您定义的json数据。
  */
-@property (nonatomic, copy) NSString *data;
+@property (nonatomic, copy, nullable) NSString *data;
 
 /*!
  初始化命令消息
@@ -41,6 +42,8 @@
  @param data    命令的扩展数据
  @return        命令消息对象
  */
-+ (instancetype)messageWithName:(NSString *)name data:(NSString *)data;
++ (instancetype)messageWithName:(NSString *)name data:(nullable NSString *)data;
 
 @end
+
+NS_ASSUME_NONNULL_END

+ 5 - 2
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCCommandNotificationMessage.h

@@ -17,6 +17,7 @@
  */
 #define RCCommandNotificationMessageIdentifier @"RC:CmdNtf"
 
+NS_ASSUME_NONNULL_BEGIN
 /*!
  命令提醒消息类
 
@@ -37,7 +38,7 @@
 
  @discussion 命令提醒消息的扩展数据,可以为任意字符串,如存放您定义的 json 数据。
  */
-@property (nonatomic, copy) NSString *data;
+@property (nonatomic, copy, nullable) NSString *data;
 
 /*!
  初始化命令提醒消息
@@ -46,6 +47,8 @@
  @param data    命令的扩展数据
  @return        命令提醒消息对象
  */
-+ (instancetype)notificationWithName:(NSString *)name data:(NSString *)data;
++ (instancetype)notificationWithName:(NSString *)name data:(nullable NSString *)data;
 
 @end
+
+NS_ASSUME_NONNULL_END

+ 4 - 1
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCContactNotificationMessage.h

@@ -32,6 +32,7 @@
  */
 #define ContactNotificationMessage_ContactOperationRejectResponse @"RejectResponse"
 
+NS_ASSUME_NONNULL_BEGIN
 /*!
  好友请求消息类
 
@@ -84,6 +85,8 @@
                              sourceUserId:(NSString *)sourceUserId
                              targetUserId:(NSString *)targetUserId
                                   message:(NSString *)message
-                                    extra:(NSString *)extra;
+                                    extra:(nullable NSString *)extra;
 
 @end
+
+NS_ASSUME_NONNULL_END

+ 31 - 12
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCConversation.h

@@ -13,6 +13,8 @@
 #import "RCMessageContent.h"
 #import <Foundation/Foundation.h>
 
+NS_ASSUME_NONNULL_BEGIN
+
 @class RCReadReceiptInfo, RCGroupReadReceiptInfoV2, RCMessageConfig;
 /*!
  会话类
@@ -34,12 +36,12 @@
 /*!
  该会话的业务标识,长度限制 20 字符
  */
-@property (nonatomic, copy) NSString *channelId;
+@property (nonatomic, copy, nullable) NSString *channelId;
 
 /*!
  会话的标题
  */
-@property (nonatomic, copy) NSString *conversationTitle;
+@property (nonatomic, copy, nullable) NSString *conversationTitle;
 
 /*!
  会话中的未读消息数量
@@ -77,17 +79,17 @@
 /*!
  会话中存在的草稿
  */
-@property (nonatomic, copy) NSString *draft;
+@property (nonatomic, copy, nullable) NSString *draft;
 
 /*!
  会话中最后一条消息的类型名
  */
-@property (nonatomic, copy) NSString *objectName;
+@property (nonatomic, copy, nullable) NSString *objectName;
 
 /*!
  会话中最后一条消息的发送者用户 ID
  */
-@property (nonatomic, copy) NSString *senderUserId;
+@property (nonatomic, copy, nullable) NSString *senderUserId;
 
 /*!
  会话中最后一条消息的消息 ID
@@ -97,7 +99,7 @@
 /*!
  会话中最后一条消息的内容
  */
-@property (nonatomic, strong) RCMessageContent *lastestMessage;
+@property (nonatomic, strong, nullable) RCMessageContent *lastestMessage;
 
 /*!
  会话中最后一条消息的方向
@@ -110,14 +112,14 @@
  @discussion 此字段存放最后一条消息内容中未编码的 json 数据。
  SDK 内置的消息,如果消息解码失败,默认会将消息的内容存放到此字段;如果编码和解码正常,此字段会置为 nil。
  */
-@property (nonatomic, strong) NSDictionary *jsonDict;
+@property (nonatomic, strong, nullable) NSDictionary *jsonDict;
 
 /*!
  最后一条消息的全局唯一 ID
 
  @discussion 服务器消息唯一 ID(在同一个Appkey下全局唯一)
  */
-@property (nonatomic, copy) NSString *lastestMessageUId;
+@property (nonatomic, copy, nullable) NSString *lastestMessageUId;
 
 /*!
  会话中是否存在被 @ 的消息
@@ -141,19 +143,19 @@
 /*!
  最后一条消息的阅读回执状态
  */
-@property (nonatomic, strong) RCReadReceiptInfo *latestMessageReadReceiptInfo;
+@property (nonatomic, strong, nullable) RCReadReceiptInfo *latestMessageReadReceiptInfo;
 
 /*!
  最后一条消息的群阅读回执状态
  @discussion 如果是调用 RCGroupReadReceiptV2Manager 中方法实现群已读回执功能,此参数才有效,否则请使用 readReceiptInfo 属性获取阅读回执状态
  @discussion 如果使用 IMKit,请用 readReceiptInfo 属性
  */
-@property (nonatomic, strong) RCGroupReadReceiptInfoV2 *latestMessageGroupReadReceiptInfoV2;
+@property (nonatomic, strong, nullable) RCGroupReadReceiptInfoV2 *latestMessageGroupReadReceiptInfoV2;
 
 /*!
  最后一条消息的消息配置
  */
-@property (nonatomic, strong) RCMessageConfig *latestMessageMessageConfig;
+@property (nonatomic, strong, nullable) RCMessageConfig *latestMessageMessageConfig;
 
 /*!
  最后一条消息是否可以包含扩展信息
@@ -169,10 +171,27 @@
  @discussion 扩展信息只支持单聊和群组,其它会话类型不能设置扩展信息
  @discussion 默认消息扩展字典 key 长度不超过 32 ,value 长度不超过 4096 ,单次设置扩展数量最大为 20,消息的扩展总数不能超过 300
 */
-@property (nonatomic, strong) NSDictionary<NSString *, NSString *> *latestMessageExpansion;
+@property (nonatomic, strong, nullable) NSDictionary<NSString *, NSString *> *latestMessageExpansion;
 
 /*!
  免打扰级别
  */
 @property (nonatomic, assign) RCPushNotificationLevel notificationLevel;
+
+/*!
+ 超级群频道类型,只有 ConversationType 为超级群时该字段有效, 非超级群时为0
+ */
+@property (nonatomic, assign)  RCUltraGroupChannelType channelType;
+
+/*!
+会话中第一条未读消息时间戳(Unix时间戳、毫秒)
+
+仅支持 超级群会话
+ @Since 5.2.5
+*/
+@property (nonatomic, assign) long long firstUnreadMsgSendTime;
+
+
 @end
+
+NS_ASSUME_NONNULL_END

+ 61 - 1
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCConversationChannelProtocol.h

@@ -8,6 +8,12 @@
 
 #ifndef RCConversationChannelProtocol_h
 #define RCConversationChannelProtocol_h
+
+#import <RongIMLibCore/RCUltraGroupChannelChangeInfo.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class RCUserTypingStatus;
 @protocol RCConversationChannelMessageReceiptDelegate <NSObject>
 @optional
 /*!
@@ -56,7 +62,7 @@
 - (void)onTypingStatusChanged:(RCConversationType)conversationType
                      targetId:(NSString *)targetId
                     channelId:(NSString *)channelId
-                       status:(NSArray *)userTypingStatusList;
+                       status:(nullable NSArray<RCUserTypingStatus *> *)userTypingStatusList;
 @end
 
 #pragma mark - 超级群会话代理
@@ -66,4 +72,58 @@
 //超级群会话列表与会话最后一条消息同步完成
 - (void)ultraGroupConversationListDidSync;
 @end
+
+@protocol RCUltraGroupChannelDelegate <NSObject>
+
+/*!
+ 超级群类型变更通知
+ 1. 公有频道变私有频道时,公有频道所有用户会收到该通知
+   a. 在私有频道白名单内的用户,收到的变更类型是 PublicToPrivate(公有频道变私有频道前,可以提前将用户加入私有频道白名单)
+   b. 不在私有频道白名单的其他用户,变更类型为 PublicToPrivateUserNotIn
+
+ 2. 私有频道变公有频道时,私有频道白名单中的用户收到通知,变更类型为 PrivateToPublic
+
+ @param infoList        频道变更信息
+ @discussion
+ 当客户端收到频道变更时,会回调此接口,通知发生变化的会话频道列表。
+ 该功能仅支持超级群。
+ */
+- (void)ultraGroupChannelTypeDidChanged:(NSArray<RCUltraGroupChannelChangeTypeInfo *> *)infoList;
+
+/*!
+ 频道白名单用户被移除通知(当前仅支持私有频道)
+ 1. 公有频道时,将用户从私有频道白名单移除时,不通知
+ 2. 私有频道时,将用户从白名单移除时,仅通知私有频道所有用户,含被踢的用户
+ 3. 清理本地数据
+   a. 当被踢用户为当前用户时:用户本地会话删除,本地会话的消息保留
+   b. 当被踢用户为其他人时:不做任何处理
+
+ @param infoList        频道变更信息
+ @discussion
+ 当客户端收到用户被移除频道时,会回调此接口,通知发生变化的会话频道列表。
+ 该功能仅支持超级群。
+ */
+- (void)ultraGroupChannelUserDidKicked:(NSArray<RCUltraGroupChannelUserKickedInfo *> *)infoList;
+
+
+
+/*!
+ 删除频道通知,可以认为是频道解散。
+ 1. 公有频道时,删除频道通知频道中所有人
+ 2. 私有频道时,删除频道通知白名单中所有人
+ 3. 清理本地数据:用户本地会话删除,本地会话的消息保留
+
+ @param infoList        频道变更信息
+ @discussion
+ 当客户端收到频道解散时,会回调此接口,通知发生变化的会话频道列表。
+ 该功能仅支持超级群。
+ */
+- (void)ultraGroupChannelDidDisbanded:(NSArray<RCUltraGroupChannelDisbandedInfo *> *)infoList;
+
+
+
+@end
+
+NS_ASSUME_NONNULL_END
+
 #endif /* RCConversationChannelProtocol_h */

+ 11 - 4
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCConversationStatusInfo.h

@@ -42,7 +42,7 @@ NS_ASSUME_NONNULL_BEGIN
 /*!
  所属会话的业务标识
  */
-@property (nonatomic, copy) NSString *channelId;
+@property (nonatomic, copy, nullable) NSString *channelId;
 
 /*!
  会话状态改变的类型
@@ -50,12 +50,19 @@ NS_ASSUME_NONNULL_BEGIN
 @property (nonatomic, assign) RCConversationStatusType conversationStatusType;
 
 /*!
- 如果 conversationStatusType  = RCConversationStatusType_Mute, conversationStatusvalue = 1
- 是提醒,conversationStatusvalue = 0 是免打扰。  如果 conversationStatusType  = RCConversationStatusType_Top,
- conversationStatusvalue = 0 是不置顶,conversationStatusvalue = 1 是置顶。
+ 如果 conversationStatusType  = RCConversationStatusType_Mute,conversationStatusvalue = 1 是提醒,conversationStatusvalue = 0 是免打扰。
+ 
+ 如果 conversationStatusType  = RCConversationStatusType_Top,conversationStatusvalue = 0 是不置顶,conversationStatusvalue = 1 是置顶。
 */
 @property (nonatomic, assign) int conversationStatusvalue;
 
+/*!
+ 会话免打扰类型
+ 
+ 当 conversationStatusType  = RCConversationStatusType_Mute 时,notificationLevel 值为有效值。
+*/
+@property (nonatomic, assign) RCPushNotificationLevel notificationLevel;
+
 @end
 
 NS_ASSUME_NONNULL_END

+ 1 - 0
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCConversationTagInfo.h

@@ -8,6 +8,7 @@
 
 #import <Foundation/Foundation.h>
 #import "RCTagInfo.h"
+
 NS_ASSUME_NONNULL_BEGIN
 /*!
  会话所属的标签信息

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 239 - 174
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCCoreClient.h


+ 4 - 4
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCDownloadItem.h

@@ -56,7 +56,7 @@ NS_ASSUME_NONNULL_BEGIN
  @param error 错误信息对象,成功时为 nil
  @param path 下载完成后文件的路径,此路径为相对路径,相对于沙盒根目录 NSHomeDirectory
  */
-- (void)downloadItem:(RCDownloadItem *)item didCompleteWithError:(NSError *)error filePath:(nullable NSString *)path;
+- (void)downloadItem:(RCDownloadItem *)item didCompleteWithError:(nullable NSError *)error filePath:(nullable NSString *)path;
 @end
 
 @interface RCDownloadItem : NSObject
@@ -79,7 +79,7 @@ NS_ASSUME_NONNULL_BEGIN
 /**
  文件对应的网络 URL
  */
-@property (nonatomic, strong, readonly) NSURL *URL;
+@property (nonatomic, strong, readonly, nullable) NSURL *URL;
 
 /**
  标识是否可恢复下载。 YES 表示可恢复,支持 Range。 NO 表示不支持 Range。
@@ -89,12 +89,12 @@ NS_ASSUME_NONNULL_BEGIN
 /**
  下载任务的标识符
  */
-@property (nonatomic, copy, readonly) NSString *identify;
+@property (nonatomic, copy, readonly, nullable) NSString *identify;
 
 /**
  下载任务的代理对象
  */
-@property (nonatomic, weak) id<RCDownloadItemDelegate> delegate;
+@property (nonatomic, weak, nullable) id<RCDownloadItemDelegate> delegate;
 
 + (instancetype) new NS_UNAVAILABLE;
 

+ 8 - 4
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCFileMessage.h

@@ -12,6 +12,8 @@
  文件消息的类型名
  */
 #define RCFileMessageTypeIdentifier @"RC:FileMsg"
+
+NS_ASSUME_NONNULL_BEGIN
 /*!
  文件消息类
  
@@ -24,7 +26,7 @@
 /*!
  文件名
  */
-@property (nonatomic, copy) NSString *name;
+@property (nonatomic, copy, nullable) NSString *name;
 
 /*!
  文件大小,单位为 Byte
@@ -34,17 +36,17 @@
 /*!
  文件类型
  */
-@property (nonatomic, copy) NSString *type;
+@property (nonatomic, copy, nullable) NSString *type;
 
 /*!
  文件的网络地址
  */
-@property (nonatomic, copy) NSString *fileUrl;
+@property (nonatomic, copy, nullable) NSString *fileUrl;
 
 /*!
  文件的本地路径
  */
-@property (nonatomic, copy) NSString *localPath;
+@property (nonatomic, copy, nullable) NSString *localPath;
 
 /*!
  初始化文件消息
@@ -55,3 +57,5 @@
 + (instancetype)messageWithFile:(NSString *)localPath;
 
 @end
+
+NS_ASSUME_NONNULL_END

+ 6 - 1
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCFileUtility.h

@@ -14,6 +14,8 @@
 
 #import "RCStatusDefine.h"
 
+NS_ASSUME_NONNULL_BEGIN
+
 @interface RCFileUtility : NSObject
 
 /*!
@@ -94,7 +96,7 @@
 
  @return 文件本地存储路径
  */
-+ (NSString *)getFileLocalPath:(NSString *)fileUri;
++ (nullable NSString *)getFileLocalPath:(NSString *)fileUri;
 
 /*!
  关联文件远端 URL 和本地路径
@@ -105,4 +107,7 @@
  */
 + (NSString *)getSightCachePath:(NSString *)sightUrl;
 @end
+
+NS_ASSUME_NONNULL_END
+
 #endif

+ 9 - 2
KulexiuForTeacher/Pods/RongCloudIM/RongCloudIM/RongIMLibCore.xcframework/ios-arm64_armv7/RongIMLibCore.framework/Headers/RCFwLog.h

@@ -64,6 +64,8 @@ typedef NS_OPTIONS(NSUInteger, RCLogType) {
     RC_Type_RTC = 1 << 12  // RTC.
 };
 
+NS_ASSUME_NONNULL_BEGIN
+
 @interface RCFwLog : NSObject
 
 // should be call init first, otherwise getInstance will return nil.
@@ -75,11 +77,14 @@ typedef NS_OPTIONS(NSUInteger, RCLogType) {
 + (void)setUserId:(NSString *)userId;
 + (void)setLogListener:(void (^)(NSString *log))logBlock;
 + (void)setConsoleLogLevel:(RCFwLogLevel)level;
-+ (NSString *)getIpWithHost:(NSString *)hostName;
+/// 网络状态 100% lost 时, 此方法会阻塞 30s,切记不要在主线程直接调用
++ (nullable NSString *)getIpWithHost:(NSString *)hostName;
+/// 异步获取 ip 地址,内部有切线程处理,子线程执行,主线程回调 callback
++ (void)getIpWithHost:(NSString *)hostName callback:(void (^)(NSString * ipString))callback;
 + (void)setRcDebugLogLevel:(NSInteger)rcDebugLogLevel;
 + (void)setRcDebugLogMaxSize:(long long)rcDebugLogMaxSize;
 + (void)startRealTimelog;
-- (void)uploadLog:(void (^)(int code))errorBlock;
+- (void)uploadLog:(nullable void (^)(int code))errorBlock;
 - (void)uploadDebugLog;
 - (void)write:(RCFwLogLevel)level
          type:(RCLogType)type
@@ -92,3 +97,5 @@ typedef NS_OPTIONS(NSUInteger, RCLogType) {
          keys:(NSArray *)keys
        values:(NSArray *)vals;
 @end
+
+NS_ASSUME_NONNULL_END

Algúns arquivos non se mostraron porque demasiados arquivos cambiaron neste cambio