浏览代码

Merge branch 'master' of 60.205.190.38:iOS/MKRRadioManager

尹永奇 4 年之前
父节点
当前提交
813366ae2b
共有 22 个文件被更改,包括 57 次插入9 次删除
  1. 2 0
      Example/MKRRadioManager.xcodeproj/project.pbxproj
  2. 1 0
      Example/MKRRadioManager/MKRPlayControlViewController.m
  3. 0 1
      Example/MKRRadioManager/MKRViewController.m
  4. 1 1
      Example/Podfile.lock
  5. 6 0
      Example/Pods/Local Podspecs/MKRRadioManager.podspec.json
  6. 1 1
      Example/Pods/Manifest.lock
  7. 1 0
      Example/Pods/Target Support Files/MKRRadioManager/MKRRadioManager.xcconfig
  8. 1 0
      Example/Pods/Target Support Files/Pods-MKRRadioManager_Example/Pods-MKRRadioManager_Example.debug.xcconfig
  9. 1 0
      Example/Pods/Target Support Files/Pods-MKRRadioManager_Example/Pods-MKRRadioManager_Example.release.xcconfig
  10. 1 0
      Example/Pods/Target Support Files/Pods-MKRRadioManager_Tests/Pods-MKRRadioManager_Tests.debug.xcconfig
  11. 1 0
      Example/Pods/Target Support Files/Pods-MKRRadioManager_Tests/Pods-MKRRadioManager_Tests.release.xcconfig
  12. 3 0
      MKRRadioManager.podspec
  13. 4 0
      MKRRadioManager/Classes/MKRRadioManager/Headers/MKRPlayResourceUpdateProtocol.h
  14. 14 1
      MKRRadioManager/Classes/MKRRadioManager/MKRAVPlayer/MKRAVPlayer.h
  15. 16 3
      MKRRadioManager/Classes/MKRRadioManager/MKRAVPlayer/MKRAVPlayer.m
  16. 1 1
      MKRRadioManager/Classes/MKRRadioManager/MKRRadioResorce.h
  17. 2 0
      MKRRadioManager/Classes/MKRRadioManager/MKRWIFIDeviceManager/MKRWIFIDeviceManager.m
  18. 1 1
      fastlane/Fastfile
  19. 二进制
      libs/libAS-Control.framework/Info.plist
  20. 二进制
      libs/libAS-Control.framework/libAS-Control
  21. 二进制
      libs/libUPNP.framework/Info.plist
  22. 二进制
      libs/libUPNP.framework/libUPNP

+ 2 - 0
Example/MKRRadioManager.xcodeproj/project.pbxproj

@@ -532,6 +532,7 @@
 				CODE_SIGN_STYLE = Automatic;
 				DEVELOPMENT_TEAM = WSH9723Y7V;
 				ENABLE_BITCODE = YES;
+				EXCLUDED_ARCHS = "";
 				GCC_PRECOMPILE_PREFIX_HEADER = YES;
 				GCC_PREFIX_HEADER = "MKRRadioManager/MKRRadioManager-Prefix.pch";
 				INFOPLIST_FILE = "MKRRadioManager/MKRRadioManager-Info.plist";
@@ -553,6 +554,7 @@
 				CODE_SIGN_STYLE = Automatic;
 				DEVELOPMENT_TEAM = WSH9723Y7V;
 				ENABLE_BITCODE = YES;
+				EXCLUDED_ARCHS = "";
 				GCC_PRECOMPILE_PREFIX_HEADER = YES;
 				GCC_PREFIX_HEADER = "MKRRadioManager/MKRRadioManager-Prefix.pch";
 				INFOPLIST_FILE = "MKRRadioManager/MKRRadioManager-Info.plist";

+ 1 - 0
Example/MKRRadioManager/MKRPlayControlViewController.m

@@ -23,6 +23,7 @@
 - (instancetype)initWithDevice:(MKRUPnPDevice *)device{
     if (self = [super init]) {
 //        [[MKRRadioControlMaster shareMaster] changeCurrentDevice:device];
+        
     }
     return self;
 }

+ 0 - 1
Example/MKRRadioManager/MKRViewController.m

@@ -44,7 +44,6 @@
     [_MKRWIFIDeviceManager searchDeviceWithSearchTime:20 timeBlock:^(NSInteger time) {
         [self.tableView reloadData];
     }];
-    
 }
 
 - (void)viewDidLoad

+ 1 - 1
Example/Podfile.lock

@@ -15,7 +15,7 @@ EXTERNAL SOURCES:
     :path: "../"
 
 SPEC CHECKSUMS:
-  MKRRadioManager: 80a67b10a144134e599acc0a8ef26e71ec234271
+  MKRRadioManager: 736d6a957cf11ecf269ee6f22a02e46f4fc7a8d5
   YYCategory: d85135b05d2806c90930a5bbadfc1501396a3db9
 
 PODFILE CHECKSUM: f65396e8a7f07654404054ab9d38dc4b7b6f8818

+ 6 - 0
Example/Pods/Local Podspecs/MKRRadioManager.podspec.json

@@ -21,5 +21,11 @@
   "source_files": "MKRRadioManager/Classes/MKRRadioManager/**/*",
   "ios": {
     "vendored_frameworks": "libs/*.framework"
+  },
+  "user_target_xcconfig": {
+    "EXCLUDED_ARCHS[sdk=iphonesimulator*]": "arm64"
+  },
+  "pod_target_xcconfig": {
+    "VALID_ARCHS": "armv7 arm64 x86_64"
   }
 }

+ 1 - 1
Example/Pods/Manifest.lock

@@ -15,7 +15,7 @@ EXTERNAL SOURCES:
     :path: "../"
 
 SPEC CHECKSUMS:
-  MKRRadioManager: 80a67b10a144134e599acc0a8ef26e71ec234271
+  MKRRadioManager: 736d6a957cf11ecf269ee6f22a02e46f4fc7a8d5
   YYCategory: d85135b05d2806c90930a5bbadfc1501396a3db9
 
 PODFILE CHECKSUM: f65396e8a7f07654404054ab9d38dc4b7b6f8818

+ 1 - 0
Example/Pods/Target Support Files/MKRRadioManager/MKRRadioManager.xcconfig

@@ -8,3 +8,4 @@ PODS_ROOT = ${SRCROOT}
 PODS_TARGET_SRCROOT = ${PODS_ROOT}/../..
 PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
 SKIP_INSTALL = YES
+VALID_ARCHS = armv7 arm64 x86_64

+ 1 - 0
Example/Pods/Target Support Files/Pods-MKRRadioManager_Example/Pods-MKRRadioManager_Example.debug.xcconfig

@@ -1,3 +1,4 @@
+EXCLUDED_ARCHS[sdk=iphonesimulator*] = arm64
 FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/../../libs"
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
 HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/MKRRadioManager" "${PODS_ROOT}/Headers/Public/YYCategory"

+ 1 - 0
Example/Pods/Target Support Files/Pods-MKRRadioManager_Example/Pods-MKRRadioManager_Example.release.xcconfig

@@ -1,3 +1,4 @@
+EXCLUDED_ARCHS[sdk=iphonesimulator*] = arm64
 FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/../../libs"
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
 HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/MKRRadioManager" "${PODS_ROOT}/Headers/Public/YYCategory"

+ 1 - 0
Example/Pods/Target Support Files/Pods-MKRRadioManager_Tests/Pods-MKRRadioManager_Tests.debug.xcconfig

@@ -1,3 +1,4 @@
+EXCLUDED_ARCHS[sdk=iphonesimulator*] = arm64
 FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/../../libs"
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
 HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/MKRRadioManager" "${PODS_ROOT}/Headers/Public/YYCategory"

+ 1 - 0
Example/Pods/Target Support Files/Pods-MKRRadioManager_Tests/Pods-MKRRadioManager_Tests.release.xcconfig

@@ -1,3 +1,4 @@
+EXCLUDED_ARCHS[sdk=iphonesimulator*] = arm64
 FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/../../libs"
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
 HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/MKRRadioManager" "${PODS_ROOT}/Headers/Public/YYCategory"

+ 3 - 0
MKRRadioManager.podspec

@@ -33,6 +33,9 @@ TODO: Add long description of the pod here.
   s.source_files = 'MKRRadioManager/Classes/MKRRadioManager/**/*'
   s.ios.vendored_frameworks = 'libs/*.framework'
   
+  s.user_target_xcconfig = { 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' }
+  s.pod_target_xcconfig = {'VALID_ARCHS'=>'armv7 arm64 x86_64'}
+  
   # s.resource_bundles = {
   #   'MKRRadioManager' => ['MKRRadioManager/Assets/*.png']
   # }

+ 4 - 0
MKRRadioManager/Classes/MKRRadioManager/Headers/MKRPlayResourceUpdateProtocol.h

@@ -83,4 +83,8 @@
 /// @param channelOrder 改变的频道号
 - (void)playListDiChange:(NSArray <id <MKRRadioResorce>> *)playList channelOrder:(NSInteger)channelOrder;
 
+/// 定时播放状态该表
+/// @param isOpen 开启或者结束
+- (void)timingStateDidChange:(BOOL)isOpen;
+
 @end

+ 14 - 1
MKRRadioManager/Classes/MKRRadioManager/MKRAVPlayer/MKRAVPlayer.h

@@ -65,6 +65,10 @@ typedef enum : NSUInteger {
 /// @param index 准备播放的资源在播放列表的下标
 - (BOOL)willPreparePlayAtIndex:(NSInteger)index;
 
+/// 即将切换播放资源
+/// @param resource 即将播放的资源 此方法触发时 currentResource 还是上一个播放的资源
+- (void)willChangePlayResouce:(id<MKRRadioResorce>)resource;
+
 /**
  播放完成
  
@@ -93,6 +97,10 @@ typedef enum : NSUInteger {
 /// 可用缓存为空导致
 - (void)stalledByCacheEmtpy;
 
+/// 快进(快退)完成
+/// @param duration 快进的时间点
+- (void)didSeekAtDuration:(NSInteger)duration;
+
 @end
 
 @interface MKRAVPlayer : NSObject
@@ -132,7 +140,7 @@ typedef enum : NSUInteger {
  */
 @property (nonatomic, assign) NSInteger currentIndex;
 
-@property (nonatomic, assign) id <MKRRadioResorce> currentResource;
+@property (nonatomic, strong) id <MKRRadioResorce> currentResource;
 
 /**
  是否正在播放中
@@ -145,6 +153,11 @@ typedef enum : NSUInteger {
 @property (nonatomic, assign) BOOL shouldAutoPlay;
 
 /**
+ 快进或快退之后是否允许自动播放
+ */
+@property (nonatomic, assign) BOOL shouldAutoPlayWhenSeekFinish;
+
+/**
  播放模式
  */
 @property (nonatomic, assign) MKRAVPlayerPlayMode playMode;

+ 16 - 3
MKRRadioManager/Classes/MKRRadioManager/MKRAVPlayer/MKRAVPlayer.m

@@ -262,6 +262,9 @@ NSURL * MKRUrlWithString(NSString *string){
 }
 
 - (void)resetPlayer{
+    if ([self.delegate respondsToSelector:@selector(willChangePlayResouce:)]) {
+        [self.delegate willChangePlayResouce:self.currentResource];
+    }
     self.totalTime = 0;
 //    self.currentTime = 0;
     self.playerItem = nil;
@@ -453,9 +456,18 @@ NSURL * MKRUrlWithString(NSString *string){
     [_player seekToTime:CMTimeMakeWithSeconds(currentTime, NSEC_PER_SEC) completionHandler:^(BOOL finished) {
         dispatch_async(dispatch_get_main_queue(), ^{
             self->_isSeeking = NO;
-            [self.player play];
-            self.player.rate = self.rate;
-            self.state = MKRAVPlayerStatePlaying;
+            if ([self.delegate respondsToSelector:@selector(didSeekAtDuration:)]) {
+                [self.delegate didSeekAtDuration:currentTime];
+            }else{
+                if (self.shouldAutoPlayWhenSeekFinish) {
+                    [self.player play];
+                    self.player.rate = self.rate;
+                    self.state = MKRAVPlayerStatePlaying;
+                }else{
+                    [self.player pause];
+                    self.state = MKRAVPlayerStatePause;
+                }
+            }
         });
     }];
 }
@@ -605,6 +617,7 @@ NSURL * MKRUrlWithString(NSString *string){
         if (self.playerItem.playbackLikelyToKeepUp && self.state == MKRAVPlayerStatePlaying) {
             if (!self.player.rate) {
                 _interruptWhenPlaying = YES;
+                self.state = MKRAVPlayerStatePause;
             }
         }else{
             _interruptWhenPlaying = NO;

+ 1 - 1
MKRRadioManager/Classes/MKRRadioManager/MKRRadioResorce.h

@@ -22,7 +22,7 @@
 /** 歌曲专辑封面 */
 @property(nonatomic, strong) NSString *songAlbumCover;
 /** 歌曲ID  */
-@property(nonatomic, assign) NSInteger songID;
+@property(nonatomic, assign) int64_t songID;
 /** 歌曲来源 */
 @property(nonatomic, assign) MKRSourcePlatform songFrom;
 /** 节目专辑ID */

+ 2 - 0
MKRRadioManager/Classes/MKRRadioManager/MKRWIFIDeviceManager/MKRWIFIDeviceManager.m

@@ -481,6 +481,7 @@ static inline void wd_playControl_queue(void (^block)(void)){
     MKRM3UListModel *m3uModel = [MKRM3UListModel tempChannelM3UModelWithSongs:songs startIndex:index];
     m3uModel.userID = self.userID;
     m3uModel.playModeString = [self playModeStringWithPlayMode:playMode];
+    [MKRWIFIDeviceManager shareManager].currentTempM3UListModel = m3uModel;
     wd_playControl_queue(^{
         [[MKRWIFIDeviceManager shareManager] setM3UList:m3uModel];
         id <MKRRadioResorce> song = songs[index];
@@ -504,6 +505,7 @@ static inline void wd_playControl_queue(void (^block)(void)){
     MKRM3UListModel *m3uModel = [MKRM3UListModel tempChannelM3UModelWithSongs:songs startIndex:index];
     m3uModel.userID = self.userID;
     m3uModel.playModeString = [self playModeStringWithPlayMode:playMode];
+    [MKRWIFIDeviceManager shareManager].currentTempM3UListModel = m3uModel;
     wd_playControl_queue(^{
         [[MKRWIFIDeviceManager shareManager] setM3UList:m3uModel];
         id <MKRRadioResorce> song = songs[0];

+ 1 - 1
fastlane/Fastfile

@@ -20,7 +20,7 @@ git_add(path: ".")
 
 #    git commit
 
-git_commit(path: ".", message: "打开bitcode")
+git_commit(path: ".", message: "MKRAVplayer 添加即将切换播放资源代理方法")
 
 #    git push origin master
 

二进制
libs/libAS-Control.framework/Info.plist


二进制
libs/libAS-Control.framework/libAS-Control


二进制
libs/libUPNP.framework/Info.plist


二进制
libs/libUPNP.framework/libUPNP