瀏覽代碼

Merge branch 'release/1.0.0'

南鑫林 5 年之前
父節點
當前提交
d6527c4099
共有 24 個文件被更改,包括 187 次插入39 次删除
  1. 3 2
      RainbowPlanet/Podfile
  2. 5 9
      RainbowPlanet/Podfile.lock
  3. 1 1
      RainbowPlanet/RainbowPlanet/AppDelegate/AppDelegate+Window.swift
  4. 2 0
      RainbowPlanet/RainbowPlanet/Base/RootViewController/RootViewController.swift
  5. 9 3
      RainbowPlanet/RainbowPlanet/Macro/RainbowPlanet-Bridging-Header.h
  6. 39 0
      RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/ViewController/Follow/CommunityFollowViewController.swift
  7. 57 14
      RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/ViewController/Main/CommunityViewController.swift
  8. 39 0
      RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/ViewController/Recommend/CommunityRecommnendViewController.swift
  9. 1 1
      RainbowPlanet/RainbowPlanet/Modules/CommunityModule/CommunityShareContent/CommunityShareContentViewController.swift
  10. 11 1
      RainbowPlanet/RainbowPlanet/Modules/PublishModule/PublishAddTopic/View/PublishTopicTypeItemCollectionCell.swift
  11. 9 3
      RainbowPlanet/RainbowPlanet/Modules/PublishModule/PublishMediaPicker/Controller/KSMediaPickerController.swift
  12. 0 1
      RainbowPlanet/RainbowPlanet/Modules/SearchModule/SearchContentList/View/SearchContentListCollectionCell.swift
  13. 11 4
      RainbowPlanet/RainbowPlanet/Service/SwiftMoyaService/SwiftMoyaServiceManger/SwiftMoyaNetWorkManager/ApiMacro.swift
  14. 二進制
      RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/AppIcon.appiconset/AppIconiPhoneApp_60pt@2x.png
  15. 二進制
      RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/AppIcon.appiconset/AppIconiPhoneApp_60pt@3x.png
  16. 二進制
      RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/AppIcon.appiconset/AppIconiPhoneNotification_20pt@2x.png
  17. 二進制
      RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/AppIcon.appiconset/AppIconiPhoneNotification_20pt@3x.png
  18. 二進制
      RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/AppIcon.appiconset/AppIconiPhoneSpootlight5_29pt@2x.png
  19. 二進制
      RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/AppIcon.appiconset/AppIconiPhoneSpootlight5_29pt@3x.png
  20. 二進制
      RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/AppIcon.appiconset/AppIconiPhoneSpootlight7_40pt@2x.png
  21. 二進制
      RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/AppIcon.appiconset/AppIconiPhoneSpootlight7_40pt@3x.png
  22. 二進制
      RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/AppIcon.appiconset/AppIconstore_1024pt.png
  23. 二進制
      RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/posters_pic_text.imageset/posters_pic_text@2x.png
  24. 二進制
      RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/posters_pic_text.imageset/posters_pic_text@3x.png

+ 3 - 2
RainbowPlanet/Podfile

@@ -43,6 +43,7 @@ target 'RainbowPlanet' do
   pod 'FSPagerView'
   # 小红点
   pod 'PPBadgeViewSwift'
+  pod 'Bugly'
   # 动画效果
 #  pod 'pop'
   # pop动画
@@ -60,8 +61,8 @@ target 'RainbowPlanet' do
   # Label扩展
   pod 'YYText'
   # 生成二维码
-  pod 'EFQRCode'
-  
+#  pod 'EFQRCode'
+
   pod 'ESTabBarController-swift'
   # 内存泄露
   pod 'MLeaksFinder'

+ 5 - 9
RainbowPlanet/Podfile.lock

@@ -22,11 +22,10 @@ PODS:
   - AliyunVideoSDKPro (3.11.0)
   - BaiduMapKit (4.4.2)
   - BMKLocationKit (1.5.0)
+  - Bugly (2.5.0)
   - Cache (5.2.0)
   - DeviceKit (2.0.0)
   - DPScrollNumberLabel (0.0.2)
-  - EFQRCode (5.0.0):
-    - swift_qrcodejs (~> 1.1.1)
   - ESTabBarController-swift (2.7)
   - FBRetainCycleDetector (0.1.4)
   - FlickerNumber (1.1)
@@ -64,7 +63,6 @@ PODS:
     - RxSwift (>= 4.4.2, ~> 4.4)
   - RxSwift (4.5.0)
   - SnapKit (4.2.0)
-  - swift_qrcodejs (1.1.1)
   - SwiftyJSON (5.0.0)
   - SwiftyMediator/Core (0.2.0)
   - SwiftyMediator/Routable (0.2.0):
@@ -104,10 +102,10 @@ DEPENDENCIES:
   - AliyunVideoSDKPro
   - BaiduMapKit
   - BMKLocationKit (= 1.5.0)
+  - Bugly
   - Cache
   - DeviceKit
   - DPScrollNumberLabel
-  - EFQRCode
   - ESTabBarController-swift
   - FlickerNumber
   - FMDB
@@ -156,10 +154,10 @@ SPEC REPOS:
     - AliyunVideoSDKPro
     - BaiduMapKit
     - BMKLocationKit
+    - Bugly
     - Cache
     - DeviceKit
     - DPScrollNumberLabel
-    - EFQRCode
     - ESTabBarController-swift
     - FBRetainCycleDetector
     - FlickerNumber
@@ -185,7 +183,6 @@ SPEC REPOS:
     - RxCocoa
     - RxSwift
     - SnapKit
-    - swift_qrcodejs
     - SwiftyJSON
     - SwiftyMediator
     - UMCAnalytics
@@ -207,10 +204,10 @@ SPEC CHECKSUMS:
   AliyunVideoSDKPro: da710c1e7fb93b1e9a741b3619814c6608780b4b
   BaiduMapKit: 11acde2e7c06e31b7de60b323880a5eb7c4dccb6
   BMKLocationKit: 40d267478acd8704ddebd0e9deaddc727b13df9f
+  Bugly: 3ca9f255c01025582df26f9222893b383c7e4b4e
   Cache: 807c5d86d01a177f06ede9865add3aea269bbfd4
   DeviceKit: 72d36709552d4b3582abd76a53949148acad9811
   DPScrollNumberLabel: 5124eaccf3029bb84116de391e1273cba676f4f5
-  EFQRCode: 07437cfbce3a1e497397a4f3d766c980d8972608
   ESTabBarController-swift: 4fb52ad03d94d0717ef97bc9eb09a5abfdded0a2
   FBRetainCycleDetector: 46f8179bbb1c587deee3ea838a1a3ee02acf5015
   FlickerNumber: bce41da51904d533393d69e9734df6281ab1c646
@@ -236,7 +233,6 @@ SPEC CHECKSUMS:
   RxCocoa: cbf70265dc65a981d4ac982e513c10cf23df24a0
   RxSwift: f172070dfd1a93d70a9ab97a5a01166206e1c575
   SnapKit: fe8a619752f3f27075cc9a90244d75c6c3f27e2a
-  swift_qrcodejs: 0bacbfe321a99954c7b8e04c75562007ea4e4f7c
   SwiftyJSON: 36413e04c44ee145039d332b4f4e2d3e8d6c4db7
   SwiftyMediator: 73d97b2387f03c4f0320c1fbdf615e5fbb98871d
   UMCAnalytics: 045be2cd1ec05aa95ad62405a850757f932e2d59
@@ -250,6 +246,6 @@ SPEC CHECKSUMS:
   YYText: 5c461d709e24d55a182d1441c41dc639a18a4849
   ZipArchive: e25a4373192673e3229ac8d6e9f64a3e5713c966
 
-PODFILE CHECKSUM: 810a7117534d7cc86fe6e12f6388571ac3b400f2
+PODFILE CHECKSUM: fb8d10d0b68567b1425cddc55970c1cb93733003
 
 COCOAPODS: 1.7.4

+ 1 - 1
RainbowPlanet/RainbowPlanet/AppDelegate/AppDelegate+Window.swift

@@ -33,7 +33,7 @@ extension AppDelegate {
             /// 设置全局的TableView
             self?.setTableViewAppearance()
             /// 城市转换
-            self?.setBaiduToCityFactory()
+//            self?.setBaiduToCityFactory()
             /// 设置默认为快递
             let deliveryMethodTypeModel = DeliveryMethodTypeModel.shared()
             deliveryMethodTypeModel.deliveryMethodType = "2"

+ 2 - 0
RainbowPlanet/RainbowPlanet/Base/RootViewController/RootViewController.swift

@@ -50,6 +50,8 @@ class RootViewController: BaseViewController {
             BaiduMapManager.shared.startLocation()
             //初始化友盟
             UMManager.shared.initUM(launchOptions: self?.launchOptions)
+            // Bugly
+            Bugly.start(withAppId: "4e2f8cf865")
             //设置Tabbar
             kAppDelegate.setTabbarController()
             /// 引导页

+ 9 - 3
RainbowPlanet/RainbowPlanet/Macro/RainbowPlanet-Bridging-Header.h

@@ -63,6 +63,14 @@
 //只引入所需的单个头文件
 #import <BaiduMapAPI_Map/BMKMapView.h>
 
+// 阿里云短视频
+#import <AliyunVideoSDKPro/AliyunVideoSDKPro.h>
+// 阿里云一建登录
+#import "ATAuthSDK/ATAuthSDK.h"
+
+// bugly
+#import <Bugly/Bugly.h>
+
 
 //  KSMediaPicker所依靠的OC文件
 #import "KSMediaPickerCollectionView.h"
@@ -78,10 +86,8 @@
 #import "AVAsset+VideoInfo.h"
 #import "AliyunPathManager.h"
 
-#import <AliyunVideoSDKPro/AliyunVideoSDKPro.h>
 
-// 阿里云一建登录
-#import "ATAuthSDK/ATAuthSDK.h"
+
 
 
 #endif /* RainbowPlanet_Bridging_Header_h */

+ 39 - 0
RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/ViewController/Follow/CommunityFollowViewController.swift

@@ -24,6 +24,10 @@ class CommunityFollowViewController: BaseViewController {
     }
     weak var observe : NSObjectProtocol?
     
+    var lastContentOffset : CGFloat = 0
+    
+    var navigationBarIsHidden: Bool = false
+    
     var communityFollowDataModels : Array<CommunityFollowDataModel>?
     var communityFollowDataModel : CommunityFollowDataModel?
     /// 关注数组
@@ -722,6 +726,41 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
     }
 }
 
+extension CommunityFollowViewController {
+    func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
+        //全局变量记录滑动前的contentOffset
+        lastContentOffset = scrollView.contentOffset.y;//判断上下滑动时
+    }
+    
+    func scrollViewDidScroll(_ scrollView: UIScrollView) {
+        
+        if scrollView.contentOffset.y > lastContentOffset {
+            //向上
+            if communityNavigationBarIsHidden == false && communityIndex != 2 {
+                NotificationCenter.default.post(name: NSNotification.Name("CommunityViewControllerScrollView"), object: true)
+
+                tableView.snp.updateConstraints { (make) in
+                    make.height.equalTo(kScreenHeight-48-kSafeStatusBarHeight-kTabBarTotalHeight)
+                }
+                self.view.layoutIfNeeded()
+                self.navigationBarIsHidden = true
+            }
+        } else if scrollView.contentOffset.y < lastContentOffset && communityIndex != 2 {
+            //向下
+            
+            if communityNavigationBarIsHidden {
+                NotificationCenter.default.post(name: NSNotification.Name("CommunityViewControllerScrollView"), object: false)
+                tableView.snp.updateConstraints { (make) in
+                    make.height.equalTo(kScreenHeight-48-kNavBarTotalHeight-kTabBarTotalHeight)
+                }
+                self.view.layoutIfNeeded()
+                communityNavigationBarIsHidden = false
+
+            }
+        }
+    }
+}
+
 extension CommunityFollowViewController : JXSegmentedListContainerViewListDelegate {
     func listView() -> UIView {
         return view

+ 57 - 14
RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/ViewController/Main/CommunityViewController.swift

@@ -11,6 +11,10 @@ import JXSegmentedView
 import SwiftyMediator
 import Kingfisher
 
+var communityNavigationBarIsHidden: Bool = false
+
+var communityIndex: Int = 1
+
 enum CommunityModuleTopType : String {
     case communityModuleFollowTop = "CommunityModuleFollowTop"
     case communityModuleRecommendTop = "CommunityModuleRecommendTop"
@@ -51,35 +55,35 @@ class CommunityViewController: BaseViewController {
     }
     
     override func setupLayouts() {
-        
-        navigationBarbgView.snp.makeConstraints { (make) in
-            make.top.equalTo(kNavBarTotalHeight+48)
-            make.left.right.equalToSuperview()
-            make.height.equalTo(62)
-        }
-        
+
         communityNavigationBarView.snp.makeConstraints { (make) in
             make.top.equalTo(kSafeStatusBarHeight)
             make.left.right.equalToSuperview()
             make.height.equalTo(kNavBarHeight)
         }
-        
         segmentedView.snp.makeConstraints { (make) in
             make.left.equalToSuperview()
             make.right.equalToSuperview()
             make.height.equalTo(48)
             make.top.equalTo(kNavBarTotalHeight)
         }
-        
+
         listContainerView.snp.makeConstraints { (make) in
             make.top.equalTo(segmentedView.snp.bottom)
             make.left.right.bottom.equalToSuperview()
         }
+        
+        navigationBarbgView.snp.makeConstraints { (make) in
+            make.top.equalTo(segmentedView.snp.bottom)
+            make.left.right.equalToSuperview()
+            make.height.equalTo(62)
+        }
         linebgImageView.snp.makeConstraints { (make) in
             make.top.equalTo(segmentedView.snp.bottom)
             make.left.right.equalToSuperview()
             make.height.equalTo(20)
         }
+
     }
     
     override func setupData() {
@@ -199,6 +203,36 @@ class CommunityViewController: BaseViewController {
             
         }
         
+        // 滚动
+        observe = NotificationCenter.default.addObserver(forName: NSNotification.Name("CommunityViewControllerScrollView"), object: nil, queue: OperationQueue.main) {[weak self] (notification) in
+            let navigationBarIsHidden = notification.object as? Bool
+            
+            if communityNavigationBarIsHidden { //隐藏
+                if !(navigationBarIsHidden!) {
+                    self?.communityNavigationBarView.snp.updateConstraints { (make) in
+                        make.top.equalTo(kSafeStatusBarHeight)
+                    }
+                    self?.segmentedView.snp.updateConstraints { (make) in
+                        make.top.equalTo(kNavBarTotalHeight)
+                    }
+                }
+            }else {
+                if (navigationBarIsHidden!) {
+                    self?.communityNavigationBarView.snp.updateConstraints { (make) in
+                        make.top.equalTo(-kNavBarTotalHeight)
+                    }
+                    self?.segmentedView.snp.updateConstraints { (make) in
+                        make.top.equalTo(kSafeStatusBarHeight)
+                    }
+                }
+            }
+            communityNavigationBarIsHidden = navigationBarIsHidden!
+            UIView.animate(withDuration: 0.5, animations: { [weak self] in
+                self?.view.layoutIfNeeded()
+                self?.listContainerView.layoutSubviews()
+            }) { (complete) in}
+        }
+        
     }
     
     // 分享
@@ -359,10 +393,6 @@ class CommunityViewController: BaseViewController {
     
     var index : Int?
     
-//    override func didReceiveMemoryWarning() {
-//        super.didReceiveMemoryWarning()
-//    }
-    
 }
 
 extension CommunityViewController : JXSegmentedViewDelegate {
@@ -373,11 +403,24 @@ extension CommunityViewController : JXSegmentedViewDelegate {
         }
         if index == 1 {
             communityModuleTopType = .communityModuleRecommendTop
-
         }
         if index == 2 {
             communityModuleTopType = .communityModulePlanetTop
+            if (communityNavigationBarIsHidden) {
+                self.communityNavigationBarView.snp.updateConstraints { (make) in
+                    make.top.equalTo(kSafeStatusBarHeight)
+                }
+                self.segmentedView.snp.updateConstraints { (make) in
+                     make.top.equalTo(kNavBarTotalHeight)
+                }
+                communityNavigationBarIsHidden = false
+                UIView.animate(withDuration: 0.5, animations: { [weak self] in
+                    self?.view.layoutIfNeeded()
+                    self?.listContainerView.layoutSubviews()
+                }) { (complete) in}
+            }
         }
+        communityIndex = index
         listContainerView.didClickSelectedItem(at: index)
 
         self.index = index

+ 39 - 0
RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/ViewController/Recommend/CommunityRecommnendViewController.swift

@@ -24,6 +24,10 @@ class CommunityRecommnendViewController: UIViewController {
     /// 评论需要的模型
     var communityRecommendDataModel : CommunityRecommendDataModel?
     
+    var lastContentOffset : CGFloat = 0
+    
+    var navigationBarIsHidden: Bool = false
+    
     override func viewDidLoad() {
         super.viewDidLoad()
         setupViews()
@@ -630,6 +634,41 @@ extension CommunityRecommnendViewController : UITableViewDelegate,UITableViewDat
     }
 }
 
+extension CommunityRecommnendViewController {
+    func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
+        //全局变量记录滑动前的contentOffset
+        lastContentOffset = scrollView.contentOffset.y;//判断上下滑动时
+    }
+    
+    func scrollViewDidScroll(_ scrollView: UIScrollView) {
+        if scrollView.contentOffset.y > lastContentOffset && communityIndex != 2 {
+            //向上
+            if communityNavigationBarIsHidden == false {
+                NotificationCenter.default.post(name: NSNotification.Name("CommunityViewControllerScrollView"), object: true)
+                tableView.snp.updateConstraints { (make) in
+                    make.height.equalTo(kScreenHeight-48-kSafeStatusBarHeight-kTabBarTotalHeight)
+                }
+//                self.view.layoutIfNeeded()
+                communityNavigationBarIsHidden = true
+
+            }
+        } else if scrollView.contentOffset.y < lastContentOffset && communityIndex != 2 {
+            //向下
+            
+            if communityNavigationBarIsHidden {
+                NotificationCenter.default.post(name: NSNotification.Name("CommunityViewControllerScrollView"), object: false)
+                tableView.snp.updateConstraints { (make) in
+                    make.height.equalTo(kScreenHeight-48-kNavBarTotalHeight-kTabBarTotalHeight)
+                }
+//                self.view.layoutIfNeeded()
+                communityNavigationBarIsHidden = false
+            }
+        }
+    }
+}
+
+
+
 extension CommunityRecommnendViewController : JXSegmentedListContainerViewListDelegate {
     func listView() -> UIView {
         return view

+ 1 - 1
RainbowPlanet/RainbowPlanet/Modules/CommunityModule/CommunityShareContent/CommunityShareContentViewController.swift

@@ -7,7 +7,7 @@
 //
 
 import UIKit
-import EFQRCode
+//import EFQRCode
 import Kingfisher
 
 class CommunityShareContentViewController: BaseViewController {

+ 11 - 1
RainbowPlanet/RainbowPlanet/Modules/PublishModule/PublishAddTopic/View/PublishTopicTypeItemCollectionCell.swift

@@ -52,10 +52,10 @@ class PublishTopicTypeItemCollectionCell: UICollectionViewCell {
     //MRAK: - 设置View
     private func setupViews() {
         addSubview(picImageView)
+        addSubview(gradientView)
         addSubview(titleLabel)
         addSubview(focusView)
         
-        backgroundColor = UIColor.green
     }
     
     private func setupLayouts() {
@@ -80,6 +80,16 @@ class PublishTopicTypeItemCollectionCell: UICollectionViewCell {
         return picImageView
     }()
     
+    private lazy var gradientView : UIView = {
+        let gradientView = UIView(frame: self.bounds)
+        let bgLayer1 = CAGradientLayer()
+        bgLayer1.frame = gradientView.bounds
+        bgLayer1.rainbowLayer(gradientColors: [UIColor(hexString: "000000", alpha: 0).cgColor,UIColor(hexString: "000000", alpha:0.5).cgColor], gradientLocations: [0,1], gradientDisplayType: .vertical, startPoint: CGPoint(x: 0, y: 0), endPoint: CGPoint(x: 1, y: 1))
+        gradientView.layer.addSublayer(bgLayer1)
+        gradientView.isUserInteractionEnabled = true
+        return gradientView
+    }()
+    
     private lazy var titleLabel: UILabel = {
         let titleLabel = UILabel()
         titleLabel.textColor = kffffffColor

+ 9 - 3
RainbowPlanet/RainbowPlanet/Modules/PublishModule/PublishMediaPicker/Controller/KSMediaPickerController.swift

@@ -202,10 +202,16 @@ open class KSMediaPickerController: UIViewController, UICollectionViewDelegate,
                 let itemModel = selItem as! KSMediaPickerItemModel
                 // 添加选中image
                 let asset = itemModel.asset
-                let pixelWidth = CGFloat(asset.pixelWidth)
-                let pixelHeight = CGFloat(asset.pixelHeight)
+                var pixelWidth = CGFloat(asset.pixelWidth)
+                var pixelHeight = CGFloat(asset.pixelHeight)
+                if pixelWidth > 1080 {
+                    pixelWidth = 1080
+                    pixelHeight = 1080 * pixelHeight / pixelWidth
+                }
                 PHImageManager.default().requestImage(for: asset, targetSize: CGSize(width: pixelWidth, height: pixelHeight), contentMode: .aspectFit, options: KSMediaPickerItemModel.pictureOptions) { (image, info) in
-                    imageArray.append(image!)
+                    image?.pngData()
+                    let image1 = UIImage(data: (image?.pngData())!, scale: 0.6)
+                    imageArray.append(image1!)
                 }
                 
                 if index == self._selectedAssetArray.count-1 {

+ 0 - 1
RainbowPlanet/RainbowPlanet/Modules/SearchModule/SearchContentList/View/SearchContentListCollectionCell.swift

@@ -226,7 +226,6 @@ class SearchContentListCollectionCell: UICollectionViewCell {
     var communityPostDataModel : CommunityPostDataModel? {
         didSet {
             contentImageView.kf.setImage(with: kURLThumbnailsImage(name: communityPostDataModel?.img ?? "",size: CGSize(width: self.size.width, height: (kScreenWidth-15)/2)), placeholder: kImage(name: "default_pic"))
-            titleLabel.text = communityPostDataModel?.title
             
             if communityPostDataModel?.title == "" || communityPostDataModel?.title == nil {
                 titleLabel.text = "\(communityPostDataModel?.content?.replacingOccurrences(of: "\n", with: "").replacingOccurrences(of: "\r", with: "").prefix(20) ?? "")"

+ 11 - 4
RainbowPlanet/RainbowPlanet/Service/SwiftMoyaService/SwiftMoyaServiceManger/SwiftMoyaNetWorkManager/ApiMacro.swift

@@ -8,11 +8,18 @@
 
 import Foundation
 
+/// Service
 let kPersonalService = false
 let kDevelopSever = false
 let kBetaSever = false
 let kProductSever = true
 
+/// h5Service
+let kH5PersonalService = false
+let kH5DevelopSever = false
+let kH5BetaSever = false
+let kH5ProductSever = true
+
 // MARK: - 数据服务器
 public func kApiDataPrefix() -> String {
     if kPersonalService /** 接口前缀-个人服务器*/ {
@@ -49,13 +56,13 @@ public func kApiVirusPrefix() -> String {
 
 // MARK: - H5
 public func kApiH5Prefix() -> String {
-    if kPersonalService /** 接口前缀-个人服务器*/ {
+    if kH5PersonalService /** 接口前缀-个人服务器*/ {
         return "http://192.168.23.238:8820"
-    }else if kDevelopSever /** 接口前缀-开发服务器*/ {
+    }else if kH5DevelopSever /** 接口前缀-开发服务器*/ {
         return "http://h5.dev.caihongxingqiu.com"
-    } else if kBetaSever /** 接口前缀-测试服务器*/{
+    } else if kH5BetaSever /** 接口前缀-测试服务器*/{
         return "http://h5.beta.caihongxingqiu.com"
-    }else if kProductSever /** 接口前缀-生产服务器*/ {
+    }else if kH5ProductSever /** 接口前缀-生产服务器*/ {
         return "http://h5.uptoyo.com"
     }else {
         return ""

二進制
RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/AppIcon.appiconset/AppIconiPhoneApp_60pt@2x.png


二進制
RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/AppIcon.appiconset/AppIconiPhoneApp_60pt@3x.png


二進制
RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/AppIcon.appiconset/AppIconiPhoneNotification_20pt@2x.png


二進制
RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/AppIcon.appiconset/AppIconiPhoneNotification_20pt@3x.png


二進制
RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/AppIcon.appiconset/AppIconiPhoneSpootlight5_29pt@2x.png


二進制
RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/AppIcon.appiconset/AppIconiPhoneSpootlight5_29pt@3x.png


二進制
RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/AppIcon.appiconset/AppIconiPhoneSpootlight7_40pt@2x.png


二進制
RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/AppIcon.appiconset/AppIconiPhoneSpootlight7_40pt@3x.png


二進制
RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/AppIcon.appiconset/AppIconstore_1024pt.png


二進制
RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/posters_pic_text.imageset/posters_pic_text@2x.png


二進制
RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/posters_pic_text.imageset/posters_pic_text@3x.png