您好,济南seo浩仔为您解答: AppCan的开发团队来自于原来的手机设计团队,设计思想来源于2005~2008年间非智能终端MMI(人机界面)开发方案。那个时代的手机设计团队承接众多厂商的定制终端需求,每家公司的手机终端当时还没有现在这样有相对统一的平台,相对统一的MMI体系。各家公司对UI的需求都会有很大不同。这就造成了定制终端开发成本的大头在MMI的实现。
当时团队采用了自有浏览器引擎实现MMI开发框架,极大地降低了开发成本。 2010年初,AppCan刚刚火起来的时候就认为在智能终端开发领域,标准的HTML技术依然是最合适的跨平台开发方案。当时定位AppCan技术方案时,目标就是使无原生开发经验的HTML开发人员完成移动应用的开发。随着多个版本的推出,目前AppCan已经实现了以网页开发人员为主,原生开发人员为辅的混合开发模式。
通过减少原生开发人员在应用逻辑、数据对接等方面的工作,使其只关注于某个功能控件的开发,降低项目原生人员开发工作比率,减少项目开发成本。由于网页开发界面间耦合性小,更利于团队开发,并且开发人员不需要专用的苹果开发机和安装Andorid开发平台,有效地减低了开发成本。AppCan为了更好的组织网页开发人员、原生开发人员、项目管理人员、UI人员,为网页开发人员提供了专用的IDE开发环境、模拟器调试环境和本地打包环境,可以在无原生人员参与下完成应用的大部分功能调试和开发。
为原生开发人员提供了插件开发SDK,专为开发原生功能控件,并可直接编译网页开发人员的工程代码,生成目标版本,它等同于PhoneGap的开发环境。为项目管理人员、UI人员、网页原生开发人员提供了云端代码管理、项目管理、应用资源管理、插件管理、引擎管理服务,用于快速发布正式版本。目前AppCan.cn网站是为个人开发者提供的免费代码、项目管理平台。
为企业开发用户有专用的企业云SDK开发环境。 AppCan则是参考原生开发模式,认为页面间是独立的,每个页面需要完成其主要功能,通过引擎的页面管理,把这些独立的页面串联起来就是一个应用。每个页面有其自身的生存期和上下文。这样可以组织更多的开发人员到一个项目中,且可以很少关心界面间的耦合性。 也就是说PhoneGap常使用JS框架进行窗口管理,AppCan采用引擎中的窗口管理器管理窗口。
由于窗口管理机制的不同,AppCan可以在窗口切换、窗口间数据交互中更多的引入原生开发,来提高应用的感受性。AppCan的窗口管理器和窗口生存逻辑参考了Android的Activity,在很多地方可以找到其相似性。与UI开发框架有直接关系的还有分辨率适配方案。 不同分辨率的移动终端,浏览器为了展示网页时的适配,默认都会设定窗口缩放比率。假设480分辨率宽度的终端,网页中看到的依然是320宽度,缩放比率为1.5。
这样网页适配320宽度的分辨率就可在大部分移动终端中正常显示。这虽然减小了适配问题,但是造成的后果却是,宽度为1的线在屏幕上显示时,实际并不是一个点,由此移动项目中无法充分发挥手机屏幕硬件的能力,应用界面无法和原生应用媲美。但如果调整了默认比率参数,使其直接采用屏幕硬件分辨率或者更小的缩放比率,都会造成不同分辨率下的界面适配问题。
AppCan 提供了整套的UI开发框架,应用引擎自动调整浏览器默认缩放比率,使其接近或等于屏幕硬件分辨率,采用弹性盒子框架,自动适配各种屏幕分辨率。采用相对大小方案,使应用在不同分辨率、不同屏幕精度,依然使界面保持最符合人体感受的大小和操作体验。通过这种方式,可以帮助开发者更有效的融合原生控件和网页界面,使其保持完美的布局。
在适配新分辨率终端时,AppCan可以保证最小的网页代码修改。转载,仅供参考。