Jelajahi Sumber

网络教室改造

Steven 2 tahun lalu
induk
melakukan
1aa7203962
100 mengubah file dengan 1237 tambahan dan 800 penghapusan
  1. 499 597
      KulexiuForStudent/KulexiuForStudent.xcodeproj/project.pbxproj
  2. 32 203
      KulexiuForStudent/KulexiuForStudent/AppDelegate.m
  3. 6 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/Contents.json
  4. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_bad.imageset/Contents.json
  5. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_bad.imageset/tx_net_bad@2x.png
  6. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_bad.imageset/tx_net_bad@3x.png
  7. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_full.imageset/Contents.json
  8. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_full.imageset/tx_net_full@2x.png
  9. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_full.imageset/tx_net_full@3x.png
  10. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_good.imageset/Contents.json
  11. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_good.imageset/tx_net_good@2x.png
  12. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_good.imageset/tx_net_good@3x.png
  13. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_nomal.imageset/Contents.json
  14. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_nomal.imageset/tx_net_nomal@2x.png
  15. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_nomal.imageset/tx_net_nomal@3x.png
  16. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_none.imageset/Contents.json
  17. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_none.imageset/tx_net_none@2x.png
  18. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_none.imageset/tx_net_none@3x.png
  19. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/handup_image.imageset/handup_image@2x.png
  20. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/handup_image.imageset/handup_image@3x.png
  21. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/mic_off.imageset/Contents.json
  22. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/mic_off.imageset/mic_off@2x.png
  23. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/mic_off.imageset/mic_off@3x.png
  24. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/mic_on.imageset/Contents.json
  25. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/mic_on.imageset/mic_on@2x.png
  26. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/mic_on.imageset/mic_on@3x.png
  27. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_bad.imageset/Contents.json
  28. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_bad.imageset/network_bad@2x.png
  29. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_bad.imageset/network_bad@3x.png
  30. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_full.imageset/Contents.json
  31. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_full.imageset/network_full@2x.png
  32. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_full.imageset/network_full@3x.png
  33. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_good.imageset/Contents.json
  34. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_good.imageset/network_good@2x.png
  35. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_good.imageset/network_good@3x.png
  36. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_nomal.imageset/Contents.json
  37. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_nomal.imageset/network_nomal@2x.png
  38. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_nomal.imageset/network_nomal@3x.png
  39. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_none.imageset/Contents.json
  40. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_none.imageset/network_none@2x.png
  41. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_none.imageset/network_none@3x.png
  42. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/time_white.imageset/Contents.json
  43. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/time_white.imageset/time_white@2x.png
  44. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/time_white.imageset/time_white@3x.png
  45. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/txClassroom_emtpy.imageset/Contents.json
  46. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/txClassroom_emtpy.imageset/txClassroom_emtpy@2x.png
  47. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/txClassroom_emtpy.imageset/txClassroom_emtpy@3x.png
  48. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/tx_highlight_sopt.imageset/Contents.json
  49. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/tx_highlight_sopt.imageset/tx_highlight_sopt@2x.png
  50. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/tx_highlight_sopt.imageset/tx_highlight_sopt@3x.png
  51. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/tx_nomal_sopt.imageset/Contents.json
  52. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/tx_nomal_sopt.imageset/tx_nomal_sopt@2x.png
  53. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/tx_nomal_sopt.imageset/tx_nomal_sopt@3x.png
  54. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/videoMask_delete 1.imageset/Contents.json
  55. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/videoMask_delete 1.imageset/videoMask_delete@2x.png
  56. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/videoMask_delete 1.imageset/videoMask_delete@3x.png
  57. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/videoMask_delete.imageset/Contents.json
  58. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/videoMask_delete.imageset/videoMask_delete@2x.png
  59. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/videoMask_delete.imageset/videoMask_delete@3x.png
  60. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/video_close.imageset/Contents.json
  61. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/video_close.imageset/video_close@2x.png
  62. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/video_close.imageset/video_close@3x.png
  63. 6 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/Contents.json
  64. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_cameroOff.imageset/Contents.json
  65. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_cameroOff.imageset/classMember_cameroOff@2x.png
  66. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_cameroOff.imageset/classMember_cameroOff@3x.png
  67. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_cameroOn.imageset/Contents.json
  68. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_cameroOn.imageset/classMember_cameroOn@2x.png
  69. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_cameroOn.imageset/classMember_cameroOn@3x.png
  70. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_micOff.imageset/Contents.json
  71. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_micOff.imageset/classMember_micOff@2x.png
  72. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_micOff.imageset/classMember_micOff@3x.png
  73. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_micOn.imageset/Contents.json
  74. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_micOn.imageset/classMember_micOn@2x.png
  75. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_micOn.imageset/classMember_micOn@3x.png
  76. 6 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Contents.json
  77. 6 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/Contents.json
  78. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_bg.imageset/Contents.json
  79. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_bg.imageset/beat_bg@2x.png
  80. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_bg.imageset/beat_bg@3x.png
  81. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_change.imageset/Contents.json
  82. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_change.imageset/beat_change@2x.png
  83. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_change.imageset/beat_change@3x.png
  84. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_play.imageset/Contents.json
  85. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_play.imageset/beat_play@2x.png
  86. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_play.imageset/beat_play@3x.png
  87. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_speed_square.imageset/Contents.json
  88. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_speed_square.imageset/beat_speed_square@2x.png
  89. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_speed_square.imageset/beat_speed_square@3x.png
  90. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_speed_top.imageset/Contents.json
  91. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_speed_top.imageset/beat_speed_top@2x.png
  92. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_speed_top.imageset/beat_speed_top@3x.png
  93. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_stop.imageset/Contents.json
  94. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_stop.imageset/beat_stop@2x.png
  95. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_stop.imageset/beat_stop@3x.png
  96. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_volume.imageset/Contents.json
  97. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_volume.imageset/beat_volume@2x.png
  98. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_volume.imageset/beat_volume@3x.png
  99. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/metronome_slider_bg.imageset/Contents.json
  100. TEMPAT SAMPAH
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/metronome_slider_bg.imageset/metronome_slider_bg@2x.png

File diff ditekan karena terlalu besar
+ 499 - 597
KulexiuForStudent/KulexiuForStudent.xcodeproj/project.pbxproj


+ 32 - 203
KulexiuForStudent/KulexiuForStudent/AppDelegate.m

@@ -11,8 +11,6 @@
 #import "KSUpdateAlert.h"
 #import "KSNetworkAccessibleManager.h"
 #import <Bugly/Bugly.h>
-#import <RongIMLib/RongIMLib.h>
-#import <RongIMKit/RongIMKit.h>
 
 #import <UMCommon/UMCommon.h>
 
@@ -28,9 +26,7 @@
 #import "UrlDecode.h"
 #import "KSBaseWKWebViewController.h"
 #import "UserInfoManager.h"
-#import "KSIMService.h"
-#import "RCConnectionManager.h"
-#import "KSRCIMDataSource.h"
+
 #import "WXApi.h"
 #import "GuideViewController.h"
 #import "HomeworkDetailViewController.h"
@@ -43,21 +39,7 @@
 #import <TUICore/TUIConfig.h>
 #import <TUIChat/TUIChat.h>
 
-@interface RCNaviDataInfo : NSObject
-
-@property (nonatomic, assign) NSTimeInterval uploadVideoDurationLimit;
-
-@end
-
-@interface RCNaviDataManager : NSObject
-
-@property (nonatomic, strong) RCNaviDataInfo *naviData;
-
-+ (instancetype)sharedInstance;
-
-@end
-
-@interface AppDelegate ()<RCIMReceiveMessageDelegate,WXApiDelegate,JPUSHRegisterDelegate>
+@interface AppDelegate ()<WXApiDelegate,JPUSHRegisterDelegate>
 
 @property (nonatomic, assign) BOOL isNeedUpdate;
 
@@ -113,8 +95,7 @@
     
     // 配置极光推送
     [self configJPUSHWithLaunchOptions:launchOptions];
-    // 融云相关配置
-    [self configIM];
+
     
     // 腾讯群相关
    [self configTXIM];
@@ -184,13 +165,7 @@
 }
 
 - (void)displayUnreadMessageCount {
-    int unreadMsgCount = [[RCIMClient sharedRCIMClient] getUnreadCount:@[ @(ConversationType_PRIVATE),@(ConversationType_APPSERVICE), @(ConversationType_GROUP),@(ConversationType_SYSTEM)
-    ]];
-    if (unreadMsgCount >= 1) {
-        [self.tabBarController noteNewsWithIndex:2 count:unreadMsgCount];
-    } else {
-        [self.tabBarController clearNewsWithIndex:2];
-    }
+    [self countUnreadMessage];
 }
 
 - (void)registerSDK {
@@ -293,70 +268,6 @@
             advertisingIdentifier:nil];
 }
 
-- (void)configIM {
-    [RCNaviDataManager sharedInstance].naviData.uploadVideoDurationLimit = 480.0f;
-    // 6tnym1br6pv07 正式环境key   c9kqb3rdc451j test
-    [[RCIM sharedRCIM] initWithAppKey:RCIM_KEY];
-    
-    //IMKit连接状态的监听器
-    [[RCIM sharedRCIM] setConnectionStatusDelegate:KSRMLINK];
-    //IMKit消息接收的监听器
-    [[RCIM sharedRCIM] setReceiveMessageDelegate:self];
-    // 信息提供者
-    [RCIM sharedRCIM].userInfoDataSource = KSRMDataSource;
-    [[RCIM sharedRCIM] setGroupInfoDataSource:KSRMDataSource];
-    // 群名片信息提供者
-    [[RCIM sharedRCIM] setGroupUserInfoDataSource:KSRMDataSource];
-    // 群成员数据源
-    [RCIM sharedRCIM].groupMemberDataSource = KSRMDataSource;
-    
-    //开启消息@功能(只支持群聊和讨论组, App需要实现群成员数据源groupMemberDataSource)
-    RCKitConfigCenter.message.enableMessageMentioned = YES;
-    //是否关闭本地通知,默认是打开的
-    RCKitConfigCenter.message.disableMessageNotificaiton = NO;
-    // 会话界面设置
-    RCKitConfigCenter.ui.globalMessageAvatarStyle = RC_USER_AVATAR_RECTANGLE;
-    RCKitConfigCenter.ui.globalMessagePortraitSize = CGSizeMake(40, 40);
-    // 会话列表头像设置
-    RCKitConfigCenter.ui.globalConversationAvatarStyle = RC_USER_AVATAR_RECTANGLE;
-    RCKitConfigCenter.ui.globalConversationPortraitSize = CGSizeMake(44, 44);
-    
-    //开启消息撤回功能
-    RCKitConfigCenter.message.enableMessageRecall = YES;
-    // 开启消息合并转发
-    RCKitConfigCenter.message.enableSendCombineMessage = YES;
-    //选择媒体资源时,包含视频文件
-    RCKitConfigCenter.message.isMediaSelectorContainVideo = YES;
-    //设置显示未注册的消息
-    RCKitConfigCenter.message.showUnkownMessage = YES;
-    
-    //开启发送已读回执
-    RCKitConfigCenter.message.enabledReadReceiptConversationTypeList = @[@(ConversationType_PRIVATE), @(ConversationType_GROUP)];
-    
-    //开启输入状态监听
-    RCKitConfigCenter.message.enableTypingStatus = YES;
-    
-    //开启用户信息和群组信息的持久化
-    [RCIM sharedRCIM].enablePersistentUserInfoCache = YES;
-    // 在发送的所有消息中携带当前登录的用户信息
-    [RCIM sharedRCIM].enableMessageAttachUserInfo = YES;
-    // 关闭所有提示音
-    RCKitConfigCenter.message.disableMessageAlertSound = YES;
-    
-    // 设置断线重连时是否踢出重连设备
-        [[RCIMClient sharedRCIMClient] setReconnectKickEnable:YES];
-    
-    // 左右上角按钮颜色
-    RCKitConfigCenter.ui.globalNavigationBarTintColor = HexRGB(0x000000);
-    // 注册消息
-    // 注册消息
-    [[RCIM sharedRCIM] registerMessageType:NSClassFromString(@"KSChatLiveMessage")];
-    [[RCIM sharedRCIM] registerMessageType:NSClassFromString(@"KSChatMusicMessage")];
-    
-    //    [[RCIMClient sharedRCIMClient] setLogLevel:RC_Log_Level_Verbose];
-    //    [self redirectNSlogToDocumentFolder];
-    
-}
 
 - (void)configTXIM {
     TUIConfig *config = [TUIConfig defaultConfig];
@@ -427,8 +338,6 @@ didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
     /// Required - 注册 DeviceToken
     [JPUSHService registerDeviceToken:deviceToken];
     
-    // 融云
-    [[RCIMClient sharedRCIMClient] setDeviceTokenData:deviceToken];
     
     if ([TXIM_LINSENTER isCurrentUserLoginIM]) {
         [self registerTXIMDeviceToken:deviceToken];
@@ -452,25 +361,9 @@ didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
 }
 
 - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
-    /**
-     * 获取融云推送服务扩展字段2
-     */
-    NSDictionary *pushServiceData = [[RCIMClient sharedRCIMClient] getPushExtraFromRemoteNotification:userInfo];
-    if (pushServiceData) {
-        NSLog(@"该远程推送包含来自融云的推送服务");
-        /**
-         * 统计推送打开率2
-         */
-        [[RCIMClient sharedRCIMClient] recordRemoteNotificationEvent:userInfo];
-        
-        for (id key in [pushServiceData allKeys]) {
-            NSLog(@"key = %@, value = %@", key, pushServiceData[key]);
-        }
-    } else {
-        NSLog(@"该远程推送不包含来自融云的推送服务");
-        // 极光推送
-        [JPUSHService handleRemoteNotification:userInfo];
-    }
+    
+    // 极光推送
+    [JPUSHService handleRemoteNotification:userInfo];
 }
 
 /**
@@ -480,25 +373,10 @@ didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
 #pragma clang diagnostic push
 #pragma clang diagnostic ignored "-Wdeprecated-implementations"
 - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
-    /**
-     * 统计推送打开率2
-     */
-    [[RCIMClient sharedRCIMClient] recordRemoteNotificationEvent:userInfo];
-    /**
-     * 获取融云推送服务扩展字段2
-     */
-    NSDictionary *pushServiceData = [[RCIMClient sharedRCIMClient] getPushExtraFromRemoteNotification:userInfo];
-    if (pushServiceData) {
-        NSLog(@"该远程推送包含来自融云的推送服务");
-        for (id key in [pushServiceData allKeys]) {
-            NSLog(@"key = %@, value = %@", key, pushServiceData[key]);
-        }
-    } else {
-        NSLog(@"该远程推送不包含来自融云的推送服务");
+
         // 极光推送
         [JPUSHService handleRemoteNotification:userInfo];
     }
-}
 #pragma clang diagnostic pop
 
 - (void)applicationDidEnterBackground:(UIApplication *)application {
@@ -524,13 +402,7 @@ didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
     if (self.isNeedUpdate) {
         [self versionCheck];
     }
-    RCConnectionStatus status = [[RCIMClient sharedRCIMClient] getConnectionStatus];
-    if (status == ConnectionStatus_Unconnected) {  // 连接失败或未连接 需要重新连接
-        NSString *token = UserDefault(TokenKey);
-        if (![NSString isEmptyString:token]) {
-            [USER_MANAGER checkTokenEnableConnectIM];
-        }
-    }
+
     // 退到后台发送消息
     [[NSNotificationCenter defaultCenter] postNotificationName:@"appEnterForeground" object:nil];
 }
@@ -546,43 +418,6 @@ didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
     // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
 }
 
-- (void)onRCIMReceiveMessage:(RCMessage *)message left:(int)left {
-    
-    NSLog(@"conversationType----%lu",(unsigned long)message.conversationType);
-    // 此处根据消息类型处理对应信息
-    if (message.conversationType == ConversationType_CHATROOM) { // 聊天室类型为直播
-        [[KSIMService sharedService] ksOnReceivedChatroom:message left:left object:@""];
-    }
-    if (message.conversationType == ConversationType_GROUP && ![message.targetId containsString:@"COURSE"] && ![message.targetId containsString:@"FAN"]) { // 网络教室视频聊天
-        [[RCIMClient sharedRCIMClient] clearMessagesUnreadStatus:ConversationType_GROUP targetId:message.targetId];
-        [[KSIMService sharedService] ksOnReceived:message left:left object:@""];
-    }
-    else {
-        // 此处对单聊、群聊消息处理
-        dispatch_async(dispatch_get_main_queue(), ^{
-        
-            if ([message.content isMemberOfClass:[RCGroupNotificationMessage class]]) {
-                RCGroupNotificationMessage *msg = (RCGroupNotificationMessage *)message.content;
-                if ([msg.operation isEqualToString:GroupNotificationMessage_GroupOperationKicked]) {
-                    //                    [[RCIMClient sharedRCIMClient] removeConversation:ConversationType_GROUP targetId:message.targetId];
-                }
-            }
-            else {
-                int unreadMsgCount = [[RCIMClient sharedRCIMClient] getUnreadCount:@[
-                @(ConversationType_PRIVATE), @(ConversationType_APPSERVICE), @(ConversationType_GROUP),@(ConversationType_SYSTEM)
-                ]];
-                [UIApplication sharedApplication].applicationIconBadgeNumber = unreadMsgCount;
-                if (unreadMsgCount >= 1) {
-                    [self.tabBarController noteNewsWithIndex:2 count:unreadMsgCount];
-                } else {
-                    [self.tabBarController clearNewsWithIndex:2];
-                }
-            }
-        });
-    }
-    
-}
-
 
 #pragma mark- JPUSHRegisterDelegate
 - (void)jpushNotificationAuthorization:(JPAuthorizationStatus)status withInfo:(NSDictionary *)info {
@@ -838,16 +673,10 @@ didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
 
     self.tabBarController = [[KSTabBarViewController alloc] init];
     self.window.rootViewController = self.tabBarController;
-    int unreadMsgCount = [[RCIMClient sharedRCIMClient] getUnreadCount:@[ @(ConversationType_PRIVATE),@(ConversationType_APPSERVICE), @(ConversationType_GROUP),@(ConversationType_SYSTEM)
-    ]];
-    if (unreadMsgCount >= 1) {
-        [self.tabBarController noteNewsWithIndex:2 count:unreadMsgCount];
-    } else {
-        [self.tabBarController clearNewsWithIndex:2];
-    }
     
     [[UITabBar appearance] setBackgroundImage:[[UIImage alloc] init]];
     [[UITabBar appearance] setShadowImage:[[UIImage alloc] init]];
+    [self countUnreadMessage];
 }
 
 - (void)initLoginView {
@@ -860,31 +689,11 @@ didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
     // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
     // Use this method to pause ongoing tasks, disable timers, and invalidate graphics rendering callbacks. Games should use this method to pause the game.
     
-    RCConnectionStatus status = [[RCIMClient sharedRCIMClient] getConnectionStatus];
-    if (status != ConnectionStatus_SignOut) {
-        int unreadMsgCount = [[RCIMClient sharedRCIMClient] getUnreadCount:@[@(ConversationType_PRIVATE), @(ConversationType_APPSERVICE), @(ConversationType_GROUP),@(ConversationType_SYSTEM)]];
-        application.applicationIconBadgeNumber = unreadMsgCount;
-        if (unreadMsgCount >= 1) {
-            [self.tabBarController noteNewsWithIndex:2 count:unreadMsgCount];
-        } else {
-            [self.tabBarController clearNewsWithIndex:2];
-        }
-    }
+    [self countUnreadMessage];
 }
 
 - (void)didReceiveMessageNotification:(NSNotification *)notification {
-    NSNumber *left = [notification.userInfo objectForKey:@"left"];
-    if ([RCIMClient sharedRCIMClient].sdkRunningMode == RCSDKRunningMode_Background && 0 == left.integerValue) {
-        int unreadMsgCount = [[RCIMClient sharedRCIMClient] getUnreadCount:@[@(ConversationType_PRIVATE), @(ConversationType_APPSERVICE), @(ConversationType_GROUP),@(ConversationType_SYSTEM)]];
-        dispatch_async(dispatch_get_main_queue(),^{
-            [UIApplication sharedApplication].applicationIconBadgeNumber = unreadMsgCount;
-            if (unreadMsgCount >= 1) {
-                [self.tabBarController noteNewsWithIndex:2 count:unreadMsgCount];
-            } else {
-                [self.tabBarController clearNewsWithIndex:2];
-            }
-        });
-    }
+    
 }
 
 - (BOOL)handleOutLink:(NSURL *)url {
@@ -1115,5 +924,25 @@ didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
     }
 }
 
+// 统计消息数量
+- (void)countUnreadMessage {
+    if ([TXIM_LINSENTER isCurrentUserLoginIM]) {
+        [TXIM_LINSENTER getUnReadCountCallback:^(NSInteger count) {
+            dispatch_async(dispatch_get_main_queue(),^{
+                NSLog(@"----- %zd",count);
+                [UIApplication sharedApplication].applicationIconBadgeNumber = count;
+                if (count >= 1) {
+                    [self.tabBarController noteNewsWithIndex:2 count:count];
+                } else {
+                    [self.tabBarController clearNewsWithIndex:2];
+                }
+                
+                NSDictionary *receiveMsg = @{@"unreadCount":@(count)};
+
+                [[NSNotificationCenter defaultCenter] postNotificationName:CHATVIEW_REFRESHSTATUS object:receiveMsg];
+            });
+        }];
+    }
+}
 
 @end

+ 6 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/Contents.json

@@ -0,0 +1,6 @@
+{
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_bad.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "tx_net_bad@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "tx_net_bad@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_bad.imageset/tx_net_bad@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_bad.imageset/tx_net_bad@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_full.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "tx_net_full@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "tx_net_full@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_full.imageset/tx_net_full@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_full.imageset/tx_net_full@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_good.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "tx_net_good@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "tx_net_good@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_good.imageset/tx_net_good@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_good.imageset/tx_net_good@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_nomal.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "tx_net_nomal@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "tx_net_nomal@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_nomal.imageset/tx_net_nomal@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_nomal.imageset/tx_net_nomal@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_none.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "tx_net_none@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "tx_net_none@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_none.imageset/tx_net_none@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/Titlenetwork/tx_net_none.imageset/tx_net_none@3x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/handup_image.imageset/handup_image@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/handup_image.imageset/handup_image@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/mic_off.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "mic_off@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "mic_off@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/mic_off.imageset/mic_off@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/mic_off.imageset/mic_off@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/mic_on.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "mic_on@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "mic_on@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/mic_on.imageset/mic_on@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/mic_on.imageset/mic_on@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_bad.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "network_bad@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "network_bad@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_bad.imageset/network_bad@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_bad.imageset/network_bad@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_full.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "network_full@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "network_full@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_full.imageset/network_full@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_full.imageset/network_full@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_good.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "network_good@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "network_good@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_good.imageset/network_good@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_good.imageset/network_good@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_nomal.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "network_nomal@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "network_nomal@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_nomal.imageset/network_nomal@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_nomal.imageset/network_nomal@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_none.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "network_none@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "network_none@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_none.imageset/network_none@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/network_none.imageset/network_none@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/time_white.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "time_white@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "time_white@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/time_white.imageset/time_white@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/time_white.imageset/time_white@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/txClassroom_emtpy.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "txClassroom_emtpy@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "txClassroom_emtpy@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/txClassroom_emtpy.imageset/txClassroom_emtpy@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/txClassroom_emtpy.imageset/txClassroom_emtpy@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/tx_highlight_sopt.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "tx_highlight_sopt@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "tx_highlight_sopt@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/tx_highlight_sopt.imageset/tx_highlight_sopt@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/tx_highlight_sopt.imageset/tx_highlight_sopt@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/tx_nomal_sopt.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "tx_nomal_sopt@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "tx_nomal_sopt@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/tx_nomal_sopt.imageset/tx_nomal_sopt@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/tx_nomal_sopt.imageset/tx_nomal_sopt@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/videoMask_delete 1.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "videoMask_delete@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "videoMask_delete@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/videoMask_delete 1.imageset/videoMask_delete@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/videoMask_delete 1.imageset/videoMask_delete@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/videoMask_delete.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "videoMask_delete@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "videoMask_delete@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/videoMask_delete.imageset/videoMask_delete@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/videoMask_delete.imageset/videoMask_delete@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/video_close.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "video_close@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "video_close@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/video_close.imageset/video_close@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Classroom/video_close.imageset/video_close@3x.png


+ 6 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/Contents.json

@@ -0,0 +1,6 @@
+{
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_cameroOff.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "classMember_cameroOff@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "classMember_cameroOff@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_cameroOff.imageset/classMember_cameroOff@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_cameroOff.imageset/classMember_cameroOff@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_cameroOn.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "classMember_cameroOn@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "classMember_cameroOn@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_cameroOn.imageset/classMember_cameroOn@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_cameroOn.imageset/classMember_cameroOn@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_micOff.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "classMember_micOff@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "classMember_micOff@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_micOff.imageset/classMember_micOff@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_micOff.imageset/classMember_micOff@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_micOn.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "classMember_micOn@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "classMember_micOn@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_micOn.imageset/classMember_micOn@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/ClassMember/classMember_micOn.imageset/classMember_micOn@3x.png


+ 6 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Contents.json

@@ -0,0 +1,6 @@
+{
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

+ 6 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/Contents.json

@@ -0,0 +1,6 @@
+{
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_bg.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "beat_bg@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "beat_bg@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_bg.imageset/beat_bg@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_bg.imageset/beat_bg@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_change.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "beat_change@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "beat_change@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_change.imageset/beat_change@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_change.imageset/beat_change@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_play.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "beat_play@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "beat_play@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_play.imageset/beat_play@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_play.imageset/beat_play@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_speed_square.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "beat_speed_square@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "beat_speed_square@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_speed_square.imageset/beat_speed_square@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_speed_square.imageset/beat_speed_square@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_speed_top.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "beat_speed_top@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "beat_speed_top@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_speed_top.imageset/beat_speed_top@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_speed_top.imageset/beat_speed_top@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_stop.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "beat_stop@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "beat_stop@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_stop.imageset/beat_stop@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_stop.imageset/beat_stop@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_volume.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "beat_volume@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "beat_volume@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_volume.imageset/beat_volume@2x.png


TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/beat_volume.imageset/beat_volume@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/metronome_slider_bg.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "metronome_slider_bg@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "metronome_slider_bg@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

TEMPAT SAMPAH
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/NewClassroom/Metromone/metronome_slider_bg.imageset/metronome_slider_bg@2x.png


Beberapa file tidak ditampilkan karena terlalu banyak file yang berubah dalam diff ini