BBAJSBindingEnvExportProtocol.h 1.33 KB
//
//  BBAJSBindingEnvExportProtocol.h
//  SWAN
//
//  Created by baidu on 2018/7/25.
//  Copyright © 2018年 baidu. All rights reserved.
//

#import <Foundation/Foundation.h>
#import <JavaScriptCore/JavaScriptCore.h>
#import "BBAJSBindingBase.h"
#import "BBAJSBindingEventBase.h"

@protocol BBAJSBindingEnvExportProtocol <NSObject>

@optional

/**
 当前绑定所在小程序/小游戏的appID

 @param appID 当前绑定所在小程序/小游戏的appID
 */
- (void)currentExecutionMNPAppID:(NSString *)appID;


/**
 当前js错误回调block

 @param jsErrorCallBack js错误回调
 */
- (void)throwJsErrorCallBack:(JSBindingThowJSErrorCallBack)jsErrorCallBack;

/**
 * @brief event callback
 *
 */
- (void)currentEventCallback:(BBAJSBindingEventCallback)eventCallback;


#pragma mark - protect & unProtect callback, 成对使用

/**
 * @brief 使自身对应的绑定对象引用计数+1(使绑定对象不被GC,与unProtectJSBindingObjectCallback成对使用)
 *
 */
- (void)protectJSBindingObjectCallback:(JSBindingProtectJSBObjectCallback)protectJSBObjectCallback;

/**
 * @brief 使自身对应的绑定对象引用计数-1(使绑定对象可以被GC,referenceCount = 0时,与protectJSBindingObjectCallback成对使用)
 *
 */
- (void)unProtectJSBindingObjectCallback:(JSBindingUnProtectJSBObjectCallback)unProtectJSBObjectCallback;


@end