Compare commits
43 Commits
main
...
appstore_1
Author | SHA1 | Date | |
---|---|---|---|
![]() |
f2a45c2dfa | ||
![]() |
6f974e904b | ||
![]() |
caa34fe217 | ||
![]() |
54d1c9d581 | ||
![]() |
75c37ab91f | ||
![]() |
24159ab28d | ||
![]() |
0fdc0d1f8c | ||
![]() |
fa3d394dec | ||
![]() |
c069152790 | ||
![]() |
218fce3a37 | ||
![]() |
21bc7ba70e | ||
![]() |
e63c569a87 | ||
![]() |
a882a1a17f | ||
![]() |
26bf5b8ca3 | ||
![]() |
b055076e0a | ||
![]() |
b11f8d54f1 | ||
![]() |
b5f6ce4822 | ||
![]() |
6e84953469 | ||
![]() |
50dd5d20db | ||
![]() |
c5e3f6f615 | ||
![]() |
cdfcfb33c7 | ||
![]() |
f44942dc72 | ||
![]() |
8bda1a7f8a | ||
![]() |
00e4fd98bd | ||
![]() |
7a1ffa871a | ||
![]() |
471b84dc7f | ||
![]() |
6d9d005ff0 | ||
![]() |
0a98eb1873 | ||
![]() |
1048cd66c9 | ||
![]() |
25fe36f693 | ||
![]() |
948f81dc37 | ||
![]() |
16315040b0 | ||
![]() |
20458f8f31 | ||
![]() |
dba85043bc | ||
![]() |
01ce491831 | ||
![]() |
447b189d4f | ||
![]() |
bea4ee9c6c | ||
![]() |
e59ece7222 | ||
![]() |
979cc9f672 | ||
![]() |
fc0480ea2c | ||
![]() |
fff67e0aee | ||
![]() |
2e72436bb9 | ||
![]() |
6667348464 |
153
.gitignore
vendored
Normal file
@@ -0,0 +1,153 @@
|
|||||||
|
# Xcode
|
||||||
|
#
|
||||||
|
# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore
|
||||||
|
|
||||||
|
## Build generated
|
||||||
|
build/
|
||||||
|
DerivedData/
|
||||||
|
|
||||||
|
PlanetStar.xcodeproj/xcuserdata/
|
||||||
|
PlanetStar.xcworkspace/
|
||||||
|
|
||||||
|
*.swp
|
||||||
|
PlanetStar.xcodeproj/project.xcworkspace/xcuserdata/
|
||||||
|
|
||||||
|
## Various settings
|
||||||
|
*.pbxuser
|
||||||
|
!default.pbxuser
|
||||||
|
*.mode1v3
|
||||||
|
!default.mode1v3
|
||||||
|
*.mode2v3
|
||||||
|
!default.mode2v3
|
||||||
|
*.perspectivev3
|
||||||
|
!default.perspectivev3
|
||||||
|
xcuserdata/
|
||||||
|
|
||||||
|
## Other
|
||||||
|
*.moved-aside
|
||||||
|
*.xccheckout
|
||||||
|
*.xcscmblueprint
|
||||||
|
|
||||||
|
## Obj-C/Swift specific
|
||||||
|
*.hmap
|
||||||
|
*.ipa
|
||||||
|
*.dSYM.zip
|
||||||
|
*.dSYM
|
||||||
|
|
||||||
|
# CocoaPods
|
||||||
|
#
|
||||||
|
# We recommend against adding the Pods directory to your .gitignore. However
|
||||||
|
# you should judge for yourself, the pros and cons are mentioned at:
|
||||||
|
# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control
|
||||||
|
#
|
||||||
|
Pods/
|
||||||
|
|
||||||
|
# Carthage
|
||||||
|
#
|
||||||
|
# Add this line if you want to avoid checking in source code from Carthage dependencies.
|
||||||
|
# Carthage/Checkouts
|
||||||
|
|
||||||
|
Carthage/Build
|
||||||
|
|
||||||
|
# fastlane
|
||||||
|
#
|
||||||
|
# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the
|
||||||
|
# screenshots whenever they are needed.
|
||||||
|
# For more information about the recommended setup visit:
|
||||||
|
# https://docs.fastlane.tools/best-practices/source-control/#source-control
|
||||||
|
|
||||||
|
fastlane/report.xml
|
||||||
|
fastlane/Preview.html
|
||||||
|
fastlane/screenshots
|
||||||
|
fastlane/test_output
|
||||||
|
|
||||||
|
# Code Injection
|
||||||
|
#
|
||||||
|
# After new code Injection tools there's a generated folder /iOSInjectionProject
|
||||||
|
# https://github.com/johnno1962/injectionforxcode
|
||||||
|
|
||||||
|
iOSInjectionProject/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Compiled class file
|
||||||
|
*.class
|
||||||
|
|
||||||
|
# Log file
|
||||||
|
*.log
|
||||||
|
|
||||||
|
# BlueJ files
|
||||||
|
*.ctxt
|
||||||
|
|
||||||
|
# Mobile Tools for Java (J2ME)
|
||||||
|
.mtj.tmp/
|
||||||
|
|
||||||
|
# Package Files #
|
||||||
|
*.war
|
||||||
|
*.ear
|
||||||
|
*.zip
|
||||||
|
*.tar.gz
|
||||||
|
*.rar
|
||||||
|
|
||||||
|
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
|
||||||
|
hs_err_pid*
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Built application files
|
||||||
|
*.apk
|
||||||
|
*.ap_
|
||||||
|
|
||||||
|
# Files for the ART/Dalvik VM
|
||||||
|
*.dex
|
||||||
|
|
||||||
|
# Java class files
|
||||||
|
*.class
|
||||||
|
|
||||||
|
# Generated files
|
||||||
|
bin/
|
||||||
|
gen/
|
||||||
|
out/
|
||||||
|
|
||||||
|
# Gradle files
|
||||||
|
.gradle/
|
||||||
|
build/
|
||||||
|
|
||||||
|
# Local configuration file (sdk path, etc)
|
||||||
|
local.properties
|
||||||
|
|
||||||
|
# Proguard folder generated by Eclipse
|
||||||
|
proguard/
|
||||||
|
|
||||||
|
# Log Files
|
||||||
|
*.log
|
||||||
|
|
||||||
|
# Android Studio Navigation editor temp files
|
||||||
|
.navigation/
|
||||||
|
|
||||||
|
# Android Studio captures folder
|
||||||
|
captures/
|
||||||
|
|
||||||
|
# Intellij
|
||||||
|
*.iml
|
||||||
|
build/
|
||||||
|
.idea/
|
||||||
|
.gradle/
|
||||||
|
local.properties
|
||||||
|
|
||||||
|
# Keystore files
|
||||||
|
|
||||||
|
# External native build folder generated in Android Studio 2.2 and later
|
||||||
|
.externalNativeBuild
|
||||||
|
|
||||||
|
# Google Services (e.g. APIs or Firebase)
|
||||||
|
google-services.json
|
||||||
|
|
||||||
|
# Freeline
|
||||||
|
freeline.py
|
||||||
|
freeline/
|
||||||
|
freeline_project_description.json
|
||||||
|
iOS/Podfile.lock
|
||||||
|
Podfile.lock
|
||||||
|
*/.DS_Store
|
||||||
|
.DS_Store
|
10
Podfile
@@ -3,7 +3,10 @@
|
|||||||
source 'https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git'
|
source 'https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git'
|
||||||
target 'YuMi' do
|
target 'YuMi' do
|
||||||
use_frameworks!
|
use_frameworks!
|
||||||
|
pod 'Bugly'
|
||||||
|
pod 'Adjust', '~> 4.31.0'
|
||||||
|
pod 'Firebase/Analytics'
|
||||||
|
pod 'FBSDKLoginKit'
|
||||||
# 滑动标签栏
|
# 滑动标签栏
|
||||||
pod 'JXCategoryView'
|
pod 'JXCategoryView'
|
||||||
pod 'JXPagingView/Pager'
|
pod 'JXPagingView/Pager'
|
||||||
@@ -54,7 +57,6 @@ target 'YuMi' do
|
|||||||
pod 'GoogleSignIn', '6.2.4'
|
pod 'GoogleSignIn', '6.2.4'
|
||||||
pod 'mob_sharesdk'
|
pod 'mob_sharesdk'
|
||||||
pod 'mob_sharesdk/ShareSDKPlatforms/Apple'
|
pod 'mob_sharesdk/ShareSDKPlatforms/Apple'
|
||||||
pod 'mob_sharesdk/ShareSDKPlatforms/Facebook_Lite'
|
|
||||||
pod 'mob_sharesdk/ShareSDKPlatforms/Line'
|
pod 'mob_sharesdk/ShareSDKPlatforms/Line'
|
||||||
pod 'mob_sharesdk/ShareSDKExtension'
|
pod 'mob_sharesdk/ShareSDKExtension'
|
||||||
|
|
||||||
@@ -65,9 +67,9 @@ target 'YuMi' do
|
|||||||
pod 'ZLCollectionViewFlowLayout'
|
pod 'ZLCollectionViewFlowLayout'
|
||||||
pod 'WMZDropDownMenu'
|
pod 'WMZDropDownMenu'
|
||||||
pod 'TABAnimated'
|
pod 'TABAnimated'
|
||||||
pod 'YuMi',:path=>'yum'
|
pod 'YuMi',:path=>'yum'
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
post_install do |installer|
|
post_install do |installer|
|
||||||
installer.generated_projects.each do |project|
|
installer.generated_projects.each do |project|
|
||||||
project.targets.each do |target|
|
project.targets.each do |target|
|
||||||
|
10
YuMi.xcworkspace/contents.xcworkspacedata
generated
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<Workspace
|
||||||
|
version = "1.0">
|
||||||
|
<FileRef
|
||||||
|
location = "group:YuMi.xcodeproj">
|
||||||
|
</FileRef>
|
||||||
|
<FileRef
|
||||||
|
location = "group:Pods/Pods.xcodeproj">
|
||||||
|
</FileRef>
|
||||||
|
</Workspace>
|
8
YuMi.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>IDEDidComputeMac32BitWarning</key>
|
||||||
|
<true/>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
@@ -10,9 +10,12 @@
|
|||||||
NS_ASSUME_NONNULL_BEGIN
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
@interface AppDelegate (ThirdConfig)
|
@interface AppDelegate (ThirdConfig)
|
||||||
- (void)initTertiusDisposition;
|
/// 初始化一些第三方配置
|
||||||
|
- (void)initThirdConfig;
|
||||||
- (void)setupLaunchADRegard;
|
/**
|
||||||
|
设置广告页
|
||||||
|
*/
|
||||||
|
- (void)setupLaunchADView;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
NS_ASSUME_NONNULL_END
|
NS_ASSUME_NONNULL_END
|
||||||
|
@@ -6,20 +6,26 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#import "AppDelegate+ThirdConfig.h"
|
#import "AppDelegate+ThirdConfig.h"
|
||||||
|
///Third
|
||||||
#import <NIMSDK/NIMSDK.h>
|
#import <NIMSDK/NIMSDK.h>
|
||||||
#import <ShareSDK/ShareSDK.h>
|
#import <ShareSDK/ShareSDK.h>
|
||||||
#import <UserNotifications/UNUserNotificationCenter.h>
|
#import <UserNotifications/UNUserNotificationCenter.h>
|
||||||
|
///Tool
|
||||||
#import "YUMIConstant.h"
|
#import "YUMIConstant.h"
|
||||||
#import "CustomAttachmentDecoder.h"
|
#import "CustomAttachmentDecoder.h"
|
||||||
#import "MHTSpiritFacilitater.h"
|
#import "QEmotionHelper.h"
|
||||||
#import "YUMIAdvertiseRegard.h"
|
#import "XPAdvertiseView.h"
|
||||||
#import "YUMIAdIndicateTool.h"
|
#import "XPAdImageTool.h"
|
||||||
#import "YUMIMacroUitls.h"
|
#import "YUMIMacroUitls.h"
|
||||||
#import "AdvertiseMatrix.h"
|
#import "AdvertiseModel.h"
|
||||||
#import "YUMITissueRegardGovernancer.h"
|
#import "XPWebViewController.h"
|
||||||
#import "YUMIChamberRegardGovernancer.h"
|
#import "XPRoomViewController.h"
|
||||||
#import "XCCurrentVCStackExecutive.h"
|
#import "XCCurrentVCStackManager.h"
|
||||||
#import "ClientDisposition.h"
|
#import "ClientConfig.h"
|
||||||
|
#import <Adjust/Adjust.h>
|
||||||
|
|
||||||
|
#import <Bugly/Bugly.h>
|
||||||
|
|
||||||
|
|
||||||
UIKIT_EXTERN NSString * kYouMiNumberCountKey;
|
UIKIT_EXTERN NSString * kYouMiNumberCountKey;
|
||||||
UIKIT_EXTERN NSString * adImageName;
|
UIKIT_EXTERN NSString * adImageName;
|
||||||
@@ -27,22 +33,46 @@ UIKIT_EXTERN NSString * adImageName;
|
|||||||
@implementation AppDelegate (ThirdConfig)
|
@implementation AppDelegate (ThirdConfig)
|
||||||
|
|
||||||
|
|
||||||
- (void)initTertiusDisposition {
|
/// 初始化一些第三方配置
|
||||||
[self prohibitipositionPartowardsiciptowardsionSDK];
|
- (void)initThirdConfig {
|
||||||
[self prohibitipositionNEMCSDK];
|
[self configShareSDK];
|
||||||
[self initEmojiTowardsoloudspeaker];
|
[self configNIMSDK];
|
||||||
|
[self initEmojiData];
|
||||||
|
[self configAdjust];
|
||||||
|
[self configBugly];
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
崩溃收集 Bugly
|
||||||
|
*/
|
||||||
|
- (void) configBugly {
|
||||||
|
|
||||||
- (void)prohibitipositionNEMCSDK {
|
BuglyConfig *config = [[BuglyConfig alloc] init];
|
||||||
|
config.channel = @"App Enterprise";
|
||||||
NSString *appKey = KeyWithType(KeyGenre_NetEase);
|
config.blockMonitorEnable = YES; // 卡顿监控开关,默认关闭
|
||||||
|
config.blockMonitorTimeout = 5;
|
||||||
|
config.unexpectedTerminatingDetectionEnable = YES; // 非正常退出事件记录开关,默认关闭
|
||||||
|
|
||||||
|
#ifdef DEBUG
|
||||||
|
config.debugMode = YES; // debug 模式下,开启调试模式
|
||||||
|
config.reportLogLevel = BuglyLogLevelVerbose; // 设置打印日志级别
|
||||||
|
[Bugly startWithAppId:@"86cf73b8d5" config:config];
|
||||||
|
#else
|
||||||
|
config.debugMode = NO; // release 模式下,关闭调试模式
|
||||||
|
config.reportLogLevel = BuglyLogLevelWarn; // 设置自定义日志上报的级别,默认不上报自定义日志
|
||||||
|
[Bugly startWithAppId:@"0fcba36f9a" config:config];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
}
|
||||||
|
- (void)configNIMSDK {
|
||||||
|
//推荐在程序启动的时候初始化 NIMSDK
|
||||||
|
NSString *appKey = KeyWithType(KeyType_NetEase);
|
||||||
NIMSDKOption *option = [NIMSDKOption optionWithAppKey:appKey];
|
NIMSDKOption *option = [NIMSDKOption optionWithAppKey:appKey];
|
||||||
[[NIMSDK sharedSDK] registerWithOption:option];
|
[[NIMSDK sharedSDK] registerWithOption:option];
|
||||||
|
|
||||||
|
// NIM SDK初始化
|
||||||
[NIMCustomObject registerCustomDecoder:[[CustomAttachmentDecoder alloc] init]];
|
[NIMCustomObject registerCustomDecoder:[[CustomAttachmentDecoder alloc] init]];
|
||||||
[NIMSDKConfig sharedConfig].shouldConsiderRevokedMessageUnreadCount = YES;
|
[NIMSDKConfig sharedConfig].shouldConsiderRevokedMessageUnreadCount = YES;
|
||||||
|
///置顶会话同步
|
||||||
[[NIMSDKConfig sharedConfig] setShouldSyncStickTopSessionInfos:YES];
|
[[NIMSDKConfig sharedConfig] setShouldSyncStickTopSessionInfos:YES];
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
[NIMSDKConfig sharedConfig].enabledHttpsForInfo = NO;
|
[NIMSDKConfig sharedConfig].enabledHttpsForInfo = NO;
|
||||||
@@ -50,17 +80,38 @@ UIKIT_EXTERN NSString * adImageName;
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
-(void)configAdjust{
|
||||||
- (void)prohibitipositionPartowardsiciptowardsionSDK {
|
NSString *appToken = @"p5sndfu9udq8";
|
||||||
[ShareSDK registPlatforms:^(SSDKRegister *platformsRegister) {
|
NSString *environment;
|
||||||
|
#ifdef DEBUG
|
||||||
[platformsRegister setupFacebookWithAppkey:@"1266232494209868" appSecret:@"c9b170b383f8be9cdf118823b8632821" displayName:YMLocalizedString(@"App_Delegate__Third_Config_0")];
|
environment = ADJEnvironmentSandbox;
|
||||||
[platformsRegister setupLineAuthType:SSDKAuthorizeTypeBoth];
|
#else
|
||||||
}];
|
environment = ADJEnvironmentProduction;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
ADJConfig*adjustConfig = [ADJConfig configWithAppToken:appToken
|
||||||
|
environment:environment];
|
||||||
|
|
||||||
|
#ifdef DEBUG
|
||||||
|
[adjustConfig setLogLevel:ADJLogLevelVerbose];
|
||||||
|
#else
|
||||||
|
|
||||||
|
#endif
|
||||||
|
[Adjust appDidLaunch:adjustConfig];
|
||||||
|
}
|
||||||
|
- (void)configShareSDK {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// [ShareSDK registPlatforms:^(SSDKRegister *platformsRegister) {
|
||||||
|
// ///faceBook
|
||||||
|
// [platformsRegister setupFacebookWithAppkey:@"1266232494209868" appSecret:@"c9b170b383f8be9cdf118823b8632821" displayName:YMLocalizedString(@"AppDelegate_ThirdConfig0")];
|
||||||
|
// [platformsRegister setupLineAuthType:SSDKAuthorizeTypeBoth];
|
||||||
|
// }];
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark - 表情
|
#pragma mark - 表情
|
||||||
- (void)initEmojiTowardsoloudspeaker {
|
- (void)initEmojiData {
|
||||||
NSArray * dicArray = [NSArray arrayWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"emoji" ofType:@"plist"]];
|
NSArray * dicArray = [NSArray arrayWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"emoji" ofType:@"plist"]];
|
||||||
NSDictionary * dic = [dicArray firstObject];
|
NSDictionary * dic = [dicArray firstObject];
|
||||||
NSArray * emojiArray = dic[@"data"];
|
NSArray * emojiArray = dic[@"data"];
|
||||||
@@ -68,25 +119,27 @@ UIKIT_EXTERN NSString * adImageName;
|
|||||||
for (int i = 0; i < emojiArray.count; i++) {
|
for (int i = 0; i < emojiArray.count; i++) {
|
||||||
NSDictionary * dic = [emojiArray objectAtIndex:i];
|
NSDictionary * dic = [emojiArray objectAtIndex:i];
|
||||||
UIImage * image = [UIImage imageNamed:dic[@"file"]];
|
UIImage * image = [UIImage imageNamed:dic[@"file"]];
|
||||||
MHTSpirit * info = [[MHTSpirit alloc] init];
|
QEmotion * info = [[QEmotion alloc] init];
|
||||||
info.identifier = dic[@"id"];
|
info.identifier = dic[@"id"];
|
||||||
info.image = image;
|
info.image = image;
|
||||||
info.displayName = dic[@"tag"];
|
info.displayName = dic[@"tag"];
|
||||||
[array addObject:info];
|
[array addObject:info];
|
||||||
}
|
}
|
||||||
|
//在这里强烈建议先预加载一下表情
|
||||||
MHTSpiritFacilitater *faceManager = [MHTSpiritFacilitater partowardsiciptowardsiondSenintrtowardsemporalntFacilittowardseer];
|
QEmotionHelper *faceManager = [QEmotionHelper sharedEmotionHelper];
|
||||||
faceManager.senintratemporalntGarment = array;
|
faceManager.emotionArray = array;
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark - 广告
|
#pragma mark - 广告
|
||||||
|
|
||||||
|
/**
|
||||||
- (void)setupLaunchADRegard {
|
设置广告页
|
||||||
|
*/
|
||||||
|
- (void)setupLaunchADView {
|
||||||
NSUserDefaults * kUserDefaults = NSUserDefaults.standardUserDefaults;
|
NSUserDefaults * kUserDefaults = NSUserDefaults.standardUserDefaults;
|
||||||
|
// 判断沙盒中是否存在广告图片,如果存在,直接显示
|
||||||
NSString *filePath = [YUMIAdIndicateTool.partowardsiciptowardsionIndictowardseUtensil acquireAccurtowardseRouteAboutIndictowardseConstitute:[kUserDefaults valueForKey:adImageName]];
|
NSString *filePath = [XPAdImageTool.shareImageTool getFilePathWithImageName:[kUserDefaults valueForKey:adImageName]];
|
||||||
BOOL isExist = [YUMIAdIndicateTool.partowardsiciptowardsionIndictowardseUtensil isAccurtowardseExistAboutAccurtowardseRoute:filePath];
|
BOOL isExist = [XPAdImageTool.shareImageTool isFileExistWithFilePath:filePath];
|
||||||
NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];
|
NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];
|
||||||
|
|
||||||
if ([userDefault integerForKey:@"adShow"]) {
|
if ([userDefault integerForKey:@"adShow"]) {
|
||||||
@@ -95,20 +148,23 @@ UIKIT_EXTERN NSString * adImageName;
|
|||||||
[userDefault setInteger:1 forKey:@"adShow"];
|
[userDefault setInteger:1 forKey:@"adShow"];
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isExist) {
|
if (isExist) {// 图片存在
|
||||||
|
|
||||||
if ([userDefault integerForKey:@"adShow"] > 4) {
|
if ([userDefault integerForKey:@"adShow"] > 4) {
|
||||||
@kWeakify(self);
|
@kWeakify(self);
|
||||||
NSString *imageName = [kUserDefaults valueForKey:adImageName];
|
NSString *imageName = [kUserDefaults valueForKey:adImageName];
|
||||||
AdvertiseMatrix *info = [YUMIAdIndicateTool.partowardsiciptowardsionIndictowardseUtensil acquireDirectoryAbstractByvirtueofConcealInMainAbout:imageName];
|
AdvertiseModel *info = [XPAdImageTool.shareImageTool getAdInfoFromCacheInMainWith:imageName];
|
||||||
YUMIAdvertiseRegard *advertiseView = [[YUMIAdvertiseRegard alloc] initWithFrame:self.window.bounds];
|
XPAdvertiseView *advertiseView = [[XPAdvertiseView alloc] initWithFrame:self.window.bounds];
|
||||||
advertiseView.filePath = filePath;
|
advertiseView.filePath = filePath;
|
||||||
advertiseView.disappearHandler = ^(BOOL shouldJump) {
|
advertiseView.dismissHandler = ^(BOOL shouldJump) {
|
||||||
@kStrongify(self)
|
@kStrongify(self)
|
||||||
if (!shouldJump || info == nil) {
|
if (!shouldJump || info == nil) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
[self performSelectorOnMainThread:@selector(advertiseJumpShankAboutAbstract:) withObject:info waitUntilDone:NO];
|
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
|
||||||
|
[self performSelectorOnMainThread:@selector(advertiseJumpHandleWithInfo:) withObject:info waitUntilDone:NO];
|
||||||
|
});
|
||||||
|
|
||||||
};
|
};
|
||||||
[advertiseView show];
|
[advertiseView show];
|
||||||
}
|
}
|
||||||
@@ -116,32 +172,33 @@ UIKIT_EXTERN NSString * adImageName;
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
- (void)advertiseJumpShankAboutAbstract:(AdvertiseMatrix *)info {
|
/// 闪屏广告跳转处理
|
||||||
if (![ClientDisposition partowardsiciptowardsionDisposition].canUnfoild) {
|
- (void)advertiseJumpHandleWithInfo:(AdvertiseModel *)info {
|
||||||
|
if (![ClientConfig shareConfig].canOpen) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (UIApplication.sharedApplication.keyWindow != self.window) {
|
if (UIApplication.sharedApplication.keyWindow != self.window) {
|
||||||
|
//当前窗口不是主控制器所在窗口时,拦截跳转(目前可能情况时,闪屏后出现新人引导
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (info.type) {
|
switch (info.type) {
|
||||||
case SplashAbstractSkipGenreRoom: {
|
case SplashInfoSkipTypeRoom: {
|
||||||
if (![[YUMIAdIndicateTool partowardsiciptowardsionIndictowardseUtensil] isImSurmount]) {
|
if (![[XPAdImageTool shareImageTool] isImLogin]) {
|
||||||
return;
|
return; // 必须登录后才可以跳转
|
||||||
}
|
}
|
||||||
|
// 跳转房间
|
||||||
if (info.link.length > 0) {
|
if (info.link.length > 0) {
|
||||||
[YUMIChamberRegardGovernancer unfoildChamber:info.link viewController:[XCCurrentVCStackExecutive shareManager].getCurrentVC];
|
[XPRoomViewController openRoom:info.link viewController:[XCCurrentVCStackManager shareManager].getCurrentVC];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case SplashAbstractSkipGenreWeb: {
|
case SplashInfoSkipTypeWeb: {
|
||||||
|
// 跳转 H5
|
||||||
if (info.link.length > 0) {
|
if (info.link.length > 0) {
|
||||||
YUMITissueRegardGovernancer *webView = [[YUMITissueRegardGovernancer alloc]init];
|
XPWebViewController *webView = [[XPWebViewController alloc]init];
|
||||||
webView.url = info.link;
|
webView.url = info.link;
|
||||||
[[[XCCurrentVCStackExecutive shareManager]universalBreeadcrumbGovernancer] pushViewController:webView animated:YES];
|
[[[XCCurrentVCStackManager shareManager]currentNavigationController] pushViewController:webView animated:YES];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@@ -14,7 +14,7 @@
|
|||||||
@property(nonatomic,strong,readonly)NSManagedObjectModel *managedObjectModel;
|
@property(nonatomic,strong,readonly)NSManagedObjectModel *managedObjectModel;
|
||||||
@property(nonatomic,strong,readonly)NSPersistentStoreCoordinator *persistentStoreCoordinator;
|
@property(nonatomic,strong,readonly)NSPersistentStoreCoordinator *persistentStoreCoordinator;
|
||||||
|
|
||||||
- (void)preserveConessay;
|
- (void)saveContext;
|
||||||
- (NSURL *)aplictowardsionlictowardsionDocumentsDirectoryvisory;
|
- (NSURL *)applicationDocumentsDirectory;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
@@ -6,11 +6,16 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#import "AppDelegate.h"
|
#import "AppDelegate.h"
|
||||||
#import "TabbarRegardGovernancer.h"
|
#import "TabbarViewController.h"
|
||||||
#import "BaseNevigationGovernancer.h"
|
#import "BaseNavigationController.h"
|
||||||
#import "AppDelegate+ThirdConfig.h"
|
#import "AppDelegate+ThirdConfig.h"
|
||||||
#import <NIMSDK/NIMSDK.h>
|
#import <NIMSDK/NIMSDK.h>
|
||||||
#import <UMCommon/UMCommon.h>
|
#import <UMCommon/UMCommon.h>
|
||||||
|
#import <FBSDKCoreKit/FBSDKCoreKit.h>
|
||||||
|
#import <AppTrackingTransparency/AppTrackingTransparency.h>
|
||||||
|
@import Firebase;
|
||||||
|
UIKIT_EXTERN NSString * const kOpenRoomNotification;
|
||||||
|
|
||||||
@interface AppDelegate ()
|
@interface AppDelegate ()
|
||||||
|
|
||||||
@end
|
@end
|
||||||
@@ -18,20 +23,22 @@
|
|||||||
@implementation AppDelegate
|
@implementation AppDelegate
|
||||||
|
|
||||||
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
|
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
|
||||||
TabbarRegardGovernancer *vc = [[TabbarRegardGovernancer alloc] init];
|
TabbarViewController *vc = [[TabbarViewController alloc] init];
|
||||||
BaseNevigationGovernancer *bnc = [[BaseNevigationGovernancer alloc] initWithRootViewController:vc];
|
BaseNavigationController *bnc = [[BaseNavigationController alloc] initWithRootViewController:vc];
|
||||||
self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
|
self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
|
||||||
self.window.rootViewController = bnc;
|
self.window.rootViewController = bnc;
|
||||||
[self.window makeKeyAndVisible];
|
[self.window makeKeyAndVisible];
|
||||||
|
///设置广告页
|
||||||
[self setupLaunchADRegard];
|
[self setupLaunchADView];
|
||||||
|
///初始化一些 sdk配置
|
||||||
[self initTertiusDisposition];
|
[self initThirdConfig];
|
||||||
|
// 只有同意过了隐私协议 才初始化
|
||||||
if ([[NSUserDefaults standardUserDefaults] objectForKey:@"kYouMinumbernnagna"]) {
|
if ([[NSUserDefaults standardUserDefaults] objectForKey:@"kYouMinumbernnagna"]) {
|
||||||
|
///初始化友盟
|
||||||
[UMConfigure initWithAppkey:@"6434c6dfd64e686139618269" channel:@"yumi_appstore"];
|
[UMConfigure initWithAppkey:@"6434c6dfd64e686139618269" channel:@"yumi_appstore"];
|
||||||
}
|
}
|
||||||
|
[[FBSDKApplicationDelegate sharedInstance] application:application didFinishLaunchingWithOptions:launchOptions];
|
||||||
|
[FIRApp configure];
|
||||||
return YES;
|
return YES;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -40,24 +47,86 @@
|
|||||||
NSInteger count = [NIMSDK sharedSDK].conversationManager.allUnreadCount;
|
NSInteger count = [NIMSDK sharedSDK].conversationManager.allUnreadCount;
|
||||||
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:count];
|
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:count];
|
||||||
}
|
}
|
||||||
|
- (void)applicationDidBecomeActive:(UIApplication *)application {
|
||||||
|
[self getAdvertisingTrackingAuthority];
|
||||||
|
}
|
||||||
|
- (void)getAdvertisingTrackingAuthority {
|
||||||
|
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
|
||||||
|
if (@available(iOS 14, *)) {
|
||||||
|
ATTrackingManagerAuthorizationStatus status = ATTrackingManager.trackingAuthorizationStatus;
|
||||||
|
switch (status) {
|
||||||
|
case ATTrackingManagerAuthorizationStatusDenied:
|
||||||
|
NSLog(@"用户拒绝IDFA");
|
||||||
|
break;
|
||||||
|
case ATTrackingManagerAuthorizationStatusAuthorized:
|
||||||
|
NSLog(@"用户允许IDFA");
|
||||||
|
break;
|
||||||
|
case ATTrackingManagerAuthorizationStatusNotDetermined: {
|
||||||
|
NSLog(@"用户未做选择或未弹窗IDFA");
|
||||||
|
//请求弹出用户授权框,只会在程序运行是弹框1次,除非卸载app重装,通地图、相机等权限弹框一样
|
||||||
|
[ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {
|
||||||
|
NSLog(@"app追踪IDFA权限:%lu",(unsigned long)status);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
- (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
|
- (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
|
||||||
|
// 上传devicetoken至云信服务器。
|
||||||
[[NIMSDK sharedSDK] updateApnsToken:deviceToken];
|
[[NIMSDK sharedSDK] updateApnsToken:deviceToken];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
///URL Scheme跳转
|
||||||
|
-(BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options{
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
NSString *text = [url query];
|
||||||
|
if(text.length){
|
||||||
|
NSMutableDictionary *paramsDict = [NSMutableDictionary dictionary];
|
||||||
|
NSArray *paramArray = [text componentsSeparatedByString:@"&"];
|
||||||
|
for (NSString *param in paramArray) {
|
||||||
|
if (param && param.length) {
|
||||||
|
NSArray *parArr = [param componentsSeparatedByString:@"="];
|
||||||
|
if (parArr.count == 2) {
|
||||||
|
[paramsDict setObject:parArr[1] forKey:parArr[0]];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(paramsDict[@"type"] != nil){
|
||||||
|
NSInteger type = [paramsDict[@"type"] integerValue];
|
||||||
|
if (type == 2) {
|
||||||
|
NSString *uid = [NSString stringWithFormat:@"%@",paramsDict[@"uid"]];
|
||||||
|
[[NSNotificationCenter defaultCenter]postNotificationName:kOpenRoomNotification object:nil userInfo:@{@"uid":uid}];
|
||||||
|
|
||||||
|
}
|
||||||
|
return YES;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
return [[FBSDKApplicationDelegate sharedInstance] application:app
|
||||||
|
openURL:url
|
||||||
|
sourceApplication:options[UIApplicationOpenURLOptionsSourceApplicationKey]
|
||||||
|
annotation:options[UIApplicationOpenURLOptionsAnnotationKey]];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#pragma mark - Core Data stack
|
#pragma mark - Core Data stack
|
||||||
@synthesize managedObjectContext = _managedObjectContext;
|
@synthesize managedObjectContext = _managedObjectContext;
|
||||||
@synthesize managedObjectModel = _managedObjectModel;
|
@synthesize managedObjectModel = _managedObjectModel;
|
||||||
@synthesize persistentStoreCoordinator = _persistentStoreCoordinator;
|
@synthesize persistentStoreCoordinator = _persistentStoreCoordinator;
|
||||||
|
|
||||||
-(NSURL *)aplictowardsionlictowardsionDocumentsDirectoryvisory{
|
-(NSURL *)applicationDocumentsDirectory{
|
||||||
return [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject];
|
return [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (NSManagedObjectModel *)managedObjectModel {
|
- (NSManagedObjectModel *)managedObjectModel {
|
||||||
|
// The managed object model for the application. It is a fatal error for the application not to be able to find and load its model.
|
||||||
if (_managedObjectModel != nil) {
|
if (_managedObjectModel != nil) {
|
||||||
return _managedObjectModel;
|
return _managedObjectModel;
|
||||||
}
|
}
|
||||||
@@ -67,26 +136,26 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
- (NSPersistentStoreCoordinator *)persistentStoreCoordinator {
|
- (NSPersistentStoreCoordinator *)persistentStoreCoordinator {
|
||||||
|
// The persistent store coordinator for the application. This implementation creates and returns a coordinator, having added the store for the application to it.
|
||||||
if (_persistentStoreCoordinator != nil) {
|
if (_persistentStoreCoordinator != nil) {
|
||||||
return _persistentStoreCoordinator;
|
return _persistentStoreCoordinator;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Create the coordinator and store
|
||||||
|
|
||||||
_persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]];
|
_persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]];
|
||||||
NSURL *storeURL = [[self aplictowardsionlictowardsionDocumentsDirectoryvisory] URLByAppendingPathComponent:@"_1_______.sqlite"];
|
NSURL *storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@"_1_______.sqlite"];
|
||||||
NSError *error = nil;
|
NSError *error = nil;
|
||||||
NSString *failureReason = @"There was an error creating or loading the application's saved data.";
|
NSString *failureReason = @"There was an error creating or loading the application's saved data.";
|
||||||
if (![_persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:nil error:&error]) {
|
if (![_persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:nil error:&error]) {
|
||||||
|
// Report any error we got.
|
||||||
NSMutableDictionary *dict = [NSMutableDictionary dictionary];
|
NSMutableDictionary *dict = [NSMutableDictionary dictionary];
|
||||||
dict[NSLocalizedDescriptionKey] = @"Failed to initialize the application's saved data";
|
dict[NSLocalizedDescriptionKey] = @"Failed to initialize the application's saved data";
|
||||||
dict[NSLocalizedFailureReasonErrorKey] = failureReason;
|
dict[NSLocalizedFailureReasonErrorKey] = failureReason;
|
||||||
dict[NSUnderlyingErrorKey] = error;
|
dict[NSUnderlyingErrorKey] = error;
|
||||||
error = [NSError errorWithDomain:@"YOUR_ERROR_DOMAIN" code:9999 userInfo:dict];
|
error = [NSError errorWithDomain:@"YOUR_ERROR_DOMAIN" code:9999 userInfo:dict];
|
||||||
|
// Replace this with code to handle the error appropriately.
|
||||||
|
// abort() causes the application to generate a crash log and terminate. You should not use this function in a shipping application, although it may be useful during development.
|
||||||
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
|
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
@@ -96,7 +165,7 @@
|
|||||||
|
|
||||||
|
|
||||||
- (NSManagedObjectContext *)managedObjectContext {
|
- (NSManagedObjectContext *)managedObjectContext {
|
||||||
|
// Returns the managed object context for the application (which is already bound to the persistent store coordinator for the application.)
|
||||||
if (_managedObjectContext != nil) {
|
if (_managedObjectContext != nil) {
|
||||||
return _managedObjectContext;
|
return _managedObjectContext;
|
||||||
}
|
}
|
||||||
@@ -112,13 +181,13 @@
|
|||||||
|
|
||||||
#pragma mark - Core Data Saving support
|
#pragma mark - Core Data Saving support
|
||||||
|
|
||||||
- (void)preserveConessay {
|
- (void)saveContext {
|
||||||
NSManagedObjectContext *managedObjectContext = self.managedObjectContext;
|
NSManagedObjectContext *managedObjectContext = self.managedObjectContext;
|
||||||
if (managedObjectContext != nil) {
|
if (managedObjectContext != nil) {
|
||||||
NSError *error = nil;
|
NSError *error = nil;
|
||||||
if ([managedObjectContext hasChanges] && ![managedObjectContext save:&error]) {
|
if ([managedObjectContext hasChanges] && ![managedObjectContext save:&error]) {
|
||||||
|
// Replace this implementation with code to handle the error appropriately.
|
||||||
|
// abort() causes the application to generate a crash log and terminate. You should not use this function in a shipping application, although it may be useful during development.
|
||||||
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
|
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
|
@@ -1,7 +0,0 @@
|
|||||||
{"colors": [{"idiom": "universal"}], "info": {"author": "xcode", "version": 1}}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Before Width: | Height: | Size: 150 KiB |
BIN
YuMi/Assets.xcassets/AppIcon.appiconset/1024*1024.png
Normal file
After Width: | Height: | Size: 74 KiB |
@@ -1,7 +1,14 @@
|
|||||||
{"images": [{"filename": "1024.png", "idiom": "universal", "platform": "ios", "size": "1024x1024"}], "info": {"author": "xcode", "version": 1}}
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"filename" : "1024*1024.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"platform" : "ios",
|
||||||
|
"size" : "1024x1024"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@@ -1,7 +1,6 @@
|
|||||||
{"info": {"author": "xcode", "version": 1}}
|
{
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -1,7 +1,6 @@
|
|||||||
{"info": {"author": "xcode", "version": 1}}
|
{
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
22
YuMi/Assets.xcassets/Login/login_agree.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_agree@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_agree@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_agree.imageset/login_agree@2x.png
vendored
Normal file
After Width: | Height: | Size: 410 B |
BIN
YuMi/Assets.xcassets/Login/login_agree.imageset/login_agree@3x.png
vendored
Normal file
After Width: | Height: | Size: 656 B |
22
YuMi/Assets.xcassets/Login/login_apple.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_apple@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_apple@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_apple.imageset/login_apple@2x.png
vendored
Normal file
After Width: | Height: | Size: 1004 B |
BIN
YuMi/Assets.xcassets/Login/login_apple.imageset/login_apple@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.6 KiB |
22
YuMi/Assets.xcassets/Login/login_area_arrow.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_area_arrow@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_area_arrow@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_area_arrow.imageset/login_area_arrow@2x.png
vendored
Normal file
After Width: | Height: | Size: 175 B |
BIN
YuMi/Assets.xcassets/Login/login_area_arrow.imageset/login_area_arrow@3x.png
vendored
Normal file
After Width: | Height: | Size: 206 B |
22
YuMi/Assets.xcassets/Login/login_arrow.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_arrow@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_arrow@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_arrow.imageset/login_arrow@2x.png
vendored
Normal file
After Width: | Height: | Size: 172 B |
BIN
YuMi/Assets.xcassets/Login/login_arrow.imageset/login_arrow@3x.png
vendored
Normal file
After Width: | Height: | Size: 255 B |
22
YuMi/Assets.xcassets/Login/login_auth_bubble.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_auth_bubble@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_auth_bubble@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_auth_bubble.imageset/login_auth_bubble@2x.png
vendored
Normal file
After Width: | Height: | Size: 1.9 KiB |
BIN
YuMi/Assets.xcassets/Login/login_auth_bubble.imageset/login_auth_bubble@3x.png
vendored
Normal file
After Width: | Height: | Size: 3.8 KiB |
21
YuMi/Assets.xcassets/Login/login_bind_phone_bg.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_bind_phone_bg@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_bind_phone_bg.imageset/login_bind_phone_bg@2x.png
vendored
Normal file
After Width: | Height: | Size: 21 KiB |
22
YuMi/Assets.xcassets/Login/login_bind_phone_success.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_bind_phone_success@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_bind_phone_success@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_bind_phone_success.imageset/login_bind_phone_success@2x.png
vendored
Normal file
After Width: | Height: | Size: 916 B |
BIN
YuMi/Assets.xcassets/Login/login_bind_phone_success.imageset/login_bind_phone_success@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.6 KiB |
22
YuMi/Assets.xcassets/Login/login_button.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"filename" : "login_button@2x.png",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"filename" : "login_button@3x.png",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"version" : 1,
|
||||||
|
"author" : "xcode"
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_button.imageset/login_button@2x.png
vendored
Normal file
After Width: | Height: | Size: 3.8 KiB |
BIN
YuMi/Assets.xcassets/Login/login_button.imageset/login_button@3x.png
vendored
Normal file
After Width: | Height: | Size: 7.2 KiB |
22
YuMi/Assets.xcassets/Login/login_button_sel.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"filename" : "login_button_sel@2x.png",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"filename" : "login_button_sel@3x.png",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"version" : 1,
|
||||||
|
"author" : "xcode"
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_button_sel.imageset/login_button_sel@2x.png
vendored
Normal file
After Width: | Height: | Size: 3.8 KiB |
BIN
YuMi/Assets.xcassets/Login/login_button_sel.imageset/login_button_sel@3x.png
vendored
Normal file
After Width: | Height: | Size: 7.1 KiB |
BIN
YuMi/Assets.xcassets/Login/login_china_mobile.imageset/ChinaMobile_icon@2x.png
vendored
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
YuMi/Assets.xcassets/Login/login_china_mobile.imageset/ChinaMobile_icon@3x.png
vendored
Normal file
After Width: | Height: | Size: 26 KiB |
22
YuMi/Assets.xcassets/Login/login_china_mobile.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "ChinaMobile_icon@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "ChinaMobile_icon@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
22
YuMi/Assets.xcassets/Login/login_choose_phone_bg.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_choose_phone_bg@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_choose_phone_bg@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_choose_phone_bg.imageset/login_choose_phone_bg@2x.png
vendored
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
YuMi/Assets.xcassets/Login/login_choose_phone_bg.imageset/login_choose_phone_bg@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.7 KiB |
22
YuMi/Assets.xcassets/Login/login_choose_pwd_bg.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_choose_pwd_bg@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_choose_pwd_bg@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_choose_pwd_bg.imageset/login_choose_pwd_bg@2x.png
vendored
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
YuMi/Assets.xcassets/Login/login_choose_pwd_bg.imageset/login_choose_pwd_bg@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.7 KiB |
22
YuMi/Assets.xcassets/Login/login_ct_mobile.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "ctmobile_icon@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "ctmobile_icon@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_ct_mobile.imageset/ctmobile_icon@2x.png
vendored
Normal file
After Width: | Height: | Size: 29 KiB |
BIN
YuMi/Assets.xcassets/Login/login_ct_mobile.imageset/ctmobile_icon@3x.png
vendored
Normal file
After Width: | Height: | Size: 55 KiB |
22
YuMi/Assets.xcassets/Login/login_disagree.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_disagree@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_disagree@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_disagree.imageset/login_disagree@2x.png
vendored
Normal file
After Width: | Height: | Size: 306 B |
BIN
YuMi/Assets.xcassets/Login/login_disagree.imageset/login_disagree@3x.png
vendored
Normal file
After Width: | Height: | Size: 461 B |
22
YuMi/Assets.xcassets/Login/login_facebook.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_facebook@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_facebook@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_facebook.imageset/login_facebook@2x.png
vendored
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
YuMi/Assets.xcassets/Login/login_facebook.imageset/login_facebook@3x.png
vendored
Normal file
After Width: | Height: | Size: 2.6 KiB |
22
YuMi/Assets.xcassets/Login/login_forget_password_hidden.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_forget_password_hidden@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_forget_password_hidden@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_forget_password_hidden.imageset/login_forget_password_hidden@2x.png
vendored
Normal file
After Width: | Height: | Size: 730 B |
BIN
YuMi/Assets.xcassets/Login/login_forget_password_hidden.imageset/login_forget_password_hidden@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.2 KiB |
22
YuMi/Assets.xcassets/Login/login_forget_password_show.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_forget_password_show@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_forget_password_show@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_forget_password_show.imageset/login_forget_password_show@2x.png
vendored
Normal file
After Width: | Height: | Size: 416 B |
BIN
YuMi/Assets.xcassets/Login/login_forget_password_show.imageset/login_forget_password_show@3x.png
vendored
Normal file
After Width: | Height: | Size: 607 B |
22
YuMi/Assets.xcassets/Login/login_full_female.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_full_female@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_full_female@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_full_female.imageset/login_full_female@2x.png
vendored
Normal file
After Width: | Height: | Size: 599 B |
BIN
YuMi/Assets.xcassets/Login/login_full_female.imageset/login_full_female@3x.png
vendored
Normal file
After Width: | Height: | Size: 922 B |
22
YuMi/Assets.xcassets/Login/login_full_female_logo.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_full_female_logo@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_full_female_logo@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_full_female_logo.imageset/login_full_female_logo@2x.png
vendored
Normal file
After Width: | Height: | Size: 3.8 KiB |
BIN
YuMi/Assets.xcassets/Login/login_full_female_logo.imageset/login_full_female_logo@3x.png
vendored
Normal file
After Width: | Height: | Size: 6.1 KiB |
22
YuMi/Assets.xcassets/Login/login_full_info_refresh.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_full_info_refresh@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_full_info_refresh@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_full_info_refresh.imageset/login_full_info_refresh@2x.png
vendored
Normal file
After Width: | Height: | Size: 816 B |
BIN
YuMi/Assets.xcassets/Login/login_full_info_refresh.imageset/login_full_info_refresh@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.4 KiB |
22
YuMi/Assets.xcassets/Login/login_full_male.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_full_male@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_full_male@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_full_male.imageset/login_full_male@2x.png
vendored
Normal file
After Width: | Height: | Size: 636 B |
BIN
YuMi/Assets.xcassets/Login/login_full_male.imageset/login_full_male@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.0 KiB |
22
YuMi/Assets.xcassets/Login/login_full_male_logo.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_full_male_logo@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_full_male_logo@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_full_male_logo.imageset/login_full_male_logo@2x.png
vendored
Normal file
After Width: | Height: | Size: 3.5 KiB |
BIN
YuMi/Assets.xcassets/Login/login_full_male_logo.imageset/login_full_male_logo@3x.png
vendored
Normal file
After Width: | Height: | Size: 5.5 KiB |
22
YuMi/Assets.xcassets/Login/login_gmail.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_gmail@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_gmail@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_gmail.imageset/login_gmail@2x.png
vendored
Normal file
After Width: | Height: | Size: 1.6 KiB |
BIN
YuMi/Assets.xcassets/Login/login_gmail.imageset/login_gmail@3x.png
vendored
Normal file
After Width: | Height: | Size: 2.5 KiB |
22
YuMi/Assets.xcassets/Login/login_line.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_line@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_line@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_line.imageset/login_line@2x.png
vendored
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
YuMi/Assets.xcassets/Login/login_line.imageset/login_line@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.8 KiB |
22
YuMi/Assets.xcassets/Login/login_next.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_next@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_next@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_next.imageset/login_next@2x.png
vendored
Normal file
After Width: | Height: | Size: 2.9 KiB |
BIN
YuMi/Assets.xcassets/Login/login_next.imageset/login_next@3x.png
vendored
Normal file
After Width: | Height: | Size: 4.0 KiB |
22
YuMi/Assets.xcassets/Login/login_next_disable.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_next_disable@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_next_disable@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_next_disable.imageset/login_next_disable@2x.png
vendored
Normal file
After Width: | Height: | Size: 2.4 KiB |
BIN
YuMi/Assets.xcassets/Login/login_next_disable.imageset/login_next_disable@3x.png
vendored
Normal file
After Width: | Height: | Size: 3.3 KiB |
22
YuMi/Assets.xcassets/Login/login_next_login.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_next_login@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_next_login@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_next_login.imageset/login_next_login@2x.png
vendored
Normal file
After Width: | Height: | Size: 431 B |
BIN
YuMi/Assets.xcassets/Login/login_next_login.imageset/login_next_login@3x.png
vendored
Normal file
After Width: | Height: | Size: 690 B |
22
YuMi/Assets.xcassets/Login/login_phone_pwd_bg.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_phone_pwd_bg@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_phone_pwd_bg@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_phone_pwd_bg.imageset/login_phone_pwd_bg@2x.png
vendored
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
YuMi/Assets.xcassets/Login/login_phone_pwd_bg.imageset/login_phone_pwd_bg@3x.png
vendored
Normal file
After Width: | Height: | Size: 77 KiB |
22
YuMi/Assets.xcassets/Login/login_phone_type.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_phone_type@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "login_phone_type@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
YuMi/Assets.xcassets/Login/login_phone_type.imageset/login_phone_type@2x.png
vendored
Normal file
After Width: | Height: | Size: 2.4 KiB |