当初,APICloud 利用, 能够一键生成微信公众号!
APICloud 基于积淀已久的 iOS/Android 原生引擎开发技术,联合微信公众号运行环境的特点,针对性地推出了为其量身定制的适配器环境,任何规范 APICloud 利用,都能够在不批改或极小批改之后, 间接运行在微信环境中。
基于 APICloud 利用生成的微信公众号,开发者可间接获取源码, 部署到本人服务器上。外围配置文件,开发者可依据服务器环境须要,灵便批改。最重要的是: 为了便于开发者二次开发或与微信业务进一步对接,咱们提供了足够凋谢和灵便的自定义扩大机制,开发者可依据业务须要,重写任意 APICloud 模块的外部实现。
步骤
- 登录 APICloud 网站控制台, 抉择或新建一个 Native 原生利用.
- 点击 “ 云编译 ” 页面的 “ 一键生成微信公众号 ”
- 点击 “ 一键生成微信公众号 ” 按钮, 期待编译实现.
4. 部署
把云编译生成的压缩包, 解压放到网站动态资源根目录, 而后就能够通过相似 http://www.exapmle.com/A60553… 一类的值来拜访. 其中 A6055344415623 要替换为本人利用的 appId.
如果不想放在网站根目录, 须要对应批改 web_adapter/script/config.js 中的相干配置.
5. 跨域拜访问题
No 'Access-Control-Allow-Origin' header is present on the requested resource.
如果控制台呈现相似谬误, 阐明以后预览微信公众号的网站与服务器接口不在同一个域名下, 有两种解决方案:
批改服务器端接口设置, 容许跨域拜访.
将云编译生成的动态资源包搁置在到网络接口所在的服务器, 保障二者能够在同一域名下拜访.
6. 原生模块适配问题
APICloud 当初能够主动适配原 APICloud 原生 App 中规范 WEB 技术相干的逻辑. 波及到应用 APICloud 原生模块的中央, 还须要开发者自行定制开发.
为了放弃代码写法的统一, 咱们提供了和 APICloud 原生引擎相似的扩大机制, 开发者可基于此重写 APICloud 原生模块的相干逻辑.
开发者原有代码个别不须要做批改, 只须要按照咱们提供的扩大机制, 针对性地增加局部原生模块的扩大代码, 即可实现微信公众号的适配. 详见下文 “ 扩大 ” 局部
扩大
APICloud 微信公众号适配器, 基于纯 Web 技术, 并针对微信的 Web 环境, 有所优化. 在接口实现上, 与 APICloud Native 引擎保持一致. 基于此, 任意规范 APICloud 原生利用, 都能够极低成本, 迭代为微信公众号, 甚至规范的网页利用.
APICloud 微信公众号适配器, 在实现时, 做了最大水平的开放性和灵活性设计. 咱们容许开发者重写任意 APICloud API 引擎对象或原生模块的任意办法和属性.
任意界面, 只须要实现一个 apiadapter 办法, 就能够在此办法内, 拦挡和重写 APICloud 模块办法的具体实现.
/*
当 frame, window, adapter 级别同时实现此函数时,
加载优先级为: frame > window > adapter > 内置默认实现
@payload:
@moduleName 模块名.
@method 办法名.
@isSync 是否是同步办法.
@params 调用模块办法时的参数.
@frameDom frame 所在的 window dom 对象.
@winDom window 所在页面的 window dom 对象.
@apiDom adapter 所在页面的 window dom 对象.
@cbId 调用模块办法时, 传递的回调函数的惟一标识.
@callback 用于异步返回值的回调函数.(cbId, ret, err, del)=>{}
@cbId 调用模块办法时, 传递的回调函数的惟一标识.
@ret 模块返回值.
@err 错误信息.
@del 调用后, 是否删除此 cbId 对应的回调函数.
删除后, 下一次基于同一 cbId 调用 callback,
将无奈正确回传返回值.
@return: 不作解决. 如果不想解决某个模块办法, 应该显式返回字符串 'TO_NEXT_API_ADAPTER',
以便往上流传调用.
*/
function apiadapter(payload) {
/* TODO: 自定义的解决逻辑. */
/* 默认不作解决. */
return "TO_NEXT_API_ADAPTER";
}
扩大倡议
异步办法的返回值, 最好通过传入的 callback 和 cbId 传递.
同步办法的返回值, 能够间接 return 返回相干值.
在解决 UI 类模块时, 可在模块办法调用时增加一些自定义字段, 以便于 apiadapter 能正确处理 UI 类模块的地位. 如增加一个新的 parentDomId 字段, 以便能自定义指定模块的父元素.