GaiaX

GaiaX 动态模板引擎是一套轻量级的纯原生动态化卡片跨端解决方案

开始 介绍

跨平台

一套模板、多端渲染,Android、iOS、小程序,让你的UI没有边界。

可视化搭建

可视化的搭建工具,快速完成模板的搭建、编辑、预览、调试,将开发者的学习成本降至最低。

热更新

通过实时预览的能力,在真机上实现秒级的模板更新和预览,从此不再等待。

高性能

通过多种技术手段来保证极致的渲染效率和逼近原生的性能体验。

动态化

专为动态化设计,可通过扩展数据源、数据绑定、JS逻辑处理等诸多方案进行动态化。

数据驱动

通过表达式,你可以轻松对模板中的所有视觉元素进行数据驱动。

简单、跨端、高性能!

// Initialization - Initializes the SDK
GXTemplateEngine.instance.init(activity)

// Template information
val item = GXTemplateEngine.GXTemplateItem(activity, "templateBiz", "templateId")

val size = GXTemplateEngine.GXMeasureSize(100F.dpToPx(), null)

// Template data
val dataJson = AssetsUtils.parseAssets(activity, "template-data.json")
val data = GXTemplateEngine.GXTemplateData(dataJson)

// Create template View
val view = GXTemplateEngine.instance.createView(item, size)

// Bind the view data
GXTemplateEngine.instance.bindData(view, data)

// Insert the template into the container for rendering
findViewById<ViewGroup>(R.id.template_container).addView(view, 0)
// register template service
[TheGXRegisterCenter registerTemplateServiceWithBizId:bizId templateBundle:@"xxx.bundle"];

// Build template parameters - Template information
GXTemplateItem *item = [[GXTemplateItem alloc] init];
item.templateId = templateId;
item.bizId = templateBiz;

CGSize size = CGSizeMake(1080, NAN);

// Template data
GXTemplateData *data = [[GXTemplateData alloc] init];
data.data = @{@"xxx": @"xxx"};

// Creates a native View based on template parameters
UIView *view = [TheGXTemplateEngine creatViewByTemplateItem:item measureSize:size];

// Bind the view data
[TheGXTemplateEngine bindData:data onView:view];

// Insert the template into the container for rendering
[self.view addSubview:view];