Compare commits
142 Commits
appstore_2
...
appstore_2
Author | SHA1 | Date | |
---|---|---|---|
![]() |
1498c4b91c | ||
![]() |
c1da0893de | ||
![]() |
f9eb216bd3 | ||
![]() |
84af03be39 | ||
![]() |
8d27e307e9 | ||
![]() |
c90c726b53 | ||
![]() |
6d450443d0 | ||
![]() |
17346ffedf | ||
![]() |
6f75c535c1 | ||
![]() |
9688b04a25 | ||
![]() |
d9d9976046 | ||
![]() |
de67e0b3f9 | ||
![]() |
5554197b7c | ||
![]() |
09ba817622 | ||
![]() |
4dd0447c6f | ||
![]() |
905e3ed441 | ||
![]() |
d00366238e | ||
![]() |
d0f4ad4e12 | ||
![]() |
49fcca821b | ||
![]() |
7ae5cc9a4c | ||
![]() |
12a1dd9284 | ||
![]() |
2f2456fa18 | ||
![]() |
a189cdfaa8 | ||
![]() |
5f0d52451c | ||
![]() |
06b39c2671 | ||
![]() |
32c6c8c7d2 | ||
![]() |
6cbf6c55ca | ||
![]() |
8e1ca7fa99 | ||
![]() |
fe423a27a5 | ||
![]() |
29c188788d | ||
![]() |
9f12705a8b | ||
![]() |
1455e352b7 | ||
![]() |
628b4f0c9f | ||
![]() |
a75f291364 | ||
![]() |
470ecd99e7 | ||
![]() |
c670d7be6d | ||
![]() |
10a1e6e09e | ||
![]() |
5c057821a7 | ||
![]() |
6007611a3b | ||
![]() |
3a576925a2 | ||
![]() |
1bd2382d6a | ||
![]() |
509c47cc2a | ||
![]() |
0f47ed8ed7 | ||
![]() |
972f6d61ea | ||
![]() |
5e2c5080c5 | ||
![]() |
ce308df1b6 | ||
![]() |
6a3201135b | ||
![]() |
6e8ead27dd | ||
![]() |
a8bef5946e | ||
![]() |
3afa60587a | ||
![]() |
52e7d4ff7e | ||
![]() |
566d8a3672 | ||
![]() |
8dffff8492 | ||
![]() |
398b4e5e81 | ||
![]() |
a19adac48e | ||
![]() |
f9321a6586 | ||
![]() |
411528467c | ||
![]() |
24d55bc807 | ||
![]() |
39b64f59b3 | ||
![]() |
cbd7b5cdbc | ||
![]() |
d7f04e400a | ||
![]() |
90eab408d0 | ||
![]() |
56103bb220 | ||
![]() |
cee26a4c25 | ||
![]() |
0f3dedd701 | ||
![]() |
6e69623fe1 | ||
![]() |
0161a860af | ||
![]() |
92844a9619 | ||
![]() |
4285c2b6c7 | ||
![]() |
95a8cfc86d | ||
![]() |
47eab96f43 | ||
![]() |
723e946141 | ||
![]() |
79015ca5ce | ||
![]() |
960a708916 | ||
![]() |
138f7ed2d9 | ||
![]() |
edcac4f7fe | ||
![]() |
994cdffa71 | ||
![]() |
44ff9e9813 | ||
![]() |
4b20c67e5a | ||
![]() |
831f62ce7d | ||
![]() |
0e0bee0a33 | ||
![]() |
768e0ed477 | ||
![]() |
9a0d452e72 | ||
![]() |
8c56f25e9f | ||
![]() |
d88839e58e | ||
![]() |
1d930ab93b | ||
![]() |
c4d8fc4e38 | ||
![]() |
edff4262a6 | ||
![]() |
e5ae6d3157 | ||
![]() |
a3b6fda673 | ||
![]() |
aebc8c0af9 | ||
![]() |
73df709df5 | ||
![]() |
b3003f1547 | ||
![]() |
311d2f6041 | ||
![]() |
7475a578e8 | ||
![]() |
10e7403101 | ||
![]() |
a2083617d9 | ||
![]() |
9506379d10 | ||
![]() |
71cbfd649b | ||
![]() |
6b1f150b65 | ||
![]() |
6256373339 | ||
![]() |
6ed407b05a | ||
![]() |
6754f38c52 | ||
![]() |
cf17b5e30c | ||
![]() |
68cd6c24f6 | ||
![]() |
be77a3a048 | ||
![]() |
d0f6157bc8 | ||
![]() |
09d2c0f49d | ||
![]() |
2632666cc3 | ||
![]() |
7d6fb8e2ce | ||
![]() |
eb3021e72d | ||
![]() |
6a12a669cb | ||
![]() |
1f66e9fe75 | ||
![]() |
940ca58a95 | ||
![]() |
1919e74c06 | ||
![]() |
35ed817644 | ||
![]() |
01c06f8985 | ||
![]() |
7c3c564074 | ||
![]() |
f8f6f04b0d | ||
![]() |
83c26770a4 | ||
![]() |
63492e37cf | ||
![]() |
2f5232a7ec | ||
![]() |
29ea2bdcd0 | ||
![]() |
361a92989e | ||
![]() |
67e0254b86 | ||
![]() |
28a9134243 | ||
![]() |
c0af92b7bc | ||
![]() |
7b9674c13f | ||
![]() |
42d7d8f502 | ||
![]() |
fbebab9792 | ||
![]() |
9f74aef971 | ||
![]() |
78765219a2 | ||
![]() |
4eb2261d2a | ||
![]() |
c1de3b4b24 | ||
![]() |
7dfc5a6569 | ||
![]() |
9ac6424755 | ||
![]() |
890c9dd4d4 | ||
![]() |
886ac6f950 | ||
![]() |
15c4fc3871 | ||
![]() |
1f7d6e472b | ||
![]() |
43446b1e50 | ||
![]() |
f8c778a14a |
10
Podfile
@@ -11,6 +11,7 @@ target 'YuMi' do
|
||||
pod 'FBSDKLoginKit'
|
||||
pod 'FBSDKCoreKit'
|
||||
pod 'FBSDKShareKit'
|
||||
pod 'LineSDKSwift'
|
||||
# 滑动标签栏
|
||||
pod 'JXCategoryView'
|
||||
pod 'JXPagingView/Pager'
|
||||
@@ -39,7 +40,7 @@ target 'YuMi' do
|
||||
pod 'IQKeyboardManager'
|
||||
pod 'TZImagePickerController'
|
||||
#TRTC
|
||||
pod 'TXLiteAVSDK_TRTC', '~> 11.4.14445'
|
||||
pod 'TXLiteAVSDK_TRTC', '~> 11.4.14530'
|
||||
#vap礼物动画
|
||||
pod 'QGVAPlayer'
|
||||
#上传音乐
|
||||
@@ -64,9 +65,8 @@ target 'YuMi' do
|
||||
pod 'mob_linksdk_pro'
|
||||
pod 'mob_sharesdk'
|
||||
pod 'mob_sharesdk/ShareSDKPlatforms/Apple'
|
||||
pod 'mob_sharesdk/ShareSDKPlatforms/Line'
|
||||
#pod 'mob_sharesdk/ShareSDKPlatforms/Line'
|
||||
pod 'mob_sharesdk/ShareSDKExtension'
|
||||
pod 'mob_sharesdk/ShareSDKPlatforms/Facebook_Lite'
|
||||
|
||||
pod 'UMCommon'
|
||||
pod 'UMDevice'
|
||||
@@ -83,6 +83,10 @@ post_install do |installer|
|
||||
project.targets.each do |target|
|
||||
target.build_configurations.each do |config|
|
||||
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '11.0'
|
||||
xcconfig_path = config.base_configuration_reference.real_path
|
||||
xcconfig = File.read(xcconfig_path)
|
||||
xcconfig_mod = xcconfig.gsub(/DT_TOOLCHAIN_DIR/, "TOOLCHAIN_DIR")
|
||||
File.open(xcconfig_path, "w") { |file| file << xcconfig_mod }
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@@ -31,7 +31,7 @@
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Release"
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
|
@@ -10,6 +10,8 @@
|
||||
#import <NIMSDK/NIMSDK.h>
|
||||
#import <ShareSDK/ShareSDK.h>
|
||||
#import <UserNotifications/UNUserNotificationCenter.h>
|
||||
#import <UserNotifications/UserNotifications.h>
|
||||
#import <MOBFoundation/MobSDK+Privacy.h>
|
||||
///Tool
|
||||
#import "YUMIConstant.h"
|
||||
#import "CustomAttachmentDecoder.h"
|
||||
@@ -23,13 +25,19 @@
|
||||
#import "XCCurrentVCStackManager.h"
|
||||
#import "ClientConfig.h"
|
||||
#import <Adjust/Adjust.h>
|
||||
#import <UserNotifications/UserNotifications.h>
|
||||
|
||||
|
||||
#import <Bugly/Bugly.h>
|
||||
|
||||
#import "YuMi-swift.h"
|
||||
|
||||
|
||||
UIKIT_EXTERN NSString * kYouMiNumberCountKey;
|
||||
UIKIT_EXTERN NSString * adImageName;
|
||||
|
||||
|
||||
|
||||
@implementation AppDelegate (ThirdConfig)
|
||||
|
||||
|
||||
@@ -40,6 +48,24 @@ UIKIT_EXTERN NSString * adImageName;
|
||||
[self initEmojiData];
|
||||
[self configAdjust];
|
||||
[self configBugly];
|
||||
[self registerNot];
|
||||
}
|
||||
-(void)registerNot{
|
||||
if (@available(iOS 10.0, *)) {
|
||||
UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
|
||||
[center requestAuthorizationWithOptions:(UNAuthorizationOptionAlert | UNAuthorizationOptionBadge | UNAuthorizationOptionSound) completionHandler:^(BOOL granted, NSError * _Nullable error) {
|
||||
if (granted) {
|
||||
[center getNotificationSettingsWithCompletionHandler:^(UNNotificationSettings * _Nonnull settings) {
|
||||
if (settings.authorizationStatus == UNAuthorizationStatusAuthorized){
|
||||
dispatch_async(dispatch_get_main_queue(), ^{
|
||||
[[UIApplication sharedApplication] registerForRemoteNotifications];
|
||||
});
|
||||
}
|
||||
}];
|
||||
}
|
||||
}];
|
||||
}
|
||||
|
||||
}
|
||||
/**
|
||||
崩溃收集 Bugly
|
||||
@@ -47,19 +73,21 @@ UIKIT_EXTERN NSString * adImageName;
|
||||
- (void) configBugly {
|
||||
|
||||
BuglyConfig *config = [[BuglyConfig alloc] init];
|
||||
config.channel = @"App Enterprise";
|
||||
config.blockMonitorEnable = YES; // 卡顿监控开关,默认关闭
|
||||
|
||||
config.blockMonitorTimeout = 5;
|
||||
config.unexpectedTerminatingDetectionEnable = YES; // 非正常退出事件记录开关,默认关闭
|
||||
|
||||
#ifdef DEBUG
|
||||
config.debugMode = YES; // debug 模式下,开启调试模式
|
||||
config.channel = [YYUtility getAppSource];; config.blockMonitorEnable = YES; // 卡顿监控开关,默认关闭
|
||||
config.reportLogLevel = BuglyLogLevelVerbose; // 设置打印日志级别
|
||||
[Bugly startWithAppId:@"86cf73b8d5" config:config];
|
||||
#else
|
||||
config.debugMode = NO; // release 模式下,关闭调试模式
|
||||
config.channel = [YYUtility getAppSource];; config.blockMonitorEnable = NO; // 卡顿监控开关,默认关闭
|
||||
config.reportLogLevel = BuglyLogLevelWarn; // 设置自定义日志上报的级别,默认不上报自定义日志
|
||||
[Bugly startWithAppId:@"0fcba36f9a" config:config];
|
||||
NSString *buylyKey = isEnterprise == NO ? @"5334684d86" : @"d65df59a68";
|
||||
[Bugly startWithAppId:buylyKey config:config];
|
||||
#endif
|
||||
|
||||
}
|
||||
@@ -67,6 +95,15 @@ UIKIT_EXTERN NSString * adImageName;
|
||||
//推荐在程序启动的时候初始化 NIMSDK
|
||||
NSString *appKey = KeyWithType(KeyType_NetEase);
|
||||
NIMSDKOption *option = [NIMSDKOption optionWithAppKey:appKey];
|
||||
#ifdef DEBUG
|
||||
option.apnsCername = @"pikoDevelopPush";
|
||||
#else
|
||||
option.apnsCername = @"newPiko";
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
[[NIMSDK sharedSDK] registerWithOption:option];
|
||||
|
||||
// NIM SDK初始化
|
||||
@@ -100,14 +137,22 @@ UIKIT_EXTERN NSString * adImageName;
|
||||
[Adjust appDidLaunch:adjustConfig];
|
||||
}
|
||||
- (void)configShareSDK {
|
||||
|
||||
|
||||
|
||||
|
||||
[PILineLoginManager registerLine];
|
||||
|
||||
[ShareSDK registPlatforms:^(SSDKRegister *platformsRegister) {
|
||||
///faceBook
|
||||
// [platformsRegister setupFacebookWithAppkey:@"1266232494209868" appSecret:@"c9b170b383f8be9cdf118823b8632821" displayName:YMLocalizedString(@"AppDelegate_ThirdConfig0")];
|
||||
[platformsRegister setupLineAuthType:SSDKAuthorizeTypeBoth];
|
||||
}];
|
||||
NSString *isUpload = [[NSUserDefaults standardUserDefaults]valueForKey:@"kMobLinkUploadPrivacy"];
|
||||
if (isUpload == nil){
|
||||
[MobSDK uploadPrivacyPermissionStatus:YES onResult:^(BOOL success) {
|
||||
|
||||
}];
|
||||
[[NSUserDefaults standardUserDefaults] setValue:@"YES" forKey:@"kMobLinkUploadPrivacy"];
|
||||
[[NSUserDefaults standardUserDefaults] synchronize];
|
||||
}
|
||||
}
|
||||
|
||||
#pragma mark - 表情
|
||||
|
@@ -5,6 +5,8 @@
|
||||
// Created by admin on 2023/3/9.
|
||||
//
|
||||
|
||||
#import <MobLinkPro/MobLink.h>
|
||||
#import <MobLinkPro/MLSDKScene.h>
|
||||
#import "AppDelegate.h"
|
||||
#import "TabbarViewController.h"
|
||||
#import "BaseNavigationController.h"
|
||||
@@ -17,20 +19,37 @@
|
||||
#import <GoogleSignIn/GoogleSignIn.h>
|
||||
#import "GULAppDelegateSwizzler.h"
|
||||
#import <GoogleSignIn/GoogleSignIn.h>
|
||||
#import "XPLoginViewController.h"
|
||||
#import "AccountModel.h"
|
||||
#import "YuMi-swift.h"
|
||||
#import "SessionViewController.h"
|
||||
#import "LoginFullInfoViewController.h"
|
||||
@import Firebase;
|
||||
UIKIT_EXTERN NSString * const kOpenRoomNotification;
|
||||
|
||||
@interface AppDelegate ()
|
||||
@interface AppDelegate ()<IMLSDKRestoreDelegate>
|
||||
|
||||
@end
|
||||
|
||||
@implementation AppDelegate
|
||||
|
||||
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
|
||||
TabbarViewController *vc = [[TabbarViewController alloc] init];
|
||||
BaseNavigationController *bnc = [[BaseNavigationController alloc] initWithRootViewController:vc];
|
||||
|
||||
|
||||
self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
|
||||
self.window.rootViewController = bnc;
|
||||
|
||||
AccountModel *accountModel = [[AccountInfoStorage instance] getCurrentAccountInfo];
|
||||
if (accountModel == nil || accountModel.uid == nil || accountModel.access_token == nil) {
|
||||
XPLoginViewController *lvc = [[XPLoginViewController alloc] init];
|
||||
BaseNavigationController * nav = [[BaseNavigationController alloc] initWithRootViewController:lvc];
|
||||
nav.modalPresentationStyle = UIModalPresentationFullScreen;
|
||||
self.window.rootViewController = nav;
|
||||
}else{
|
||||
TabbarViewController *vc = [[TabbarViewController alloc] init];
|
||||
BaseNavigationController *bnc = [[BaseNavigationController alloc] initWithRootViewController:vc];
|
||||
self.window.rootViewController = bnc;
|
||||
}
|
||||
|
||||
[self.window makeKeyAndVisible];
|
||||
///设置广告页
|
||||
[self setupLaunchADView];
|
||||
@@ -43,12 +62,23 @@ UIKIT_EXTERN NSString * const kOpenRoomNotification;
|
||||
}
|
||||
[[FBSDKApplicationDelegate sharedInstance] application:application didFinishLaunchingWithOptions:launchOptions];
|
||||
[FIRApp configure];
|
||||
|
||||
[MobLink setDelegate:self];
|
||||
|
||||
|
||||
return YES;
|
||||
}
|
||||
|
||||
- (void) IMLSDKWillRestoreScene:(MLSDKScene *)scene Restore:(void (^)(BOOL, RestoreStyle))restoreHandler
|
||||
{
|
||||
NSString *inviteCode = scene.params[@"inviteCode"];
|
||||
if (inviteCode != nil && [[AccountInfoStorage instance]getUid].length == 0){
|
||||
ClientConfig *config = [ClientConfig shareConfig];
|
||||
config.inviteCode = inviteCode;
|
||||
}
|
||||
|
||||
restoreHandler(YES, MLDefault);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -87,13 +117,45 @@ UIKIT_EXTERN NSString * const kOpenRoomNotification;
|
||||
|
||||
- (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
|
||||
// 上传devicetoken至云信服务器。
|
||||
[[NIMSDK sharedSDK] updateApnsToken:deviceToken];
|
||||
[[NIMSDK sharedSDK] updateApnsToken:deviceToken ];
|
||||
}
|
||||
|
||||
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler{
|
||||
|
||||
NSString *data = userInfo[@"data"];
|
||||
if(data){
|
||||
NSDictionary *dataDic = [data mj_JSONObject];
|
||||
NSString *userId = dataDic[@"uid"];
|
||||
if(userId){
|
||||
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
|
||||
[[NSNotificationCenter defaultCenter]postNotificationName:kOpenRoomNotification object:nil userInfo:@{@"type":@"kOpenChat",@"uid":userId,@"isNoAttention":@(YES)}];
|
||||
ClientConfig *config = [ClientConfig shareConfig];
|
||||
config.pushChatId = userId;
|
||||
|
||||
});
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
|
||||
NSString *userId = userInfo[@"uid"];
|
||||
if(userId){
|
||||
[[NSNotificationCenter defaultCenter]postNotificationName:kOpenRoomNotification object:nil userInfo:@{@"type":@"kOpenChat",@"uid":userId,@"isNoAttention":@(YES)}];
|
||||
ClientConfig *config = [ClientConfig shareConfig];
|
||||
config.pushChatId = userId;
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
///URL Scheme跳转
|
||||
-(BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options{
|
||||
|
||||
|
||||
NSString *bundleID = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleIdentifier"];
|
||||
if ([url.scheme isEqualToString:[NSString stringWithFormat:@"line3rdp.%@",bundleID]]) {
|
||||
return [PILineLoginManager applicationOpenurl:app open:url];
|
||||
}
|
||||
|
||||
NSString *text = [url query];
|
||||
if(text.length){
|
||||
@@ -119,6 +181,12 @@ UIKIT_EXTERN NSString * const kOpenRoomNotification;
|
||||
[[NSNotificationCenter defaultCenter]postNotificationName:kOpenRoomNotification object:nil userInfo:@{@"type":@"kOpenChat",@"uid":uid}];
|
||||
ClientConfig *config = [ClientConfig shareConfig];
|
||||
config.chatId = uid;
|
||||
}else if (type == 8){
|
||||
NSString *inviteCode = paramsDict[@"inviteCode"];
|
||||
if (inviteCode != nil && [[AccountInfoStorage instance]getUid].length == 0){
|
||||
ClientConfig *config = [ClientConfig shareConfig];
|
||||
config.inviteCode = inviteCode;
|
||||
}
|
||||
}
|
||||
return YES;
|
||||
}
|
||||
|
16
YuMi/Appdelegate/YYTextAsyncLayer+PITextAsyncLayer.h
Normal file
@@ -0,0 +1,16 @@
|
||||
//
|
||||
// YYTextAsyncLayer+PITextAsyncLayer.h
|
||||
// YuMi
|
||||
//
|
||||
// Created by duoban on 2023/10/28.
|
||||
//
|
||||
|
||||
#import <YYText/YYTextAsyncLayer.h>
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface YYTextAsyncLayer (PITextAsyncLayer)
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
26
YuMi/Appdelegate/YYTextAsyncLayer+PITextAsyncLayer.m
Normal file
@@ -0,0 +1,26 @@
|
||||
//
|
||||
// YYTextAsyncLayer+PITextAsyncLayer.m
|
||||
// YuMi
|
||||
//
|
||||
// Created by duoban on 2023/10/28.
|
||||
//
|
||||
|
||||
#import "YYTextAsyncLayer+PITextAsyncLayer.h"
|
||||
|
||||
@implementation YYTextAsyncLayer (PITextAsyncLayer)
|
||||
///iOS17bug,如果不把方法替换会闪退
|
||||
+(void)load {
|
||||
Method displayMethod = class_getInstanceMethod(self, @selector(display));
|
||||
Method swizzingMethod = class_getInstanceMethod(self, @selector(swizzing_display));
|
||||
method_exchangeImplementations(displayMethod, swizzingMethod);
|
||||
}
|
||||
-(void)swizzing_display{
|
||||
//通过变量名称获取类中的实例成员变量
|
||||
if (self.bounds.size.width <= 0 || self.bounds.size.height <= 0) {
|
||||
self.contents = nil;
|
||||
return;
|
||||
} else {
|
||||
[self swizzing_display];
|
||||
}
|
||||
}
|
||||
@end
|
@@ -5,12 +5,12 @@
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_gift_broadcast_low_close@2x.png",
|
||||
"filename" : "room_treasure_fairy_bottom_bg@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_gift_broadcast_low_close@3x.png",
|
||||
"filename" : "room_treasure_fairy_bottom_bg@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
After Width: | Height: | Size: 30 KiB |
After Width: | Height: | Size: 75 KiB |
@@ -5,12 +5,12 @@
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_gift_broadcast_high_close@2x.png",
|
||||
"filename" : "room_treasure_fairy_bottom_buy@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_gift_broadcast_high_close@3x.png",
|
||||
"filename" : "room_treasure_fairy_bottom_buy@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 3.5 KiB |
@@ -5,12 +5,12 @@
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_treasure_bg@2x.png",
|
||||
"filename" : "room_treasure_fairy_bottom_icon@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_treasure_bg@3x.png",
|
||||
"filename" : "room_treasure_fairy_bottom_icon@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 2.2 KiB |
22
YuMi/Assets.xcassets/jm/Fairy/room_treasure_fairy_buy_elf_bg.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_buy_elf_bg@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_buy_elf_bg@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
After Width: | Height: | Size: 54 KiB |
After Width: | Height: | Size: 190 KiB |
22
YuMi/Assets.xcassets/jm/Fairy/room_treasure_fairy_buy_elf_but_btn.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_buy_elf_but_btn@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_buy_elf_but_btn@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
After Width: | Height: | Size: 3.3 KiB |
After Width: | Height: | Size: 10 KiB |
22
YuMi/Assets.xcassets/jm/Fairy/room_treasure_fairy_buy_elf_choose.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_buy_elf_choose@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_buy_elf_choose@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
After Width: | Height: | Size: 309 B |
After Width: | Height: | Size: 458 B |
@@ -5,12 +5,12 @@
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_gift_broadcast_middle_close@2x.png",
|
||||
"filename" : "room_treasure_fairy_buy_elf_icon@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_gift_broadcast_middle_close@3x.png",
|
||||
"filename" : "room_treasure_fairy_buy_elf_icon@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
After Width: | Height: | Size: 8.4 KiB |
After Width: | Height: | Size: 14 KiB |
@@ -5,12 +5,12 @@
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_gift_broadcast_high_avatar_board@2x.png",
|
||||
"filename" : "room_treasure_fairy_buy_elf_no_choose@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_gift_broadcast_high_avatar_board@3x.png",
|
||||
"filename" : "room_treasure_fairy_buy_elf_no_choose@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
After Width: | Height: | Size: 251 B |
After Width: | Height: | Size: 368 B |
22
YuMi/Assets.xcassets/jm/Fairy/room_treasure_fairy_buy_elf_price.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_buy_elf_price@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_buy_elf_price@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 2.8 KiB |
22
YuMi/Assets.xcassets/jm/Fairy/room_treasure_fairy_buy_elf_title.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_buy_elf_title@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_buy_elf_title@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
After Width: | Height: | Size: 9.4 KiB |
After Width: | Height: | Size: 18 KiB |
@@ -5,12 +5,12 @@
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_gift_broadcast_high_normal_nick_bg@2x.png",
|
||||
"filename" : "room_treasure_fairy_draw_diamond_rebrush@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_gift_broadcast_high_normal_nick_bg@3x.png",
|
||||
"filename" : "room_treasure_fairy_draw_diamond_rebrush@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
After Width: | Height: | Size: 495 B |
After Width: | Height: | Size: 689 B |
Before Width: | Height: | Size: 8.3 KiB After Width: | Height: | Size: 9.5 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 4.5 KiB |
Before Width: | Height: | Size: 8.4 KiB After Width: | Height: | Size: 9.6 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 4.2 KiB |
Before Width: | Height: | Size: 8.8 KiB After Width: | Height: | Size: 9.4 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 3.8 KiB |
Before Width: | Height: | Size: 8.5 KiB |
Before Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 9.7 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 31 KiB |
22
YuMi/Assets.xcassets/jm/Fairy/room_treasure_fairy_new_buy_elf_add.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_new_buy_elf_add@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_new_buy_elf_add@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
After Width: | Height: | Size: 3.4 KiB |
After Width: | Height: | Size: 5.6 KiB |
22
YuMi/Assets.xcassets/jm/Fairy/room_treasure_fairy_new_buy_elf_bg.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_new_buy_elf_bg@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_new_buy_elf_bg@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
After Width: | Height: | Size: 43 KiB |
After Width: | Height: | Size: 153 KiB |
22
YuMi/Assets.xcassets/jm/Fairy/room_treasure_fairy_new_buy_elf_subtract.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_new_buy_elf_subtract@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_new_buy_elf_subtract@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
After Width: | Height: | Size: 2.8 KiB |
After Width: | Height: | Size: 5.2 KiB |
22
YuMi/Assets.xcassets/jm/Fairy/room_treasure_fairy_new_buy_elf_title.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_new_buy_elf_title@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_new_buy_elf_title@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
After Width: | Height: | Size: 9.0 KiB |
After Width: | Height: | Size: 17 KiB |
22
YuMi/Assets.xcassets/jm/Fairy/room_treasure_fairy_new_userinfo_bg.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_new_userinfo_bg@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_new_userinfo_bg@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
After Width: | Height: | Size: 32 KiB |
After Width: | Height: | Size: 79 KiB |
Before Width: | Height: | Size: 8.4 KiB After Width: | Height: | Size: 9.1 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 18 KiB |
22
YuMi/Assets.xcassets/jm/Fairy/room_treasure_fairy_shop_new_exchange_bg.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_shop_new_exchange_bg@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_shop_new_exchange_bg@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 8.7 KiB After Width: | Height: | Size: 9.1 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 3.7 KiB |
Before Width: | Height: | Size: 4.8 KiB After Width: | Height: | Size: 6.1 KiB |
Before Width: | Height: | Size: 5.7 KiB |
Before Width: | Height: | Size: 9.9 KiB |
@@ -5,7 +5,7 @@
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_trials_high_ball_bg.png",
|
||||
"filename" : "room_treasure_fairy_trials_high_ball_bg@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
|
Before Width: | Height: | Size: 38 KiB |
After Width: | Height: | Size: 131 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 3.0 KiB |
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 4.6 KiB |
Before Width: | Height: | Size: 8.7 KiB After Width: | Height: | Size: 9.7 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 18 KiB |
@@ -5,7 +5,7 @@
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_treasure_fairy_trials_middle_ball_bg.png",
|
||||
"filename" : "room_treasure_fairy_trials_middle_ball_bg@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
|
Before Width: | Height: | Size: 33 KiB |
After Width: | Height: | Size: 55 KiB |
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 4.0 KiB After Width: | Height: | Size: 4.5 KiB |
Before Width: | Height: | Size: 8.5 KiB After Width: | Height: | Size: 9.6 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 4.4 KiB After Width: | Height: | Size: 6.7 KiB |
Before Width: | Height: | Size: 9.5 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 5.1 KiB |
Before Width: | Height: | Size: 5.4 KiB After Width: | Height: | Size: 9.4 KiB |