封面圖片來自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的原創技術文章,請關注公衆號"汪子熙"或者掃描下面二維碼: