1.初识WeX5(原X5)

1.1 WeX5是什么?能做什么?

WeX5是前端快速开发框架,可开发跨端运行应用。是移动App/微信/WebApp开发利器,一次开发多平台运行。

1.2 WeX5是免费的吗?

WeX5是完全免费开源的,打包和部署都没有任何费用。
BeX5是收费的,20用户128库表以内免费,超过该规格收费,价格请咨询商务人员。

1.4 WeX5能开发微信App吗?

可以,WeX5开发的应用,不仅可以在微信上运行,也可以直接手机浏览器运行,或者打包成App下载运行。对应微信服务号和企业号,起步分别有WeX5和BeX5这2个产品来对应。
服务号运行效果可直接扫描官网二维码关注后体验,
教程见视频:http://pan.baidu.com/s/1bnD5VOj(微信服务号);
企业号,BeX5已经将微信提供接口进行了封装,开发时可直接调用,且提供了组织、菜单等同步功能(企业号相关特性将在新版本中包括)

如果你要用WeX5开发微信企业号集成应用,那么你需要自己做组织机构同步,其他接口也都需自己开发调用。

1.5 开发的App能发布到苹果AppStore吗?

可以,你需要有苹果账号才能上架苹果的AppStore,但是苹果审核比较严格,所以上架时间会长一些。

1.6 WeX5开发移动app可以用于商业吗,会不会弹广告或别的限制吗?

WeX5是完全免费开源的,打包等都没有任何费用,可以用于商业。
WeX5自身不会弹出任何广告,也没有任何限制。

1.7 WeX5可以对接什么后端?

可以通过http(Ajax)、Websocket、Socket.io等连接各种后端中间件或云服务(java、node、php、.net等)
起步公司也提供了一个企业信息化所需要的强大数据和后端能力,包括工作流、组织、权限、图表、报表、文档、门户、业务规则等,如果你需要这些能力,请使用BeX5。

1.8 WeX5开发的移动app最低支持android、ios什么版本?

Android4.0及以上;
IOS6及以上。

2. 打包、发布、部署

2.1 应用开发完成后,如何部署?

开发完成后,你可以通过各种打包方式,打包安卓和IOS安装包,手机下载即可使用;也可以发布为webapp,部署到你的服务中。
如果需要在微信使用,那么需发布为webapp的方式。

2.2 WeX5开发移动app打包方式有哪几种,有什么不同,怎么选择?

打包方式 本地快捷 打包服务器 手动编译
主要应用场景 调试 调试或发布 调试或发布
打的包能否作为正式发布包(Android) 能(调试模式,不建议做发布包)
打的包能否作为正式发布包(iOS) 否(只能安装在越狱机器上做测试)
打的包大小是否优化 是(Android最小300K,iOS最小可400K) 是(Android最小300K,iOS最小可400K)
除了X5 Studio,是否还需要单独的打包环境 是(需安装打包服务器,X5免费提供) 是(需手工安装Android ADT或Xcode)
是否支持添加自定义插件
支持智能选择打包用到的插件 是(需手动配合)
支持智能判断只打包用到的Web资源
是否支持加密保护打包的Web资源(Javascipt、HTML和CSS) 是(需手动配合)
打包环境是否支持Native代码调试
是否支持修改Native框架源码

2.3 为什么打包报错?

1.如果生成app时,除了首页,其它都不输入,生成时出错,那么关上杀毒软件,目前已知必须关上电脑管家。

2.如果输入版本号,那必须是5.3.0这种三段的,只能是数字,否则报错。

2.4 WeX5打包的app有多大,怎么优化减小?

基础包:IOS 360K;Android 230K左右,如果使用增强浏览器,那么是18.2M。
本地插件:IOS 3.2M;Android 695K,如果使用增强浏览器,是0.7M
资源包:Hello world 不到10K。
总的来说,例如Hello world这样一个应用:
Android最大就是17.8M,包括增强浏览器和本地插件;
          最小就是240K,不带增强浏览器和本地插件;
          如果不带增强浏览器仅带本地插件是935K。
IOS    不带本地插件是370K;
         带本地插件3.8M。

2.5 生成APK时名字只能是X5吗?

WeX5一键发布功能里,apk名字、图表都可以改。原生框架的代码也可以改,引入的本地插件api也可以改,但改完后需要在原生开发环境里去编译了。

2.6 打包时如何去掉WeX5相关的图片?

在model\Native\“你的应用”下面有个使用说明,里面有讲解到:
   1. ios 下替换model/Native/“你的应用”/platforms/ios/X5/Resources/icons和 platforms/ios/X5/Resources/splash对应文件即可,注意文件名和分辨率
   2. andorid 下model/Native/“你的应用”/platforms/android/res子目录中的icon.png是应用图标,screen.png表示启动欢迎图片,替换对应文件即可,同样需要注意一下文件名和分辨率

2.7 下载的X5里没看到打包服务器,从哪里下载?

打包服务器比较大,所以没有在版本中。
打包服务器详细:http://bbs.justep.com/thread-67823-1-1.html
请关注起步微信服务号后获取邀请码免费下载打包服务器。

 

2.8 什么是白苹果?什么是黑苹果?

  • 白苹果:就是苹果的硬件安装了苹果的系统,系统能升级。
  • 虚拟机:virtualbox和vmware都可以,苹果的政策中也允许虚拟机,当然这个是要在白苹果下。虚拟机中升级系统也是没问题的。WeX5的是基于虚拟机提供的,本身也是在白苹果上制作,当然,windows也是能跑,这个你懂。
  • 黑苹果,就是在非苹果的硬件上安装苹果的系统,常用的是什么变色龙引导和现在高大上的四叶草,如果人品好,好机器(和苹果销售的机器差不多的硬件配置)应该能安装和升级,否则就是失足千古恨,折腾不出死不休。

2.9 WeX5开发的APP是否需要tomcat服务?

是与你使用WeX5开发的APP是否需要访问服务器端有关的,如果说你的APP完全与服务端无关,那么就不需要访问tomcat服务,如果说你的APP需要从服务端提取资源或者数据,那么就需要有tomcat服务,当然别的服务也可以。

版本默认发布的外卖案例,是需要启动tomcat服务的。

3.开发

3.1 WeX5为什么只有UI2?

WeX5是提供可视化、组件化、拖拽式快速开发环境的工具。不提供后端能力,可以根据你自己的需要进行对接。BeX5提供了企业信息化所需要的强大数据和后端能力,包括工作流、组织、权限、图表、报表、文档、门户、业务规则等,如果你需要这些能力,请使用BeX5。

3.2 WeX5开发移动app,支持访问本地sqlite数据库吗?

支持,你需要自己写数据库访问相关代码。

3.3 WeX5的学习材料有哪些,我该怎么学习WeX5?

开发工具菜单中,提供了API手册;
官网下载和体验页面,提供了教学视频:

官网下载:http://www.wex5.com/downloads/
体验页面:http://www.wex5.com/appstore/

3.4 WeX5开发移动app如何调试,能够模拟和真机调试吗?

能,不仅能提供真机调试,还提供了调试模拟器,你也可以chrome浏览器开发人员工具进行调试。
有些开发框架只提供真机调试,给开发人员调试带来极大困难。WeX5可通过各种调试方法进行调试。

详细操作步骤可参见:创建我的第一个应用

详见视频:WeX5移动应用开发过程介绍

3.5 WeX5开发如何扩展原生能力,比如能扩展支持银联的接口实现手机支付、支持实时接收和显示蓝牙传来的数据吗?

可以支持,需要使用cordova的相关插件实现此功能。
凡是cordova支持的能力,在WeX5中都能完美支持。详见:WeX5如何使用和扩展本地插件(Cordova plugin)

3.6 WeX5开发需要学习java吗?

WeX5是前端开发框架,不需要java。
如果还使用了其它技术,就取决与其它技术是否使用java。

3.7 WeX5打包的应用名和资源文件名为什么不能用中文?

应用名可以使用中文,资源名不能使用中文是安卓系统的限制。

3.8 WeX5的界面组件支持第三方开发吗?

支持。

3.9 WeX5的app源码在哪儿?

根目录下的app-src目录下。

3.10界面风格能自己改吗,默认很多起步标志? 

界面均可根据你实际需要进行修改,包括打包时使用到的图片。

3.11在WeX5中如何调用蓝牙数据?

方法详见:WeX5如何使用和扩展本地插件(Cordova plugin)

找到cordova资源中蓝牙插件,放入自己建的应用中,按上述文章提供的方法操作即可。

3.12 ajax跨域如何解决?

方法详见:AJAX跨域调用相关知识-CORS和JSONP

3.13 this问题?

方法详见:this问题

3.14 attachmentSimple组件在手机上不好使

原因: attachmentSimple组件的actionUrl为$UI/system/service/doc/common/simpleFileStore.j导致的
解决方案: attachmentSimple组件上的actionUrl设置为/baas/justep/attachment/simplFileStore

3.14 ios中dom exception 18的问题

解决方案:
第一步:修改/UI2/system/lib/route/router.js文件的以下点
_history.replaceState(null,null,hashbang); 改成 try{_history.replaceState(null,null,hashbang);}catch(e){}
_history.pushState(null,null,hashbang); 改成 try{_history.pushState(null,null,hashbang);}catch(e){}
第二步:执行%JUSTEP_HOME%/tools/dist/dist.bat批处理合并资源;

本文由WeX5君整理,WeX5一款开源免费的html5开发工具H5 App开发就用WeX5!

阅读其他app 开发相关文章:http://doc.wex5.com/?p=3443