Ver código fonte

提交代码

wangxinglong 6 anos atrás
pai
commit
45a809ce2f
100 arquivos alterados com 5326 adições e 0 exclusões
  1. 4205 0
      Haishenghai-master.xcodeproj/project.pbxproj
  2. 7 0
      Haishenghai-master.xcodeproj/project.xcworkspace/contents.xcworkspacedata
  3. 111 0
      Haishenghai-master.xcodeproj/xcshareddata/xcschemes/Haishenghai-master.xcscheme
  4. 10 0
      Haishenghai-master.xcworkspace/contents.xcworkspacedata
  5. 8 0
      Haishenghai-master.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
  6. 24 0
      Haishenghai-master/AppDelegate.h
  7. 347 0
      Haishenghai-master/AppDelegate.mm
  8. 116 0
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/Contents.json
  9. BIN
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-1024.png
  10. BIN
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-20-ipad.png
  11. BIN
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-20@2x-ipad.png
  12. BIN
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-20@2x.png
  13. BIN
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-20@3x.png
  14. BIN
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-29.png
  15. BIN
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-29@2x-ipad.png
  16. BIN
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png
  17. BIN
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png
  18. BIN
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-40.png
  19. BIN
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-40@2x-1.png
  20. BIN
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png
  21. BIN
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png
  22. BIN
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png
  23. BIN
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png
  24. BIN
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-76.png
  25. BIN
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-76@2x.png
  26. BIN
      Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-83.5@2x.png
  27. 6 0
      Haishenghai-master/Assets.xcassets/Contents.json
  28. 71 0
      Haishenghai-master/Assets.xcassets/LaunchImage-1.launchimage/Contents.json
  29. BIN
      Haishenghai-master/Assets.xcassets/LaunchImage-1.launchimage/launchScreen.png
  30. BIN
      Haishenghai-master/Assets.xcassets/LaunchImage-1.launchimage/qd-5.png
  31. BIN
      Haishenghai-master/Assets.xcassets/LaunchImage-1.launchimage/qd-6.png
  32. BIN
      Haishenghai-master/Assets.xcassets/LaunchImage-1.launchimage/qd-6p.png
  33. BIN
      Haishenghai-master/Assets.xcassets/LaunchImage-1.launchimage/qd-x.png
  34. 6 0
      Haishenghai-master/Assets.xcassets/hsh-Image/Contents.json
  35. 6 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/Contents.json
  36. 23 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_add.imageset/Contents.json
  37. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_add.imageset/hsh_home_add.png
  38. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_add.imageset/hsh_home_add@2x.png
  39. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_add.imageset/hsh_home_add@3x.png
  40. 23 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_add_white.imageset/Contents.json
  41. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_add_white.imageset/hsh_home_add_white.png
  42. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_add_white.imageset/hsh_home_add_white@2x.png
  43. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_add_white.imageset/hsh_home_add_white@3x.png
  44. 23 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert.imageset/Contents.json
  45. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert.imageset/hsh_home_alert.png
  46. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert.imageset/hsh_home_alert@2x.png
  47. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert.imageset/hsh_home_alert@3x.png
  48. 22 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert_point.imageset/Contents.json
  49. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert_point.imageset/hsh_home_alert_point@2x.png
  50. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert_point.imageset/hsh_home_alert_point@3x.png
  51. 22 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert_top.imageset/Contents.json
  52. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert_top.imageset/hsh_home_alert_top@2x.png
  53. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert_top.imageset/hsh_home_alert_top@3x.png
  54. 23 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_dialogbox.imageset/Contents.json
  55. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_dialogbox.imageset/hsh_home_details_dialogbox.png
  56. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_dialogbox.imageset/hsh_home_details_dialogbox@2x.png
  57. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_dialogbox.imageset/hsh_home_details_dialogbox@3x.png
  58. 22 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_fault.imageset/Contents.json
  59. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_fault.imageset/hsh_home_details_fault@2x.png
  60. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_fault.imageset/hsh_home_details_fault@3x.png
  61. 22 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_normal.imageset/Contents.json
  62. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_normal.imageset/hsh_home_details_normal@2x.png
  63. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_normal.imageset/hsh_home_details_normal@3x.png
  64. 23 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_equipment_smoke.imageset/Contents.json
  65. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_equipment_smoke.imageset/hsh_home_equipment_smoke.png
  66. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_equipment_smoke.imageset/hsh_home_equipment_smoke@2x.png
  67. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_equipment_smoke.imageset/hsh_home_equipment_smoke@3x.png
  68. 23 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_equipmentdetails.imageset/Contents.json
  69. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_equipmentdetails.imageset/hsh_home_equipmentdetails.png
  70. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_equipmentdetails.imageset/hsh_home_equipmentdetails@2x.png
  71. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_equipmentdetails.imageset/hsh_home_equipmentdetails@3x.png
  72. 23 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_fault.imageset/Contents.json
  73. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_fault.imageset/hsh_home_fault.png
  74. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_fault.imageset/hsh_home_fault@2x.png
  75. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_fault.imageset/hsh_home_fault@3x.png
  76. 22 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_fault_top.imageset/Contents.json
  77. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_fault_top.imageset/hsh_home_fault_top@2x.png
  78. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_fault_top.imageset/hsh_home_fault_top@3x.png
  79. 23 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_guide.imageset/Contents.json
  80. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_guide.imageset/hsh_home_guide.png
  81. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_guide.imageset/hsh_home_guide@2x.png
  82. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_guide.imageset/hsh_home_guide@3x.png
  83. 23 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_normal.imageset/Contents.json
  84. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_normal.imageset/hsh_home_normal.png
  85. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_normal.imageset/hsh_home_normal@2x.png
  86. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_normal.imageset/hsh_home_normal@3x.png
  87. 23 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_normal_top.imageset/Contents.json
  88. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_normal_top.imageset/hsh_home_normal_top.png
  89. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_normal_top.imageset/hsh_home_normal_top@2x.png
  90. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_normal_top.imageset/hsh_home_normal_top@3x.png
  91. 23 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_other.imageset/Contents.json
  92. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_other.imageset/hsh_home_other.png
  93. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_other.imageset/hsh_home_other@2x.png
  94. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_other.imageset/hsh_home_other@3x.png
  95. 23 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_smoke.imageset/Contents.json
  96. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_smoke.imageset/hsh_home_smoke.png
  97. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_smoke.imageset/hsh_home_smoke@2x.png
  98. BIN
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_smoke.imageset/hsh_home_smoke@3x.png
  99. 23 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_hone_input.imageset/Contents.json
  100. 0 0
      Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_hone_input.imageset/hsh_hone_input.png

Diferenças do arquivo suprimidas por serem muito extensas
+ 4205 - 0
Haishenghai-master.xcodeproj/project.pbxproj


+ 7 - 0
Haishenghai-master.xcodeproj/project.xcworkspace/contents.xcworkspacedata

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+   version = "1.0">
+   <FileRef
+      location = "self:Haishenghai-master.xcodeproj">
+   </FileRef>
+</Workspace>

+ 111 - 0
Haishenghai-master.xcodeproj/xcshareddata/xcschemes/Haishenghai-master.xcscheme

@@ -0,0 +1,111 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+   LastUpgradeVersion = "1020"
+   version = "1.3">
+   <BuildAction
+      parallelizeBuildables = "YES"
+      buildImplicitDependencies = "YES">
+      <BuildActionEntries>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "C615004921D7083F00FEBA22"
+               BuildableName = "Haishenghai-master.app"
+               BlueprintName = "Haishenghai-master"
+               ReferencedContainer = "container:Haishenghai-master.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+      </BuildActionEntries>
+   </BuildAction>
+   <TestAction
+      buildConfiguration = "Release"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+         <TestableReference
+            skipped = "NO">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "C615006121D7084000FEBA22"
+               BuildableName = "Haishenghai-masterTests.xctest"
+               BlueprintName = "Haishenghai-masterTests"
+               ReferencedContainer = "container:Haishenghai-master.xcodeproj">
+            </BuildableReference>
+         </TestableReference>
+         <TestableReference
+            skipped = "NO">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "C615006C21D7084000FEBA22"
+               BuildableName = "Haishenghai-masterUITests.xctest"
+               BlueprintName = "Haishenghai-masterUITests"
+               ReferencedContainer = "container:Haishenghai-master.xcodeproj">
+            </BuildableReference>
+         </TestableReference>
+      </Testables>
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "C615004921D7083F00FEBA22"
+            BuildableName = "Haishenghai-master.app"
+            BlueprintName = "Haishenghai-master"
+            ReferencedContainer = "container:Haishenghai-master.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </TestAction>
+   <LaunchAction
+      buildConfiguration = "Release"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      launchStyle = "0"
+      useCustomWorkingDirectory = "NO"
+      ignoresPersistentStateOnLaunch = "NO"
+      debugDocumentVersioning = "YES"
+      debugServiceExtension = "internal"
+      allowLocationSimulation = "YES">
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "C615004921D7083F00FEBA22"
+            BuildableName = "Haishenghai-master.app"
+            BlueprintName = "Haishenghai-master"
+            ReferencedContainer = "container:Haishenghai-master.xcodeproj">
+         </BuildableReference>
+      </BuildableProductRunnable>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </LaunchAction>
+   <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      savedToolIdentifier = ""
+      useCustomWorkingDirectory = "NO"
+      debugDocumentVersioning = "YES">
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "C615004921D7083F00FEBA22"
+            BuildableName = "Haishenghai-master.app"
+            BlueprintName = "Haishenghai-master"
+            ReferencedContainer = "container:Haishenghai-master.xcodeproj">
+         </BuildableReference>
+      </BuildableProductRunnable>
+   </ProfileAction>
+   <AnalyzeAction
+      buildConfiguration = "Release">
+   </AnalyzeAction>
+   <ArchiveAction
+      buildConfiguration = "Release"
+      revealArchiveInOrganizer = "YES">
+   </ArchiveAction>
+</Scheme>

+ 10 - 0
Haishenghai-master.xcworkspace/contents.xcworkspacedata

@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+   version = "1.0">
+   <FileRef
+      location = "group:Haishenghai-master.xcodeproj">
+   </FileRef>
+   <FileRef
+      location = "group:Pods/Pods.xcodeproj">
+   </FileRef>
+</Workspace>

+ 8 - 0
Haishenghai-master.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist

@@ -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>

+ 24 - 0
Haishenghai-master/AppDelegate.h

@@ -0,0 +1,24 @@
+//
+//  AppDelegate.h
+//  Haishenghai-master
+//
+//  Created by GG on 2018/12/29.
+//  Copyright © 2018年 Haishenghai intelligence network technology. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+#import <AVFoundation/AVFoundation.h>
+static NSString *appKey= @"fe13061435f5517e3c551231";
+static NSString *channel = @"Publish channel";
+static BOOL isProduction = TRUE;
+@interface AppDelegate : UIResponder <UIApplicationDelegate>
+
+@property (strong, nonatomic) UIWindow *window;
+
+
+//音频播放器
+
+@property(nonatomic,strong)AVAudioPlayer *player;
++(void)LoginRootViewController;
+@end
+

+ 347 - 0
Haishenghai-master/AppDelegate.mm

@@ -0,0 +1,347 @@
+//
+
+//
+//  AppDelegate.m
+//  Haishenghai-master
+//
+//  Created by GG on 2018/12/29.
+//  Copyright © 2018年 Haishenghai intelligence network technology. All rights reserved.
+//
+
+#import "AppDelegate.h"
+#import "Header.h"
+#import "EditLocationVC.h"
+
+//引入JPush功能所需要的头文件
+#import <JPUSHService.h>
+//iOS 10注册APNS 所需头文件
+//#ifdef NSFoundationVersionNumber_iOS_9_x_Max
+#import <UserNotifications/UserNotifications.h>
+//如果需要使用idfa 功能所需要引入的头文件(可选)
+#import <AdSupport/AdSupport.h>
+
+//mapKey:6f1d673114becda95d8a07d8b163f929
+//极光推送appKey:fe13061435f5517e3c551231
+//给JPush添加注册通知代理
+
+#import "FunSDK/FunSDK.h"
+#import "FunSDK/netsdk.h"
+#import "SDKInitializeModel.h"
+#import "DeviceManager.h"
+#import "MainViewController.h"
+#import "XYShowAlertView.h"
+
+@interface AppDelegate ()<JPUSHRegisterDelegate,JPUSHGeofenceDelegate>
+
+@end
+
+@implementation AppDelegate
+static NSInteger seq = 0;
+
+
+- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
+    
+    //启动时 注册FunSDK
+    [SDKInitializeModel SDKInit];
+    
+    // Override point for customization after application launch.
+    [self monitorNetworking];
+//////    跳转到登录
+    [AppDelegate LoginRootViewController];
+//    [self goMain];
+    
+    //测试入口
+//    EditLocationVC *loginVC = [[EditLocationVC alloc]init];
+//    UINavigationController *navgation = [[UINavigationController alloc]initWithRootViewController:loginVC];
+//    self.window.rootViewController = navgation;
+//    loginVC.navigationController.navigationBarHidden = YES;
+    
+//--------------------------------------------------------------------------------------------
+//                              高德地图SDK
+//---------------------------------------------------------------------------------------------
+
+    [AMapServices sharedServices].apiKey = @"6f1d673114becda95d8a07d8b163f929";
+//
+    //单次定位
+    [self.window makeKeyAndVisible];
+//--------------------------------------------------------------------------------------------
+//                              极光推送SDK
+//---------------------------------------------------------------------------------------------
+    // 3.0.0及以后版本注册
+    JPUSHRegisterEntity * entity = [[JPUSHRegisterEntity alloc] init];
+    if (@available(iOS 12.0, *)) {
+        entity.types = JPAuthorizationOptionAlert|JPAuthorizationOptionBadge|JPAuthorizationOptionSound|JPAuthorizationOptionProvidesAppNotificationSettings;
+    } else {
+        entity.types = JPAuthorizationOptionAlert|JPAuthorizationOptionBadge|JPAuthorizationOptionSound;
+    }
+    NSString *advertisingId = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
+
+    [JPUSHService registerForRemoteNotificationConfig:entity delegate:self];
+    [JPUSHService registerLbsGeofenceDelegate:self withLaunchOptions:launchOptions];
+    //如不需要使用IDFA,advertisingIdentifier 可为nil
+    [JPUSHService setupWithOption:launchOptions appKey:appKey
+                          channel:channel
+                 apsForProduction:isProduction
+            advertisingIdentifier:advertisingId];
+    
+    
+    NSDictionary *remoteNotification = [launchOptions objectForKey: UIApplicationLaunchOptionsRemoteNotificationKey];
+    NSLog(@"------%@",remoteNotification);
+    
+    NSString *LoginID = [[NSUserDefaults standardUserDefaults]objectForKey:@"loginId"];
+    [JPUSHService setAlias:LoginID completion:^(NSInteger iResCode, NSString *iAlias, NSInteger seq) {
+        [self inputResponseCode:iResCode content:iAlias andSeq:seq];
+    } seq:[self seq]];
+    
+    return YES;
+    
+}
+
+- (void)inputResponseCode:(NSInteger)code content:(NSString *)content andSeq:(NSInteger)seq{
+    NSLog (@"\n\n code:%ld content:%@ seq:%ld", code, content, seq);
+}
+- (NSInteger)seq {
+    return ++ seq;
+}
+
++(void)LoginRootViewController{
+    UserLogin_VC *loginVC = [[UserLogin_VC alloc]init];
+    UINavigationController *navgation = [[UINavigationController alloc]initWithRootViewController:loginVC];
+    AppDelegate *delegate = (id)[UIApplication  sharedApplication].delegate;
+    delegate.window.rootViewController = navgation;
+    loginVC.navigationController.navigationBarHidden = YES;
+
+}
+-(void)playSound{
+    //    播放系统声音
+    //定义一个SystemSoundID
+    //    SystemSoundID soundID = 1331;
+    ////    播放声音
+    //    AudioServicesPlaySystemSound(soundID);
+    
+    NSString *filePath = [[NSBundle mainBundle] pathForResource:@"fireAlarm" ofType:@"mp3"];
+    NSURL *fileUrl = [NSURL URLWithString:filePath];
+    self.player = [[AVAudioPlayer alloc]initWithContentsOfURL:fileUrl error:nil];
+    //设置声音的大小
+    self.player.volume =1;
+    //设置循环次数 ,如果为负数,就是无限循环
+    self.player.numberOfLoops = -1;
+    //准备播放
+    [self.player prepareToPlay];
+    //播放
+    [self.player play];
+    
+}
+#pragma mark- JPUSHRegisterDelegate
+// iOS 12 Support
+- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center openSettingsForNotification:(UNNotification *)notification{
+    NSLog(@"1111111111111");
+    if (notification && [notification.request.trigger isKindOfClass:[UNPushNotificationTrigger class]]) {
+        [[NSNotificationCenter defaultCenter]postNotificationName:@"fireChange" object:nil];
+        //从通知界面直接进入应用
+//        ViewController *view = [[ViewController alloc]init];
+//        self.window.rootViewController = view;
+        
+    }else{
+        //从通知设置界面进入应用
+    }
+}
+
+// iOS 10 Support
+- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(NSInteger))completionHandler {
+    NSLog(@"2222222222");
+//    [self playSound];
+//    [[NSNotificationCenter defaultCenter]postNotificationName:@"fireChange" object:nil];
+//    //从通知界面直接进入应用
+//    ViewController *view = [[ViewController alloc]init];
+//    self.window.rootViewController = view;
+
+    // Required
+    NSDictionary * userInfo = notification.request.content.userInfo;
+    NSLog(@"------------->%@",userInfo);
+    NSLog(@"------------->%@",notification.request);
+
+    UNNotificationRequest *request = notification.request; // 收到推送的请求
+    UNNotificationContent *content = request.content; // 收到推送的消息内容
+    
+    NSNumber *badge = content.badge;  // 推送消息的角标
+    NSString *body = content.body;    // 推送消息体
+    UNNotificationSound *sound = content.sound;  // 推送消息的声音
+    NSString *subtitle = content.subtitle;  // 推送消息的副标题
+    NSString *title = content.title;  // 推送消息的标题
+    
+    if([notification.request.trigger isKindOfClass:[UNPushNotificationTrigger class]]) {
+        [JPUSHService handleRemoteNotification:userInfo];
+    }
+    completionHandler(UNNotificationPresentationOptionAlert); // 需要执行这个方法,选择是否提醒用户,有 Badge、Sound、Alert 三种类型可以选择设置
+    [[NSNotificationCenter defaultCenter]postNotificationName:@"fireChange" object:nil];
+    //从通知界面直接进入应用
+//    ViewController *view = [[ViewController alloc]init];
+//    self.window.rootViewController = view;
+}
+
+// iOS 10 Support
+- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void (^)())completionHandler {
+    NSLog(@"33333333333");
+    // Required
+    NSDictionary * userInfo = response.notification.request.content.userInfo;
+    if([response.notification.request.trigger isKindOfClass:[UNPushNotificationTrigger class]]) {
+        [JPUSHService handleRemoteNotification:userInfo];
+        NSLog(@"iOS10 收到远程通知:%@", userInfo);
+//        [[NSNotificationCenter defaultCenter]postNotificationName:@"fireChange" object:nil];
+//        //从通知界面直接进入应用
+//        ViewController *view = [[ViewController alloc]init];
+//        self.window.rootViewController = view;
+
+    }
+    completionHandler();  // 系统要求执行这个方法
+    [[NSNotificationCenter defaultCenter]postNotificationName:@"fireChange" object:nil];
+    //从通知界面直接进入应用
+//    ViewController *view = [[ViewController alloc]init];
+//    self.window.rootViewController = view;
+    
+}
+
+
+- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
+    NSLog(@"44444444444");
+    [[NSNotificationCenter defaultCenter]postNotificationName:@"appQuitChange" object:nil];
+    //从通知界面直接进入应用
+    ViewController *view = [[ViewController alloc]init];
+    self.window.rootViewController = view;
+
+    // 取得 APNs 标准信息内容
+    NSDictionary *aps = [userInfo valueForKey:@"aps"];
+    NSString *content = [aps valueForKey:@"alert"]; //推送显示的内容
+    NSInteger badge = [[aps valueForKey:@"badge"] integerValue]; //badge 数量
+    NSString *sound = [aps valueForKey:@"sound"]; //播放的声音
+    
+    // 取得 Extras 字段内容
+    NSString *customizeField1 = [userInfo valueForKey:@"customizeExtras"]; //服务端中 Extras 字段,key 是自己定义的
+    NSLog(@"content =[%@], badge=[%d], sound=[%@], customize field  =[%@]",content,badge,sound,customizeField1);
+    
+    // iOS 10 以下 Required
+    [JPUSHService handleRemoteNotification:userInfo];
+}
+- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
+    // 取得 APNs 标准信息内容
+//    NSLog(@"_______-%@",userInfo);
+    NSLog(@"55555555555");
+    [self playSound];
+    // Required, iOS 7 Support
+    [JPUSHService handleRemoteNotification:userInfo];
+    
+    [[NSNotificationCenter defaultCenter]postNotificationName:@"appQuitChange" object:nil];
+    //从通知界面直接进入应用
+    ViewController *view = [[ViewController alloc]init];
+    self.window.rootViewController = view;
+
+    completionHandler(UIBackgroundFetchResultNewData);
+}
+
+//检测网络状态
+#pragma mark - ------------- 监测网络状态 -------------
+- (void)monitorNetworking
+{
+    //此方法不能用,否则改变了根视图控制器的指向
+//    UIWindow *alertWindow = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
+//    alertWindow.rootViewController = [[UIViewController alloc] init];
+//    alertWindow.windowLevel = UIWindowLevelAlert + 1;
+//    [alertWindow makeKeyAndVisible];
+
+    [[AFNetworkReachabilityManager sharedManager] startMonitoring];
+    [[AFNetworkReachabilityManager sharedManager] setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) {
+        switch (status) {
+            case AFNetworkReachabilityStatusUnknown:
+                NSLog(@"未知网络");
+                break;
+            case AFNetworkReachabilityStatusNotReachable:
+            {
+                NSLog(@"无网络连接");
+                //跳转到无网络界面
+                UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"网络连接异常" message:nil delegate:nil cancelButtonTitle:@"确定" otherButtonTitles:nil];
+                [alert show];
+            }
+                break;
+            
+            case AFNetworkReachabilityStatusReachableViaWWAN:
+            {
+                NSLog(@"GPRS网络");
+            }
+                break;
+
+            case AFNetworkReachabilityStatusReachableViaWiFi:
+            {
+                NSLog(@"wifi网络");
+            }
+                break;
+
+            default:
+                break;
+        }
+    }];
+
+}
+//注册deviceToken
+- (void)application:(UIApplication *)application
+didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
+    
+    /// Required - 注册 DeviceToken
+    [JPUSHService registerDeviceToken:deviceToken];
+}
+//注册APNS失败的接口
+- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error {
+    //Optional
+    NSLog(@"did Fail To Register For Remote Notifications With Error: %@", error);
+}
+- (void)applicationWillResignActive:(UIApplication *)application {
+    // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
+    // Use this method to pause ongoing tasks, disable timers, and invalidate graphics rendering callbacks. Games should use this method to pause the game.
+}
+
+
+- (void)applicationDidEnterBackground:(UIApplication *)application {
+    // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
+    // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
+    [[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
+
+    //    UIApplication* app = [UIApplication sharedApplication];
+//    __block  UIBackgroundTaskIdentifier bgTask;
+//    bgTask = [app beginBackgroundTaskWithExpirationHandler:^{
+//        dispatch_async(dispatch_get_main_queue(), ^{
+//            if (bgTask != UIBackgroundTaskInvalid)
+//            {
+//                bgTask = UIBackgroundTaskInvalid;
+//            }
+//        });
+//    }];
+//
+//    dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
+//        dispatch_async(dispatch_get_main_queue(), ^{
+//            if (bgTask != UIBackgroundTaskInvalid)
+//            {
+//                bgTask = UIBackgroundTaskInvalid;
+//            }
+//        });
+//    });
+}
+
+
+- (void)applicationWillEnterForeground:(UIApplication *)application {
+    // Called as part of the transition from the background to the active state; here you can undo many of the changes made on entering the background.
+    [application setApplicationIconBadgeNumber:0];
+    [application cancelAllLocalNotifications];
+
+}
+
+
+- (void)applicationDidBecomeActive:(UIApplication *)application {
+    // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
+}
+
+
+- (void)applicationWillTerminate:(UIApplication *)application {
+    // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
+}
+
+@end

+ 116 - 0
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/Contents.json

@@ -0,0 +1,116 @@
+{
+  "images" : [
+    {
+      "size" : "20x20",
+      "idiom" : "iphone",
+      "filename" : "icon-20@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "20x20",
+      "idiom" : "iphone",
+      "filename" : "icon-20@3x.png",
+      "scale" : "3x"
+    },
+    {
+      "size" : "29x29",
+      "idiom" : "iphone",
+      "filename" : "icon-29@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "29x29",
+      "idiom" : "iphone",
+      "filename" : "icon-29@3x.png",
+      "scale" : "3x"
+    },
+    {
+      "size" : "40x40",
+      "idiom" : "iphone",
+      "filename" : "icon-40@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "40x40",
+      "idiom" : "iphone",
+      "filename" : "icon-40@3x.png",
+      "scale" : "3x"
+    },
+    {
+      "size" : "60x60",
+      "idiom" : "iphone",
+      "filename" : "icon-60@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "60x60",
+      "idiom" : "iphone",
+      "filename" : "icon-60@3x.png",
+      "scale" : "3x"
+    },
+    {
+      "size" : "20x20",
+      "idiom" : "ipad",
+      "filename" : "icon-20-ipad.png",
+      "scale" : "1x"
+    },
+    {
+      "size" : "20x20",
+      "idiom" : "ipad",
+      "filename" : "icon-20@2x-ipad.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "29x29",
+      "idiom" : "ipad",
+      "filename" : "icon-29.png",
+      "scale" : "1x"
+    },
+    {
+      "size" : "29x29",
+      "idiom" : "ipad",
+      "filename" : "icon-29@2x-ipad.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "40x40",
+      "idiom" : "ipad",
+      "filename" : "icon-40.png",
+      "scale" : "1x"
+    },
+    {
+      "size" : "40x40",
+      "idiom" : "ipad",
+      "filename" : "icon-40@2x-1.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "76x76",
+      "idiom" : "ipad",
+      "filename" : "icon-76.png",
+      "scale" : "1x"
+    },
+    {
+      "size" : "76x76",
+      "idiom" : "ipad",
+      "filename" : "icon-76@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "83.5x83.5",
+      "idiom" : "ipad",
+      "filename" : "icon-83.5@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "1024x1024",
+      "idiom" : "ios-marketing",
+      "filename" : "icon-1024.png",
+      "scale" : "1x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

BIN
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-1024.png


BIN
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-20-ipad.png


BIN
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-20@2x-ipad.png


BIN
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-20@2x.png


BIN
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-20@3x.png


BIN
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-29.png


BIN
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-29@2x-ipad.png


BIN
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png


BIN
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png


BIN
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-40.png


BIN
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-40@2x-1.png


BIN
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png


BIN
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png


BIN
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png


BIN
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png


BIN
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-76.png


BIN
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-76@2x.png


BIN
Haishenghai-master/Assets.xcassets/AppIcon.appiconset/icon-83.5@2x.png


+ 6 - 0
Haishenghai-master/Assets.xcassets/Contents.json

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

+ 71 - 0
Haishenghai-master/Assets.xcassets/LaunchImage-1.launchimage/Contents.json

@@ -0,0 +1,71 @@
+{
+  "images" : [
+    {
+      "extent" : "full-screen",
+      "idiom" : "iphone",
+      "subtype" : "2436h",
+      "filename" : "qd-x.png",
+      "minimum-system-version" : "11.0",
+      "orientation" : "portrait",
+      "scale" : "3x"
+    },
+    {
+      "extent" : "full-screen",
+      "idiom" : "iphone",
+      "subtype" : "736h",
+      "filename" : "qd-6p.png",
+      "minimum-system-version" : "8.0",
+      "orientation" : "portrait",
+      "scale" : "3x"
+    },
+    {
+      "extent" : "full-screen",
+      "idiom" : "iphone",
+      "subtype" : "667h",
+      "filename" : "qd-6.png",
+      "minimum-system-version" : "8.0",
+      "orientation" : "portrait",
+      "scale" : "2x"
+    },
+    {
+      "orientation" : "portrait",
+      "idiom" : "iphone",
+      "extent" : "full-screen",
+      "minimum-system-version" : "7.0",
+      "scale" : "2x"
+    },
+    {
+      "extent" : "full-screen",
+      "idiom" : "iphone",
+      "subtype" : "retina4",
+      "filename" : "qd-5.png",
+      "minimum-system-version" : "7.0",
+      "orientation" : "portrait",
+      "scale" : "2x"
+    },
+    {
+      "orientation" : "portrait",
+      "idiom" : "iphone",
+      "extent" : "full-screen",
+      "scale" : "1x"
+    },
+    {
+      "orientation" : "portrait",
+      "idiom" : "iphone",
+      "extent" : "full-screen",
+      "scale" : "2x"
+    },
+    {
+      "orientation" : "portrait",
+      "idiom" : "iphone",
+      "filename" : "launchScreen.png",
+      "extent" : "full-screen",
+      "subtype" : "retina4",
+      "scale" : "2x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

BIN
Haishenghai-master/Assets.xcassets/LaunchImage-1.launchimage/launchScreen.png


BIN
Haishenghai-master/Assets.xcassets/LaunchImage-1.launchimage/qd-5.png


BIN
Haishenghai-master/Assets.xcassets/LaunchImage-1.launchimage/qd-6.png


BIN
Haishenghai-master/Assets.xcassets/LaunchImage-1.launchimage/qd-6p.png


BIN
Haishenghai-master/Assets.xcassets/LaunchImage-1.launchimage/qd-x.png


+ 6 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/Contents.json

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

+ 6 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/Contents.json

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

+ 23 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_add.imageset/Contents.json

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

BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_add.imageset/hsh_home_add.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_add.imageset/hsh_home_add@2x.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_add.imageset/hsh_home_add@3x.png


+ 23 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_add_white.imageset/Contents.json

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

BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_add_white.imageset/hsh_home_add_white.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_add_white.imageset/hsh_home_add_white@2x.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_add_white.imageset/hsh_home_add_white@3x.png


+ 23 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert.imageset/Contents.json

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

BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert.imageset/hsh_home_alert.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert.imageset/hsh_home_alert@2x.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert.imageset/hsh_home_alert@3x.png


+ 22 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert_point.imageset/Contents.json

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

BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert_point.imageset/hsh_home_alert_point@2x.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert_point.imageset/hsh_home_alert_point@3x.png


+ 22 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert_top.imageset/Contents.json

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

BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert_top.imageset/hsh_home_alert_top@2x.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_alert_top.imageset/hsh_home_alert_top@3x.png


+ 23 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_dialogbox.imageset/Contents.json

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

BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_dialogbox.imageset/hsh_home_details_dialogbox.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_dialogbox.imageset/hsh_home_details_dialogbox@2x.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_dialogbox.imageset/hsh_home_details_dialogbox@3x.png


+ 22 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_fault.imageset/Contents.json

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

BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_fault.imageset/hsh_home_details_fault@2x.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_fault.imageset/hsh_home_details_fault@3x.png


+ 22 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_normal.imageset/Contents.json

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

BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_normal.imageset/hsh_home_details_normal@2x.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_details_normal.imageset/hsh_home_details_normal@3x.png


+ 23 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_equipment_smoke.imageset/Contents.json

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

BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_equipment_smoke.imageset/hsh_home_equipment_smoke.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_equipment_smoke.imageset/hsh_home_equipment_smoke@2x.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_equipment_smoke.imageset/hsh_home_equipment_smoke@3x.png


+ 23 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_equipmentdetails.imageset/Contents.json

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

BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_equipmentdetails.imageset/hsh_home_equipmentdetails.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_equipmentdetails.imageset/hsh_home_equipmentdetails@2x.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_equipmentdetails.imageset/hsh_home_equipmentdetails@3x.png


+ 23 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_fault.imageset/Contents.json

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

BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_fault.imageset/hsh_home_fault.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_fault.imageset/hsh_home_fault@2x.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_fault.imageset/hsh_home_fault@3x.png


+ 22 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_fault_top.imageset/Contents.json

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

BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_fault_top.imageset/hsh_home_fault_top@2x.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_fault_top.imageset/hsh_home_fault_top@3x.png


+ 23 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_guide.imageset/Contents.json

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

BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_guide.imageset/hsh_home_guide.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_guide.imageset/hsh_home_guide@2x.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_guide.imageset/hsh_home_guide@3x.png


+ 23 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_normal.imageset/Contents.json

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

BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_normal.imageset/hsh_home_normal.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_normal.imageset/hsh_home_normal@2x.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_normal.imageset/hsh_home_normal@3x.png


+ 23 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_normal_top.imageset/Contents.json

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

BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_normal_top.imageset/hsh_home_normal_top.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_normal_top.imageset/hsh_home_normal_top@2x.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_normal_top.imageset/hsh_home_normal_top@3x.png


+ 23 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_other.imageset/Contents.json

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

BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_other.imageset/hsh_home_other.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_other.imageset/hsh_home_other@2x.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_other.imageset/hsh_home_other@3x.png


+ 23 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_smoke.imageset/Contents.json

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

BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_smoke.imageset/hsh_home_smoke.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_smoke.imageset/hsh_home_smoke@2x.png


BIN
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_home_smoke.imageset/hsh_home_smoke@3x.png


+ 23 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_hone_input.imageset/Contents.json

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

+ 0 - 0
Haishenghai-master/Assets.xcassets/hsh-Image/home_images/hsh_hone_input.imageset/hsh_hone_input.png


Alguns arquivos não foram mostrados porque muitos arquivos mudaram nesse diff