CNLiveVideoClassifyProtocol.h 4.33 KB
//
//  CNLiveVideoClassifyProtocol.h
//  CNLiveVideoClassifyKit
//
//  Created by CNLive on 2021/9/10.
//

#import <Foundation/Foundation.h>

typedef void(^FTPopDoneBlock)(NSInteger selectIndex);

typedef void(^FTPopDismissBlock)(void);

NS_ASSUME_NONNULL_BEGIN
@protocol CNLiveVideoClassifyProtocol <NSObject>
/**
 *返回需要加载的VC
 *pageType加载页面类型
 *param 传给View的参数
 */
-(UIViewController *)listViewShowPageType:(NSUInteger)pageType
                          param:(NSDictionary *)param;
/**
 *返回需要返回的VC和处理push操作
 *currentVC当前控制器
 *pushType 操作类型
 *pageType加载页面类型
 *param 传给View的参数
 */
-(UIView *)showViewOrPushVCWithCurrentVC:(UIViewController *)currentVC
                                pushType:(CNLiveClassifyJumpType)type pageType:(NSInteger)pageType param:(NSDictionary *_Nullable)param;

/**
 *刷新当时显示VC
 *currentVC当前展示的页面VC
 *pageType加载页面类型
 *param 传给View的参数
 *refreshTime刷新间隔时间
 */
-(void)listViewRefreshWithVC:(UIViewController *)currentVC
                    pageType:(NSInteger)pageType
                       param:(NSDictionary *)param
                 refreshTime:(NSTimeInterval)time;

-(BOOL)audioPlayerIsplaying;
- (void)checkForloginTurnToWithURL:(NSURL *)url;

- (void)checkWithFunctionForShareURL:(NSString *)shareUrl;

- (void)bringCenterLoginViewToFront;

//加载FTPopOverMenuConfiguration需要
-(void)popOverShowEvent:(UIEvent *)event
                imageDone:(FTPopDoneBlock)doneBlock
            dismissBlock:(FTPopDismissBlock)dismissBlock;

/// 展示登录窗口
/// @param loginPrepositionUrl 为appdelegate属性赋值字符串
- (void)showLoginViewWithString:(NSString *)loginPrepositionUrl;
/**
 关注当前订阅号请求完成后不发通知wjb

 @param isFocus 是否关注
 @param spId spId
 @param completerBlock 返回
 */
- (void)requestSPClassNoNotifWithIsFocus:(BOOL)isFocus
                              SPId:(NSString *)spId
                    CompleterBlock:(void(^)(BOOL isSuccess,BOOL noNet))completerBlock;
/**
 调用分享界面进行分享操作
 
 @param shareTitle 分享标题
 @param shareUrl 分享的链接
 @param shareDesc 分享的描述
 @param shareImage 图片集合,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)
 @param isFull 是否横屏显示分享界面
 @param isHiddenWjj 是否隐藏网加加
 */
- (void)showShareViewWithParamForShareTitle:(NSString *)shareTitle
                                  ShareUrl:(NSString *)shareUrl
                                 ShareDesc:(NSString *)shareDesc
                                ShareImage:(id)shareImage
                                ScreenFull:(BOOL)isFull
                                 HiddenWjj:(BOOL)isHiddenWjj
                                  HiddenQQ:(BOOL)isHiddenQQ
                                  HiddenWB:(BOOL)isHiddenWB
                          HiddenLifeCircle:(BOOL)isHiddenLifeCircle
                        HiddenWechatCircle:(BOOL)isHiddenWechatCircle
                              HiddenWechat:(BOOL)isHiddenWechat
                              HiddenSafari:(BOOL)isHiddenSafari
                                    FormVC:(UIViewController *)formVC
                                  TopImage:(NSArray<NSString *> *)topImage
                                  TopTitles:(NSArray<NSString *> *)topTitle
                                  programId:(NSString *)programId
                                channelName:(NSString *)channelName;

/// 跳转规
/// @param type 按着后台给的传
/// @param to 按着后台给的传
/// @param shopType 按着后台给的传
/// @param currentVC 当前控制器
-(void)skipType:(nonnull NSString*)type to:(nonnull NSString*)to shopType:(nonnull NSString*)shopType currentVC:(nonnull UIViewController*)currentVC;

/// 打开用户个人视频页
/// @param params 传递参数
- (void)openPersonMessage:(NSDictionary *)params;
/// 打开视频播放页面
/// @param currentIndex 当前选中
/// @param dataList 视频数组
- (void)openVideoPlayerVCWithCurrentIndex:(NSString *)currentIndex  dataList:(NSArray *)dataList;
/// 点赞通知网页更新交互
/// @param param 更新参数
- (void)requestWittnessLikeNotification:(NSDictionary *)param;
@end

NS_ASSUME_NONNULL_END