来自Jerry的同事,Yang Joey。
相信大部分C4C的UI developer包括我刚开始的时候都会比较好奇我们平时写的javascript代码是如何运行在移动设备上的,同样的,我也对这个问题十分感兴趣。于是,以安卓为例子,我把我们发布到安卓应用市场的app解压出来研究了一下。
上图是一个cordova的总体框架的描述,可以看到cordova主要由两部分构成。
第一部分:Cordova Application是Cordova框架独立于不同手机操作系统的一个封装层。具体包括
1)Web app(包括具体的app的HTML/JS/CSS代码等);
2)Cordova框架已经封装好的核心插件(如相机、存储等系统调用),这块是Cordova的核心部分。当然,开发者也可以基于它的插件体系,扩展出新的插件;
第二部分:Mobile OS就是具体的手机操作系统层了,Cordova目前支持大部分的手机OS:ios、android、wp、blackberry等等
第二部分我们在这里就不赘述,都是mobile OS的各种原生功能。
那么我们先来看第一部分的webapp这一部分,我们将下载下来的apk文件解压缩,如下所示是一个很经典的安卓app的apk包的结构:
上文中讲过, 用Cordova工具将C4C Aurora的项目文件打包成Android或者iOS原生应用后,以Android平台为例,客户安装apk在安卓设备上后,运行在安卓手机上的C4C应用实际运行在WebView中。
WebView里加载的JavaScript和HTML文件实际上已经保存在了Cordova构建出来的项目包(即apk文件)里。在运行时,这些资源文件通过Embedded server加载到WebView里。
当然,手机C4C应用上所有需要显示的Transaction数据,比如在手机C4C应用上打开Account工作中心,看到的所有Account数据都来自对应的C4C tenant,这些数据的读取请求通过embedded Server发送到C4C tenant的后台 ABAP系统上去。
Jerry在博客(https://blogs.sap.com/2017/08/17/step-by-step-to-package-a-fiori-application-into-your-android-device-using-cordova/)中有写到如何用cordova创建一个fiori 风格app, 文中有讲到我们在开发这样一个app的时候会有一个默认的index.js生成,我们基于这个文件为入口进行开发cordova的应用,我们在assets->www下面找到了这个index.js文件,同时我们看到了几个zip包,这几个zip分别来自我们C4C开发组所开发的oberon和lead cod,里面包含了我们开发的javascript代码和样式表文件,这些文件即是上文提到的保存在cordova构建出来的项目包里的代码和html文件。
我们打开一个oberon.zip看一看里面的内容,比如我现在打开的是我们开发的RUI client下面的所有javascript代码和样式表文件的目录,library-preload.js就是我们开发的javascript代码压缩之后的合集,其中也包括一些我们会用到的UI5的类库。
通过jerry的博客我们得知应用运行时会先加载这个js文件,那么打开这个文件看一下上文提到的oberon.zip等zip里面的代码是如何被加载和运行的。
可以看到这里加载了两个js文件,运行了一个app.initialize()方法. 这个方法被定义在加载的第二个js文件js/index.js里面,打开这个index.js文件之后发现的确是这里的initialize 方法加载了sap的UI标准库,主题库,语言等。
上文中讲了第一部分中的webapp,那么我们来看看开发者自己开发的插件这一部分,在Jerry的博客中有写到如何用java开发一个自定义的cordova插件:https://blogs.sap.com/2017/08/18/step-by-step-to-create-a-custom-cordova-plugin-for-android-and-consume-it-in-your-ui5-application/,文中有提到我们如何在UI5的application中去调用我们开发的cordova插件,我们在这个解压出来的包里面也可以看到这些去消费插件的这些js class:
打开一个调用名片扫描插件的文件夹,我们发现与开发的时候文件目录基本一致, /platforms/android/assets/
相关推荐
SAP Cloud for Customer OData API开发人员指南《 SAP Cloud for Customer OData API开发人员指南》以最方便开发人员的格式补充了《 的用法细节和SAP Cloud for Customer OData API示例。 此外,它还涵盖了SAP Cloud...
《SAP Cloud for Customer OData API开发者指南》是专为那些希望深入了解如何利用SAP Cloud for Customer (C4C) 平台上的OData API进行开发的IT专业人员准备的一份详尽文档。OData(Open Data Protocol)是一种开放...
SAP Cloud for Customer服务器端集成将SAP Cloud for Customer的功能日期Google邮箱。 使用适用于Gmail的SAP Cloud for Customer扩展,您可以利用每天使用的工具在Gmail中提高工作效率。 此扩展程序连接到SAP Cloud ...
重要通知此公共存储库是只读的,不再维护。用于计算机电话集成的SAP Service Cloud示例小部件描述这... SAP Cloud for Customer是SAP Service Cloud的付费产品。 没有可用的演示。 在C4C中登录的用户应为其分配Live Act
SAP Cloud for Customer方案
Gmail:trade_mark:和SAP解决方案之间的集成与SAP Cloud for Customer,用于Google Chrome的Gmail加载项,您可以利用您每天使用的工具更加富有成效。此扩展将Gmail连接到SAP Cloud for Customer解决方案,并在电子...
SAP Cloud for Analytics for Planning 是SAP公司针对企业规划领域推出的一款云分析产品。它基于SAP Analytics Cloud (SAC),集成了SAP Business Planning and Consolidation (SAP BPC) 的功能,旨在为企业提供一个...
SAP Cloud Platform Connectivity是SAP云平台的一项关键服务,它使得云中的应用程序能够安全地访问互联网上或企业内部网络上的远程服务。这个服务是SAP云解决方案与外部系统集成的关键工具,尤其对于那些希望扩展其...
【标题】"SAP Cloud Ap.zip"项目是一个包含示例应用程序的压缩文件,它专门针对SAP Cloud Platform(SAP云平台)设计。SAP Cloud Platform是SAP提供的一个开放的、灵活的云端开发环境,旨在帮助开发者构建、运行和...
在集成的客户生态系统的示例中,提到了SAP Cloud Platform、SAP Cloud Identity (SCI) for SSO、SAPS/4HANA Cloud的客户景观。这里可能包含了从Starter System到Quality System再到最终的Productive System的各个...
SAP Cloud Platform是一个以云为基础的平台,它为用户提供了开发、扩展和运行应用程序的环境。SAP Cloud Platform支持多种服务和功能,它包括了众多的技术和服务,旨在为企业提供一个全面的解决方案,以支持从基础...
SAP GUI for windows 800安装包,内含SAP GUI for windows 800 Patch5 补丁SAP GUI for windows 800安装包,内含SAP GUI for windows 800 Patch5 补丁SAP GUI for windows 800安装包,内含SAP GUI for windows 800 ...
SAP Cloud for Customer的移动应用设计遵循“移动优先”的原则,这意味着产品设计和开发的主要焦点在于优化移动设备上的用户体验。这种策略使员工能够在任何时间、任何地点高效地工作,无论他们是在办公室还是在...
SAP S/4 HANA Cloud是SAP公司推出的一套集成化的企业资源规划云解决方案,它基于S/4 HANA平台,旨在为各种规模的企业提供实时的数据处理和业务分析功能。而SAP Cloud Security & Support Framework则是SAP为了保障其...
该平台提供了多种语言和框架的支持,例如 Java、Kotlin、Python、Node.js 等,并提供了丰富的开发工具和服务,例如 SAP Cloud SDK、SAP Cloud Platform SDK for iOS 和 Android 等。 账户管理是 SAP Cloud Platform...
最后,SAP Cloud for Service提供的智能手机应用使得企业能够随时随地与客户互动,通过移动和社交方案提升客户体验。无论是业务交易还是个性化服务,都能在正确的时间和地点精准送达,实现与客户的无缝连接。 总之...
该扩展将Gmail与SAP Hybris Cloud for Customer解决方案连接起来,在向潜在客户和客户发送电子邮件时提供所有销售信息的快速浏览,并允许您链接电子邮件对话,搜索重复联系人,创建新的潜在客户,任务和访问,全部...
SAP Connector for Microsoft .NET 3.0.1.0 是一款强大的软件组件,专为在Windows操作系统(包括WIN32和WIN64环境)上连接SAP系统与.NET应用程序而设计。这一版本的连接器旨在提升跨平台的企业级应用集成效率,为...
SAP CLOUD APPLICATION STUDIO 2311 SAP C4C SAP CLOUD APPLICATION STUDIO SAP C4C