| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- //
- // TUIConfig.m
- // TUIKit
- //
- // Created by kennethmiao on 2018/11/5.
- // Copyright © 2018 Tencent. All rights reserved.
- //
- #import "TUIConfig.h"
- #import "TUICommonModel.h"
- #import "TUIDefine.h"
- #import "TUILogin.h"
- #import "TUIThemeManager.h"
- @interface TUIConfig ()
- @property(nonatomic, strong) UIImage *defaultGroupAvatarImage_Public;
- @property(nonatomic, strong) UIImage *defaultGroupAvatarImage_Meeting;
- @property(nonatomic, strong) UIImage *defaultGroupAvatarImage_AVChatRoom;
- @property(nonatomic, strong) UIImage *defaultGroupAvatarImage_Community;
- @end
- @implementation TUIConfig
- - (id)init {
- self = [super init];
- if (self) {
- _avatarCornerRadius = 5.f;
- _defaultAvatarImage = TUICoreBundleThemeImage(@"default_c2c_head_img", @"default_c2c_head");
- _defaultGroupAvatarImage = TUICoreBundleThemeImage(@"default_group_head_img", @"default_group_head");
- _defaultGroupAvatarImage_Public = TUICoreBundleThemeImage(@"default_group_head_public_img", @"default_group_head_public");
- _defaultGroupAvatarImage_Meeting = TUICoreBundleThemeImage(@"default_group_head_meeting_img", @"default_group_head_meeting");
- _defaultGroupAvatarImage_AVChatRoom = TUICoreBundleThemeImage(@"default_group_head_avchatroom_img", @"default_group_head_avchatRoom");
- _defaultGroupAvatarImage_Community = TUICoreBundleThemeImage(@"", @"default_group_head_community");
- _isExcludedFromUnreadCount = NO;
- _isExcludedFromLastMessage = NO;
- _enableToast = YES;
- _displayOnlineStatusIcon = NO;
- _enableGroupGridAvatar = YES;
- [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(onChangeTheme) name:TUIDidApplyingThemeChangedNotfication object:nil];
- }
- return self;
- }
- + (id)defaultConfig {
- static dispatch_once_t onceToken;
- static TUIConfig *config;
- dispatch_once(&onceToken, ^{
- config = [[TUIConfig alloc] init];
- });
- return config;
- }
- - (void)onChangeTheme {
- self.defaultAvatarImage = TUICoreBundleThemeImage(@"default_c2c_head_img", @"default_c2c_head");
- self.defaultGroupAvatarImage = TUICoreBundleThemeImage(@"default_group_head_img", @"default_group_head");
- self.defaultGroupAvatarImage_Public = TUICoreBundleThemeImage(@"default_group_head_public_img", @"default_group_head_public");
- self.defaultGroupAvatarImage_Meeting = TUICoreBundleThemeImage(@"default_group_head_meeting_img", @"default_group_head_meeting");
- self.defaultGroupAvatarImage_AVChatRoom = TUICoreBundleThemeImage(@"default_group_head_avchatroom_img", @"default_group_head_avchatroom");
- self.defaultGroupAvatarImage_Community = TUICoreBundleThemeImage(@"default_group_head_community_img", @"default_group_head_community");
- }
- - (UIImage *)getGroupAvatarImageByGroupType:(NSString *)groupType {
- if ([groupType isEqualToString:GroupType_Work]) {
- return self.defaultGroupAvatarImage;
- } else if ([groupType isEqualToString:GroupType_Public]) {
- return self.defaultGroupAvatarImage_Public;
- } else if ([groupType isEqualToString:GroupType_Meeting]) {
- return self.defaultGroupAvatarImage_Meeting;
- } else if ([groupType isEqualToString:GroupType_AVChatRoom]) {
- return self.defaultGroupAvatarImage_AVChatRoom;
- } else if ([groupType isEqualToString:GroupType_Community]) {
- return self.defaultGroupAvatarImage_Community;
- } else {
- return self.defaultGroupAvatarImage;
- }
- }
- #pragma mark - Sence
- - (void)setSceneOptimizParams:(NSString *)path {
- NSURL *url = [NSURL URLWithString:@"https://demos.trtc.tencent-cloud.com/prod/base/v1/events/stat"];
- NSMutableURLRequest *req = [NSMutableURLRequest requestWithURL:url];
- req.HTTPMethod = @"POST";
- NSDictionary *msgData =
- @{@"sdkappid" : @([TUILogin getSdkAppID]), @"bundleId" : NSBundle.mainBundle.bundleIdentifier ?: @"", @"package" : @"", @"component" : path};
- NSString* userId =[TUILogin getUserID];
- NSDictionary *param = @{@"userid" : (userId?:@""), @"event" : @"useScenario", @"msg" : msgData};
- NSData *data = [NSJSONSerialization dataWithJSONObject:param options:NSJSONWritingPrettyPrinted error:nil];
- if (!data) {
- return;
- }
- req.HTTPBody = data;
- NSURLSessionConfiguration *config = [NSURLSessionConfiguration defaultSessionConfiguration];
- config.HTTPAdditionalHeaders = @{@"api-key" : @"API_KEY", @"Content-Type" : @"application/json"};
- NSURLSession *session = [NSURLSession sessionWithConfiguration:config];
- [[session dataTaskWithRequest:req
- completionHandler:^(NSData *_Nullable data, NSURLResponse *_Nullable response, NSError *_Nullable error) {
- if (data) {
- NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:nil];
- long code = [dic[@"errorCode"] longValue];
- if (code == 0) {
- NSLog(@"scene param [%@] success", path);
- } else {
- NSString *msg = dic[@"errorMessage"];
- NSLog(@"scene param [%@] failed: [%ld] %@", path, code, msg);
- }
- } else {
- NSLog(@"scene param [%@] error: res data nil", path);
- }
- }] resume];
- }
- @end
|