123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452 |
- #import <UIKit/UIKit.h>
- #import "WXComponent.h"
- #import "WXJSExceptionInfo.h"
- #import "WXResourceResponse.h"
- #import "WXResourceRequest.h"
- #import "WXBridgeProtocol.h"
- #import "WXApmForInstance.h"
- #import "WXComponentManager.h"
- extern NSString *const bundleUrlOptionKey;
- @interface WXSDKInstance : NSObject
- - (instancetype)init;
- - (instancetype)initWithRenderType:(NSString*)renderType;
- @property (nonatomic, strong, readonly) NSString* renderType;
- @property (nonatomic, assign, readonly) BOOL isCustomRenderType;
- @property (nonatomic, assign) BOOL isMainContainerStack;
- @property (nonatomic, weak) UIViewController *viewController;
- @property (nonatomic, strong) UIView *rootView;
- @property (nonatomic, assign) BOOL isRootViewFrozen;
- @property (nonatomic, assign) BOOL needValidate;
- @property (nonatomic, assign) BOOL useBackupJsThread;
- @property (nonatomic, strong) NSURL *scriptURL;
- @property (nonatomic, weak) WXSDKInstance *parentInstance;
- @property (nonatomic, weak) NSString *parentNodeRef;
- @property (nonatomic, strong) NSString *instanceId;
- @property (nonatomic, assign) BOOL needPrerender;
- @property (nonatomic, strong) NSDictionary* containerInfo;
- @property (nonatomic, assign, readonly) BOOL isRendered;
- @property (nonatomic, readonly, strong) WXComponentManager *componentManager;
- typedef NS_ENUM(NSInteger, WXState) {
- WeexInstanceAppear = 100,
- WeexInstanceDisappear,
- WeexInstanceForeground,
- WeexInstanceBackground,
- WeexInstanceMemoryWarning,
- WeexInstanceBindChanged,
- WeexInstanceDestroy
- };
- typedef NS_ENUM(NSInteger, WXErrorType) {
- TemplateErrorType = 1,
- };
- typedef NS_ENUM(NSInteger, WXErrorCode) {
- PlatformErrorCode = 1000,
- OSVersionErrorCode,
- AppVersionErrorCode,
- WeexSDKVersionErrorCode,
- DeviceModelErrorCode,
- FrameworkVersionErrorCode,
- };
- @property (nonatomic, assign) WXState state;
- @property (nonatomic, copy) void (^onCreate)(UIView *);
- @property (nonatomic, copy) void (^onLayoutChange)(UIView *);
- @property (nonatomic, copy) void (^renderFinish)(UIView *);
- @property (nonatomic, copy) void (^refreshFinish)(UIView *);
- @property (nonatomic, strong) NSString * bundleType;
- @property (nonatomic, assign, readonly) BOOL dataRender;
- @property (nonatomic, assign, readonly) BOOL wlasmRender;
-
- @property (nonatomic, copy) void (^onFailed)(NSError *error);
- - (id<WXBridgeProtocol>)instanceJavaScriptContext;
- @property (nonatomic, copy) void (^onJSRuntimeException)(WXJSExceptionInfo * jsException);
- @property (nonatomic, copy) void (^onScroll)(CGPoint contentOffset);
- @property (nonatomic, copy) void (^onRenderProgress)(CGRect renderRect);
- @property (nonatomic, copy) void(^onJSDownloadedFinish)(WXResourceResponse *response,WXResourceRequest *request,NSData *data, NSError* error);
- @property (nonatomic, copy) BOOL (^onRenderTerminateWhenJSDownloadedFinish)(WXResourceResponse *response,WXResourceRequest *request,NSData *data, NSError* error);
- @property(nonatomic,strong) NSDictionary* continerInfo;
- @property (nonatomic, assign) CGRect frame;
- @property (atomic, strong) NSMutableDictionary *userInfo;
- @property (nonatomic, assign, readonly) CGFloat pixelScaleFactor;
- @property (nonatomic, assign)BOOL trackComponent;
- - (void)renderWithURL:(NSURL *)url;
- - (void)renderWithURL:(NSURL *)url options:(NSDictionary *)options data:(id)data;
- - (void)renderView:(id)source options:(NSDictionary *)options data:(id)data;
- - (void)reload:(BOOL)forcedReload;
- - (void)reloadLayout;
- - (void)refreshInstance:(id)data;
- - (void)destroyInstance;
- - (void)forceGarbageCollection;
- - (id)moduleForClass:(Class)moduleClass;
- - (WXComponent *)componentForRef:(NSString *)ref;
- - (NSUInteger)numberOfComponents;
- - (void)enumerateComponentsUsingBlock:(void (^)(WXComponent *component, BOOL *stop))block;
- - (BOOL)checkModuleEventRegistered:(NSString*)event moduleClassName:(NSString*)moduleClassName;
- - (void)fireModuleEvent:(Class)module eventName:(NSString *)eventName params:(NSDictionary*)params;
- - (void)fireGlobalEvent:(NSString *)eventName params:(NSDictionary *)params;
- - (NSURL *)completeURL:(NSString *)url;
- - (NSString*) bundleTemplate;
- @property (nonatomic, strong) NSString *bizType;
- @property (nonatomic, strong) NSString *pageName;
- @property (nonatomic, weak) id pageObject;
- @property (nonatomic, strong) NSMutableDictionary *performanceDict;
- @property (nonatomic, strong) WXApmForInstance* apmInstance;
- @property (nonatomic, assign) BOOL appearState;
- - (void)willAppear;
- - (void)didDisappear;
- - (void)setPageKeepRawCssStyles;
- - (void)isKeepingRawCssStyles:(void(^)(BOOL))callback;
- - (void)setPageArgument:(NSString*)key value:(NSString*)value;
- - (void)setPageRequiredWidth:(CGFloat)width height:(CGFloat)height;
- - (void)setViewportWidth:(CGFloat)width;
- #pragma mark - dc extend
- @property(nonatomic, assign)BOOL dc_transparentEvent;
- @property (nonatomic, copy) void (^bundleJsExecFinish)(void);
- @property (nonatomic, copy) UIView* (^dc_customRootView)(CGRect);
- @property (nonatomic, assign, readonly) CGFloat dc_textFontSize;
- @property (nonatomic, strong) NSString *dc_docPath;
- @property(nonatomic, strong) NSString *dc_webviewId;
- @property(nonatomic, strong) NSString *dc_oldInstanceId;
- @property(nonatomic, weak) id dc_appframeContext;
- - (void)dc_setDefalutFontSize:(CGFloat)defaultFontSize;
- @property (nonatomic, strong) NSDictionary *properties DEPRECATED_MSG_ATTRIBUTE();
- @property (nonatomic, assign) NSTimeInterval networkTime DEPRECATED_MSG_ATTRIBUTE();
- @property (nonatomic, copy) void (^updateFinish)(UIView *);
- @end
- @interface WXSDKInstance (Deprecated)
- - (void)finishPerformance DEPRECATED_MSG_ATTRIBUTE();
- - (void)reloadData:(id)data DEPRECATED_MSG_ATTRIBUTE("Use refreshInstance: method instead.");
- - (void)creatFinish DEPRECATED_MSG_ATTRIBUTE();
- @end
|