Framework文件

  • FireflyJSBridge.framework

配置链接

  • 需要添加FireflyJSBridge.framework的链接,以及对应的依赖链接 ;详细参见接入iOS

头文件引用

简单导入

#import <FireflyJSBridge/FireflyJSBridge.h>

容器类型

我们提供两种容器

  • FireflyJSUIWebViewController ,内部是UIWebView, 支持离线包接入
  • FireflyJSWKWebViewController ,内部使用WKWebView

使用示例

#import <FireflyJSBridge/FireflyJSBridge.h>

FireflyJSUIWebViewController *vc = [[FireflyJSUIWebViewController alloc] init]
//不加载命名空间为ff的jsbridge实现  YES不加载 / NO加载
vc.notLoadffAbiFactory = YES;

扩展Web和Native交换接口

当集成了jssdk的web页面,在调用方法时,需要增加命名空间的前缀,FireflyJSBridge会根据命名空间,将需要响应的方法派发到响应对象,完成前端到native的调用,响应对象完成后将结果信息以同步或者异步的方式回调给web页面,完成一次web端和native段的通信。

例如:前端js 调用:firefly.getSystemInfo()时,sdk会调用到注册miniapp命名空间的实例对象中的方法中

nativeObj的实例方法

//nativeObj的实例方法
- (void)getSystemInfo:(FireflyJSCallNativeArg *)arg completionHandler:(FireflyJSCallback)completionHandler
{ 
    NSDictionary * dict = @{系统信息字典};
    completionHandler([dict ff_toJSONString],YES);
}
#import <FireflyJSBridge/FireflyJSBridge.h>

FireflyJSUIWebViewController *vc = [[FireflyJSUIWebViewController alloc] init]
//不加载命名空间为ff的jsbridge实现  YES不加载 / NO加载
vc.notLoadffAbiFactory = YES;

//注册命名空间为firefly的Native能力对象nativeObj
[vc.getFireflyWebView  addJavascriptObject:nativeObj nameSpace:@"firefly"];
Copyright © 民生科技有限公司 2019 all right reserved,powered by Gitbook联系方式: wanglihang@mskj.com
修订时间: 2019-08-02 16:19:33

results matching ""

    No results matching ""