封面图片来自Google搜索,关键字: Fiori Deploymenthtml
在SAP成都labs我曾经担任过CRM这几个Fiori应用的开发和维护工做:前端
在Google上搜索关键字Fiori Architecture, 能找到这样一张图片,其中CRM和S/4 HANA的Fiori应用都以BSP应用的方式运行在下图我标注了红色方框的ABAP前台服务器上。android
以CRM的My lead应用为例,在Chrome的development tool里能找到其对应的BSP应用名称为crm_leads,
git
用SAPGUI登陆这台前台服务器,使用事务码SE80便可打开该BSP应用,里面的层级结构和Chrome的development tool里观察到的一致(前提是您使用ctrl+alt+shift+p加载了调试版本的应用源码)
github
咱们能够用各类IDE(好比Eclipse, Sublime, Atom, Webstorm)等进行Fiori应用开发,而后使用report /UI5/UI5_REPOSITORY_LOAD将本地工程上传到前台服务器,具体步骤参考这篇博客Deploy a Fiori app in SAP Fioriweb
另外,Eclipse有个SAP开发的插件叫作ABAP Repository Team Provider,使用它能够实现UI5应用的一键部署,具体步骤请参考博客: How to Deploy and Run SAPUI5 application on ABAP Server浏览器
您也能够尝试使用WebIDE作开发,而后经过WebIDE将应用部署到ABAP前台服务器。
细节请参考博文:How to deploy the Web IDE UI5 application to ABAP repository服务器
这篇博文来自个人同事,SAP成都C4C开发团队的Wu David,高大帅气的程序猿,并且有一手精湛的厨艺。app
若是说前一种方式成功地使得SAP传统的运行在Netweaver平台的BSP技术继续发光发热,那么这第二种方式则体现了SAP拥抱云,拥抱变化的决心。这种方式部署的Fiori已经和Netweaver与ABAP平台再无任何关联。目前SAP成都全部基于云的产品开发团队无一例外地采用了这种方式。框架
SCP(SAP Cloud Platform)是SAP倾力打造的云平台,假设您已经开发好了一个Fiori应用,想将其部署而且运行在SCP上,您能够参考来自SAP成都云开发团队的Chen Vicky, 一位年轻漂亮的程序媛的博文:How to deploy UI5 application on SCP
(Vicky虽然2016年7月毕业才加入SAP成都, 在学校期间只有几个月的ABAP实习的项目经历,可是经过她的努力以及组内其余老同事的帮助,她如今已经成为了一名合格的Java和JavaScript开发人员)
在此基础上,我也作过一些简单的练习,好比开发一个Fiori应用,将其部署在SCP上,而且可以访问另外一台On premise服务器上的数据: Deploy your web application to SAP Cloud Platform which can access resource from On-Premise ABAP system
固然您也能够选择其余的云平台运行您的Fiori应用,如百度云,阿里云,以及国外的云平台例如Heroku上: Step by step to host your UI5 application in Heroku
您甚至能够将您的Fiori应用部署并运行在github上, 虽然github的原本用途并非这个 :)
Use GitHub Pages to host your OpenUI5 app
顺便说一句,不知道你们读过阮一峰的这篇文章没: 搭建一个免费的,无限流量的Blog----github Pages和Jekyll入门
在文末的评论区,国内的网友对应不该该用github拿来作存储代码之外的事情,引起了激烈的讨论。
就个人观察而言,不少国内前端大牛都选择了把本身的博客部署在了github上。
值得一提的是SAP Hybris Cloud for Customer, 虽然其后台仍然基于Netweaver ABAP, 可是C4C的UI应用的部署方式没有采用本文介绍的方式一,而是本章节正在介绍的方式二。
仍是以SAP Hybris Cloud for Customer为例,咱们使用Cordova这个开源框架,将开发人员用JavaScript+HTML开发好的Fiori应用打包生成iOS, Android和Windows Phone对应的安装包而后安装到移动设备上。
这就意味着,SAP成都C4C开发团队的开发团队,在本地IDE写完代码以后,付出了大量的努力来确保咱们开发好的功能不只在PC端各类支持的浏览器下可以正常工做,同时在C4C支持的iOS, Android和Windows phone设备上依然可以正常工做。
尽管咱们设计了很是完备的单元测试来覆盖咱们开发的功能,为了严格确保咱们发布的产品质量,在移动设备上咱们也有大量的人工测试。
所以,万一您在使用C4C的时候遇到一些这样那样的问题,麻烦您给C4C对应模块报incident, 可是不要所以怀疑咱们为了确保产品质量而付出的这些心血。
若是您已经开发好了Fiori应用,想装到您的手机上玩一玩,能够参考个人博客:
Step by step to package a Fiori application into your Android device using Cordova
若是您的Fiori应用想访问手机设备上的一些只有手机原生操做系统才能提供的功能,那么您能够参考个人博客Step by step to create a custom Cordova plugin for Android and consume it in your UI5 application
上面这篇博客以Android平台开发为例作了Cordova自定义插件的开发介绍:我在Android平台用Java实现了一个自定义的Cordova插件,而后在Fiori应用里消费这个自定义插件。
既然涉及到插件的开发,不可避免地就会遇到调试问题。个人这篇博客以Android studio为例描述了基于Java的自定义插件的调试步骤。
How to debug UI5 application packaged into a mobile device via Cordova with a custom plugin
要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码: