Compare commits
15 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
9cedfc0408 | ||
![]() |
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
|
4
Podfile
@@ -65,9 +65,9 @@ target 'YuMi' do
|
||||
pod 'ZLCollectionViewFlowLayout'
|
||||
pod 'WMZDropDownMenu'
|
||||
pod 'TABAnimated'
|
||||
pod 'YuMi',:path=>'yum'
|
||||
|
||||
pod 'YuMi',:path=>'yum'
|
||||
end
|
||||
|
||||
post_install do |installer|
|
||||
installer.generated_projects.each do |project|
|
||||
project.targets.each do |target|
|
||||
|
@@ -31,7 +31,7 @@
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
buildConfiguration = "Release"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
|
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
|
||||
|
||||
@interface AppDelegate (ThirdConfig)
|
||||
- (void)initTertiusDisposition;
|
||||
|
||||
- (void)setupLaunchADRegard;
|
||||
/// 初始化一些第三方配置
|
||||
- (void)initThirdConfig;
|
||||
/**
|
||||
设置广告页
|
||||
*/
|
||||
- (void)setupLaunchADView;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
|
@@ -6,20 +6,22 @@
|
||||
//
|
||||
|
||||
#import "AppDelegate+ThirdConfig.h"
|
||||
///Third
|
||||
#import <NIMSDK/NIMSDK.h>
|
||||
#import <ShareSDK/ShareSDK.h>
|
||||
#import <UserNotifications/UNUserNotificationCenter.h>
|
||||
///Tool
|
||||
#import "YUMIConstant.h"
|
||||
#import "CustomAttachmentDecoder.h"
|
||||
#import "MHTSpiritFacilitater.h"
|
||||
#import "YUMIAdvertiseRegard.h"
|
||||
#import "YUMIAdIndicateTool.h"
|
||||
#import "QEmotionHelper.h"
|
||||
#import "XPAdvertiseView.h"
|
||||
#import "XPAdImageTool.h"
|
||||
#import "YUMIMacroUitls.h"
|
||||
#import "AdvertiseMatrix.h"
|
||||
#import "YUMITissueRegardGovernancer.h"
|
||||
#import "YUMIChamberRegardGovernancer.h"
|
||||
#import "XCCurrentVCStackExecutive.h"
|
||||
#import "ClientDisposition.h"
|
||||
#import "AdvertiseModel.h"
|
||||
#import "XPWebViewController.h"
|
||||
#import "XPRoomViewController.h"
|
||||
#import "XCCurrentVCStackManager.h"
|
||||
#import "ClientConfig.h"
|
||||
|
||||
UIKIT_EXTERN NSString * kYouMiNumberCountKey;
|
||||
UIKIT_EXTERN NSString * adImageName;
|
||||
@@ -27,22 +29,23 @@ UIKIT_EXTERN NSString * adImageName;
|
||||
@implementation AppDelegate (ThirdConfig)
|
||||
|
||||
|
||||
- (void)initTertiusDisposition {
|
||||
[self prohibitipositionPartowardsiciptowardsionSDK];
|
||||
[self prohibitipositionNEMCSDK];
|
||||
[self initEmojiTowardsoloudspeaker];
|
||||
/// 初始化一些第三方配置
|
||||
- (void)initThirdConfig {
|
||||
[self configShareSDK];
|
||||
[self configNIMSDK];
|
||||
[self initEmojiData];
|
||||
}
|
||||
|
||||
- (void)prohibitipositionNEMCSDK {
|
||||
|
||||
NSString *appKey = KeyWithType(KeyGenre_NetEase);
|
||||
- (void)configNIMSDK {
|
||||
//推荐在程序启动的时候初始化 NIMSDK
|
||||
NSString *appKey = KeyWithType(KeyType_NetEase);
|
||||
NIMSDKOption *option = [NIMSDKOption optionWithAppKey:appKey];
|
||||
[[NIMSDK sharedSDK] registerWithOption:option];
|
||||
|
||||
|
||||
// NIM SDK初始化
|
||||
[NIMCustomObject registerCustomDecoder:[[CustomAttachmentDecoder alloc] init]];
|
||||
[NIMSDKConfig sharedConfig].shouldConsiderRevokedMessageUnreadCount = YES;
|
||||
|
||||
///置顶会话同步
|
||||
[[NIMSDKConfig sharedConfig] setShouldSyncStickTopSessionInfos:YES];
|
||||
#ifdef DEBUG
|
||||
[NIMSDKConfig sharedConfig].enabledHttpsForInfo = NO;
|
||||
@@ -51,16 +54,16 @@ UIKIT_EXTERN NSString * adImageName;
|
||||
}
|
||||
|
||||
|
||||
- (void)prohibitipositionPartowardsiciptowardsionSDK {
|
||||
- (void)configShareSDK {
|
||||
[ShareSDK registPlatforms:^(SSDKRegister *platformsRegister) {
|
||||
|
||||
[platformsRegister setupFacebookWithAppkey:@"1266232494209868" appSecret:@"c9b170b383f8be9cdf118823b8632821" displayName:YMLocalizedString(@"App_Delegate__Third_Config_0")];
|
||||
///faceBook
|
||||
[platformsRegister setupFacebookWithAppkey:@"1266232494209868" appSecret:@"c9b170b383f8be9cdf118823b8632821" displayName:YMLocalizedString(@"AppDelegate_ThirdConfig0")];
|
||||
[platformsRegister setupLineAuthType:SSDKAuthorizeTypeBoth];
|
||||
}];
|
||||
}
|
||||
|
||||
#pragma mark - 表情
|
||||
- (void)initEmojiTowardsoloudspeaker {
|
||||
- (void)initEmojiData {
|
||||
NSArray * dicArray = [NSArray arrayWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"emoji" ofType:@"plist"]];
|
||||
NSDictionary * dic = [dicArray firstObject];
|
||||
NSArray * emojiArray = dic[@"data"];
|
||||
@@ -68,25 +71,27 @@ UIKIT_EXTERN NSString * adImageName;
|
||||
for (int i = 0; i < emojiArray.count; i++) {
|
||||
NSDictionary * dic = [emojiArray objectAtIndex:i];
|
||||
UIImage * image = [UIImage imageNamed:dic[@"file"]];
|
||||
MHTSpirit * info = [[MHTSpirit alloc] init];
|
||||
QEmotion * info = [[QEmotion alloc] init];
|
||||
info.identifier = dic[@"id"];
|
||||
info.image = image;
|
||||
info.displayName = dic[@"tag"];
|
||||
[array addObject:info];
|
||||
}
|
||||
|
||||
MHTSpiritFacilitater *faceManager = [MHTSpiritFacilitater partowardsiciptowardsiondSenintrtowardsemporalntFacilittowardseer];
|
||||
faceManager.senintratemporalntGarment = array;
|
||||
//在这里强烈建议先预加载一下表情
|
||||
QEmotionHelper *faceManager = [QEmotionHelper sharedEmotionHelper];
|
||||
faceManager.emotionArray = array;
|
||||
}
|
||||
|
||||
#pragma mark - 广告
|
||||
|
||||
|
||||
- (void)setupLaunchADRegard {
|
||||
/**
|
||||
设置广告页
|
||||
*/
|
||||
- (void)setupLaunchADView {
|
||||
NSUserDefaults * kUserDefaults = NSUserDefaults.standardUserDefaults;
|
||||
|
||||
NSString *filePath = [YUMIAdIndicateTool.partowardsiciptowardsionIndictowardseUtensil acquireAccurtowardseRouteAboutIndictowardseConstitute:[kUserDefaults valueForKey:adImageName]];
|
||||
BOOL isExist = [YUMIAdIndicateTool.partowardsiciptowardsionIndictowardseUtensil isAccurtowardseExistAboutAccurtowardseRoute:filePath];
|
||||
// 判断沙盒中是否存在广告图片,如果存在,直接显示
|
||||
NSString *filePath = [XPAdImageTool.shareImageTool getFilePathWithImageName:[kUserDefaults valueForKey:adImageName]];
|
||||
BOOL isExist = [XPAdImageTool.shareImageTool isFileExistWithFilePath:filePath];
|
||||
NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];
|
||||
|
||||
if ([userDefault integerForKey:@"adShow"]) {
|
||||
@@ -95,20 +100,20 @@ UIKIT_EXTERN NSString * adImageName;
|
||||
[userDefault setInteger:1 forKey:@"adShow"];
|
||||
}
|
||||
|
||||
if (isExist) {
|
||||
if (isExist) {// 图片存在
|
||||
|
||||
if ([userDefault integerForKey:@"adShow"] > 4) {
|
||||
@kWeakify(self);
|
||||
NSString *imageName = [kUserDefaults valueForKey:adImageName];
|
||||
AdvertiseMatrix *info = [YUMIAdIndicateTool.partowardsiciptowardsionIndictowardseUtensil acquireDirectoryAbstractByvirtueofConcealInMainAbout:imageName];
|
||||
YUMIAdvertiseRegard *advertiseView = [[YUMIAdvertiseRegard alloc] initWithFrame:self.window.bounds];
|
||||
AdvertiseModel *info = [XPAdImageTool.shareImageTool getAdInfoFromCacheInMainWith:imageName];
|
||||
XPAdvertiseView *advertiseView = [[XPAdvertiseView alloc] initWithFrame:self.window.bounds];
|
||||
advertiseView.filePath = filePath;
|
||||
advertiseView.disappearHandler = ^(BOOL shouldJump) {
|
||||
advertiseView.dismissHandler = ^(BOOL shouldJump) {
|
||||
@kStrongify(self)
|
||||
if (!shouldJump || info == nil) {
|
||||
return;
|
||||
}
|
||||
[self performSelectorOnMainThread:@selector(advertiseJumpShankAboutAbstract:) withObject:info waitUntilDone:NO];
|
||||
[self performSelectorOnMainThread:@selector(advertiseJumpHandleWithInfo:) withObject:info waitUntilDone:NO];
|
||||
};
|
||||
[advertiseView show];
|
||||
}
|
||||
@@ -116,32 +121,33 @@ UIKIT_EXTERN NSString * adImageName;
|
||||
}
|
||||
|
||||
|
||||
- (void)advertiseJumpShankAboutAbstract:(AdvertiseMatrix *)info {
|
||||
if (![ClientDisposition partowardsiciptowardsionDisposition].canUnfoild) {
|
||||
/// 闪屏广告跳转处理
|
||||
- (void)advertiseJumpHandleWithInfo:(AdvertiseModel *)info {
|
||||
if (![ClientConfig shareConfig].canOpen) {
|
||||
return;
|
||||
}
|
||||
if (UIApplication.sharedApplication.keyWindow != self.window) {
|
||||
|
||||
//当前窗口不是主控制器所在窗口时,拦截跳转(目前可能情况时,闪屏后出现新人引导
|
||||
return;
|
||||
}
|
||||
|
||||
switch (info.type) {
|
||||
case SplashAbstractSkipGenreRoom: {
|
||||
if (![[YUMIAdIndicateTool partowardsiciptowardsionIndictowardseUtensil] isImSurmount]) {
|
||||
return;
|
||||
case SplashInfoSkipTypeRoom: {
|
||||
if (![[XPAdImageTool shareImageTool] isImLogin]) {
|
||||
return; // 必须登录后才可以跳转
|
||||
}
|
||||
|
||||
// 跳转房间
|
||||
if (info.link.length > 0) {
|
||||
[YUMIChamberRegardGovernancer unfoildChamber:info.link viewController:[XCCurrentVCStackExecutive shareManager].getCurrentVC];
|
||||
[XPRoomViewController openRoom:info.link viewController:[XCCurrentVCStackManager shareManager].getCurrentVC];
|
||||
}
|
||||
}
|
||||
break;
|
||||
case SplashAbstractSkipGenreWeb: {
|
||||
|
||||
case SplashInfoSkipTypeWeb: {
|
||||
// 跳转 H5
|
||||
if (info.link.length > 0) {
|
||||
YUMITissueRegardGovernancer *webView = [[YUMITissueRegardGovernancer alloc]init];
|
||||
XPWebViewController *webView = [[XPWebViewController alloc]init];
|
||||
webView.url = info.link;
|
||||
[[[XCCurrentVCStackExecutive shareManager]universalBreeadcrumbGovernancer] pushViewController:webView animated:YES];
|
||||
[[[XCCurrentVCStackManager shareManager]currentNavigationController] pushViewController:webView animated:YES];
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@@ -14,7 +14,7 @@
|
||||
@property(nonatomic,strong,readonly)NSManagedObjectModel *managedObjectModel;
|
||||
@property(nonatomic,strong,readonly)NSPersistentStoreCoordinator *persistentStoreCoordinator;
|
||||
|
||||
- (void)preserveConessay;
|
||||
- (NSURL *)aplictowardsionlictowardsionDocumentsDirectoryvisory;
|
||||
- (void)saveContext;
|
||||
- (NSURL *)applicationDocumentsDirectory;
|
||||
@end
|
||||
|
||||
|
@@ -6,8 +6,8 @@
|
||||
//
|
||||
|
||||
#import "AppDelegate.h"
|
||||
#import "TabbarRegardGovernancer.h"
|
||||
#import "BaseNevigationGovernancer.h"
|
||||
#import "TabbarViewController.h"
|
||||
#import "BaseNavigationController.h"
|
||||
#import "AppDelegate+ThirdConfig.h"
|
||||
#import <NIMSDK/NIMSDK.h>
|
||||
#import <UMCommon/UMCommon.h>
|
||||
@@ -18,18 +18,18 @@
|
||||
@implementation AppDelegate
|
||||
|
||||
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
|
||||
TabbarRegardGovernancer *vc = [[TabbarRegardGovernancer alloc] init];
|
||||
BaseNevigationGovernancer *bnc = [[BaseNevigationGovernancer alloc] initWithRootViewController:vc];
|
||||
TabbarViewController *vc = [[TabbarViewController alloc] init];
|
||||
BaseNavigationController *bnc = [[BaseNavigationController alloc] initWithRootViewController:vc];
|
||||
self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
|
||||
self.window.rootViewController = bnc;
|
||||
[self.window makeKeyAndVisible];
|
||||
|
||||
[self setupLaunchADRegard];
|
||||
|
||||
[self initTertiusDisposition];
|
||||
|
||||
///设置广告页
|
||||
[self setupLaunchADView];
|
||||
///初始化一些 sdk配置
|
||||
[self initThirdConfig];
|
||||
// 只有同意过了隐私协议 才初始化
|
||||
if ([[NSUserDefaults standardUserDefaults] objectForKey:@"kYouMinumbernnagna"]) {
|
||||
|
||||
///初始化友盟
|
||||
[UMConfigure initWithAppkey:@"6434c6dfd64e686139618269" channel:@"yumi_appstore"];
|
||||
}
|
||||
return YES;
|
||||
@@ -42,7 +42,7 @@
|
||||
}
|
||||
|
||||
- (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
|
||||
|
||||
// 上传devicetoken至云信服务器。
|
||||
[[NIMSDK sharedSDK] updateApnsToken:deviceToken];
|
||||
}
|
||||
|
||||
@@ -52,12 +52,12 @@
|
||||
@synthesize managedObjectModel = _managedObjectModel;
|
||||
@synthesize persistentStoreCoordinator = _persistentStoreCoordinator;
|
||||
|
||||
-(NSURL *)aplictowardsionlictowardsionDocumentsDirectoryvisory{
|
||||
-(NSURL *)applicationDocumentsDirectory{
|
||||
return [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject];
|
||||
}
|
||||
|
||||
- (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) {
|
||||
return _managedObjectModel;
|
||||
}
|
||||
@@ -67,26 +67,26 @@
|
||||
}
|
||||
|
||||
- (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) {
|
||||
return _persistentStoreCoordinator;
|
||||
}
|
||||
|
||||
|
||||
// Create the coordinator and store
|
||||
|
||||
_persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]];
|
||||
NSURL *storeURL = [[self aplictowardsionlictowardsionDocumentsDirectoryvisory] URLByAppendingPathComponent:@"_1_______.sqlite"];
|
||||
NSURL *storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@"_1_______.sqlite"];
|
||||
NSError *error = nil;
|
||||
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]) {
|
||||
|
||||
// Report any error we got.
|
||||
NSMutableDictionary *dict = [NSMutableDictionary dictionary];
|
||||
dict[NSLocalizedDescriptionKey] = @"Failed to initialize the application's saved data";
|
||||
dict[NSLocalizedFailureReasonErrorKey] = failureReason;
|
||||
dict[NSUnderlyingErrorKey] = error;
|
||||
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]);
|
||||
abort();
|
||||
}
|
||||
@@ -96,7 +96,7 @@
|
||||
|
||||
|
||||
- (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) {
|
||||
return _managedObjectContext;
|
||||
}
|
||||
@@ -112,13 +112,13 @@
|
||||
|
||||
#pragma mark - Core Data Saving support
|
||||
|
||||
- (void)preserveConessay {
|
||||
- (void)saveContext {
|
||||
NSManagedObjectContext *managedObjectContext = self.managedObjectContext;
|
||||
if (managedObjectContext != nil) {
|
||||
NSError *error = nil;
|
||||
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]);
|
||||
abort();
|
||||
}
|
||||
|
@@ -1,7 +1,11 @@
|
||||
{"colors": [{"idiom": "universal"}], "info": {"author": "xcode", "version": 1}}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
{
|
||||
"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: 738 B |
BIN
YuMi/Assets.xcassets/Login/login_agree.imageset/login_agree@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.0 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: 290 B |
BIN
YuMi/Assets.xcassets/Login/login_area_arrow.imageset/login_area_arrow@3x.png
vendored
Normal file
After Width: | Height: | Size: 325 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_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: 381 B |
BIN
YuMi/Assets.xcassets/Login/login_disagree.imageset/login_disagree@3x.png
vendored
Normal file
After Width: | Height: | Size: 479 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: 764 B |
BIN
YuMi/Assets.xcassets/Login/login_facebook.imageset/login_facebook@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.2 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_info_female_normal.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "login_full_info_female_normal@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "login_full_info_female_normal@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
After Width: | Height: | Size: 1.0 KiB |
After Width: | Height: | Size: 1.8 KiB |
22
YuMi/Assets.xcassets/Login/login_full_info_female_select.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "login_full_info_female_select@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "login_full_info_female_select@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
After Width: | Height: | Size: 4.1 KiB |
After Width: | Height: | Size: 7.7 KiB |
22
YuMi/Assets.xcassets/Login/login_full_info_male_normal.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "login_full_info_male_normal@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "login_full_info_male_normal@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
BIN
YuMi/Assets.xcassets/Login/login_full_info_male_normal.imageset/login_full_info_male_normal@2x.png
vendored
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
YuMi/Assets.xcassets/Login/login_full_info_male_normal.imageset/login_full_info_male_normal@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.8 KiB |
22
YuMi/Assets.xcassets/Login/login_full_info_male_select.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "login_full_info_male_select@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "login_full_info_male_select@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
BIN
YuMi/Assets.xcassets/Login/login_full_info_male_select.imageset/login_full_info_male_select@2x.png
vendored
Normal file
After Width: | Height: | Size: 4.3 KiB |
BIN
YuMi/Assets.xcassets/Login/login_full_info_male_select.imageset/login_full_info_male_select@3x.png
vendored
Normal file
After Width: | Height: | Size: 7.7 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: 4.3 KiB |
BIN
YuMi/Assets.xcassets/Login/login_full_info_refresh.imageset/login_full_info_refresh@3x.png
vendored
Normal file
After Width: | Height: | Size: 4.8 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.7 KiB |
BIN
YuMi/Assets.xcassets/Login/login_gmail.imageset/login_gmail@3x.png
vendored
Normal file
After Width: | Height: | Size: 2.4 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: 1012 B |
BIN
YuMi/Assets.xcassets/Login/login_line.imageset/login_line@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.7 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_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 |
BIN
YuMi/Assets.xcassets/Login/login_phone_type.imageset/login_phone_type@3x.png
vendored
Normal file
After Width: | Height: | Size: 2.8 KiB |
22
YuMi/Assets.xcassets/Login/login_phone_white.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "login_phone_white@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "login_phone_white@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
BIN
YuMi/Assets.xcassets/Login/login_phone_white.imageset/login_phone_white@2x.png
vendored
Normal file
After Width: | Height: | Size: 509 B |
BIN
YuMi/Assets.xcassets/Login/login_phone_white.imageset/login_phone_white@3x.png
vendored
Normal file
After Width: | Height: | Size: 695 B |
22
YuMi/Assets.xcassets/Login/login_quick_next.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "login_quick_next@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "login_quick_next@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
BIN
YuMi/Assets.xcassets/Login/login_quick_next.imageset/login_quick_next@2x.png
vendored
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
YuMi/Assets.xcassets/Login/login_quick_next.imageset/login_quick_next@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.9 KiB |
22
YuMi/Assets.xcassets/Login/login_unicom_mobile.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "unicomMobile_icon@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "unicomMobile_icon@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
BIN
YuMi/Assets.xcassets/Login/login_unicom_mobile.imageset/unicomMobile_icon@2x.png
vendored
Normal file
After Width: | Height: | Size: 4.9 KiB |
BIN
YuMi/Assets.xcassets/Login/login_unicom_mobile.imageset/unicomMobile_icon@3x.png
vendored
Normal file
After Width: | Height: | Size: 6.5 KiB |
@@ -1,7 +0,0 @@
|
||||
{"images": [{"idiom": "universal", "scale": "1x"}, {"filename": "yumi_login_agree@2x.png", "idiom": "universal", "scale": "2x"}, {"filename": "yumi_login_agree@3x.png", "idiom": "universal", "scale": "3x"}], "info": {"author": "xcode", "version": 1}}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 378 B |
Before Width: | Height: | Size: 543 B |
@@ -1,7 +0,0 @@
|
||||
{"images": [{"idiom": "universal", "scale": "1x"}, {"filename": "yumi_login_area_arrow@2x.png", "idiom": "universal", "scale": "2x"}, {"filename": "yumi_login_area_arrow@3x.png", "idiom": "universal", "scale": "3x"}], "info": {"author": "xcode", "version": 1}}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|