Oracle FLEXCUBE Direct Banking

Transcription

Oracle FLEXCUBE DirectBankingiOS Client developer GuideRelease 12.0.3.0.0Part No. E52543-01April 2014

iOS Client Developer GuideApril 2014Oracle Financial Services Software LimitedOracle ParkOff Western Express HighwayGoregaon (East)Mumbai, Maharashtra 400 063IndiaWorldwide Inquiries:Phone: 91 22 6718 3000Fax: 91 22 6718 3001www.oracle.com/financialservices/Copyright 2008, 2014, Oracle and/or its affiliates. All rights reserved.Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of theirrespective owners.U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, anyprograms installed on the hardware, and/or documentation, delivered to U.S. Government end users are “commercialcomputer software” pursuant to the applicable Federal Acquisition Regulation and agency-specific supplementalregulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including anyoperating system, integrated software, any programs installed on the hardware, and/or documentation, shall besubject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S.Government.This software or hardware is developed for general use in a variety of information management applications. It is notdeveloped or intended for use in any inherently dangerous applications, including applications that may create a riskof personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible totake all appropriate failsafe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation andits affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerousapplications.This software and related documentation are provided under a license agreement containing restrictions on use anddisclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement orallowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit,perform, publish or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.The information contained herein is subject to change without notice and is not warranted to be error-free. If you findany errors, please report them to us in writing.This software or hardware and documentation may provide access to or information on content, products andservices from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim allwarranties of any kind with respect to third-party content, products, and services. Oracle Corporation and its affiliateswill not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content,products, or services.

ContentsContents . 31. Preface . 51.1 Intended Audience . 51.2 Documentation Accessibility . 51.3 Access to OFSS Support . 51.4 Structure . 51.5 Related Information Sources . 62. Introduction . 73. Acronyms and Abbreviations . 84.Scope . 95.Xcode Setup . 105.1 iOS SDK and Xcode IDE . 105.2 Downloading the SDK Starter Package . 105.3 Installing Xcode . 115.6 Running FCDB Mobile banking Project . 125.7 Running Simulator . 126. System Design . 136.1 Component Diagram. 136.2 Roles of the components involved . 147. FCDB Server . 158. Application Delegate . 169. Splash Screen . 1710. Connection Manager . 1811. Resource Management System . 1912. Resources . 2013. Layout Manager . 2113.1 ErrorHandler.m . 2113.1 BaseXMLContentGenerator.m . 2114. Application state Manager . 2215. CSSLoader . 2315.1 FCStylesheetCache.m . 23

15.2 FCCSSRuleset.m . 2315.3 Style.css . 2316. mLEAP DataType. 2416.1 FCDBModelObjectDictionary.plist . 2416.2 TagModelBaseClass.m. 2417. mLEAP DataType Category . 2618. UI Components . 2719. Exporting Final Output IPA File . 2819.1 Export Mechanism . 2819.2 Generate the IPA . 3020. UI Resource Guide . 33

Oracle FLEXCUBE Direct Banking 12.0.3.0.0 iOS Client Developer Guide1. Preface1.1 Intended AudienceAny interested party working on the delivery of Oracle FLEXCUBE Direct Banking may read thisdocument. The following profile of users would find this document useful: Application ArchitectsEnd to End DesignersBusiness Service Detailed Designers and DevelopersImplementation PartnersSpecifically, however, this document is targeted at Implementation Partners, Customization DevelopmentTeams or Vendors providing customization, configuration and implementation services around the OracleFLEXCUBE Direct Banking product.1.2 Documentation AccessibilityFor information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program websiteat http://www.oracle.com/pls/topic/lookup?ctx acc&id docacc.1.3 Access to OFSS Supporthttps://support.us.oracle.com1.4 StructureThis manual is organized into the following chapters:Section 1 Preface gives information on the intended audience. It also lists the various chapters coveredin this User Manual.Section 2-4 Provides introduction and abbreviations details.Section 5 Provides information for creating Xcode setup for iOS development.Section 6 Provides information about components involved in application.Section 7-17 Brief description about every component.Section 18 Provides information to export “.ipa file”.Section 19 Explains limitations about naming conventions of UI resources.

Oracle FLEXCUBE Direct Banking 12.0.3.0.0 iOS Client Developer Guide1.5 Related Information SourcesFor more information please, refer to the following documents: Oracle FLEXCUBE Direct Banking Mobile Android Client Developer Guide Oracle FLEXCUBE Direct Banking Mobile J2ME Clients Developer Guide Oracle FLEXCUBE Direct Banking Mobile Banking User Interface Guide

Oracle FLEXCUBE Direct Banking 12.0.3.0.0 iOS Client Developer Guide2.IntroductionFLEXCUBE Direct Banking mobile client applications are supposed to be designed in order to understandthe XML structure and render it on the mobile device screen appropriately. This stands as the basicrequirement for iOS client as well. The iOS mobile client is a client application specifically targeted forApple’s iOS platform. This document is a generic guide for development of iPad and iPhone clientApplication.FLEXCUBE Direct Banking’s mLEAP framework is the entity responsible for generating the content formobile clients. This content is represented in a pre-defined XML format. For details on the XML structure,please refer to the document Oracle FLEXCUBE Direct Banking Mobile App XML structure.docx.Some key points about developing an application on iOS platform are highlighted below: iOS applications(Both iPhone and iPad) are written in the Objective C programming language. The compiled Objective C code along with Custom Frameworks and resource files required bythe application is bundled by the iOS Asset Packaging Tool into an iOS package, an archive filemarked by an .ipa suffix. This file is the vehicle for distributing the application and installing it on Apple mobile devices; it'sthe file users download to their devices. All the code in a single ipa file is considered to be one application. The ipa file is signed with a certificate before deployment. The client receives the response from the server in XML and parses it to render the screen. The screen rendering logic is written in client who majorly uses the native components of the iOSSDK framework.

Oracle FLEXCUBE Direct Banking 12.0.3.0.0 iOS Client Developer Guide3.FCDBIDEiOSSDKUIIPAAcronyms and AbbreviationsFLEXCUBE Direct BankingIntegrated Development EnvironmentApple OS for iPhone/iPod Touch/iPadSoftware Development KitUser InterfaceiOS App Store Package

Oracle FLEXCUBE Direct Banking 12.0.3.0.0 iOS Client Developer Guide4.ScopeThis document speaks about various design and development level considerations for the FLEXCUBEDirect Banking mobile client for iOS platform. It describes the high level design, process flow, various keycomponents involved, screen layout design etc. This mobile client is targeted at Apple’s iOS platform.Some of the terms used in this document are specific to the iOS platform. This document does not go indetail of the iOS platform features but speaks only with relevance to the FLEXCUBE Direct Bankingmobile client architecture. Reference sites for iOS Development are mentioned wherever applicable.

Oracle FLEXCUBE Direct Banking 12.0.3.0.0 iOS Client Developer Guide5.Xcode Setup5.1 iOS SDK and Xcode IDEXcode is a developer toolkit for Mac, iPhone, and iPad. It includes the Xcode IDE, iOS Simulator, and allrequired tools and frameworks for building Mac OS X and iOS applications.Xcode has unified userinterface design, coding, testing, and debugging all within a single window. The Xcode IDE analyzes thedetails of your project to identify mistakes in both syntax and logic, it can even help fix your code for you.Before you can install or use Xcode IDE, you must have a compatible version of OS X installed on yourMac Machine. Refer Oracle FLEXCUBE Direct Baking Mobile iPhone Workspace Configuration.docxfor information on version compatibility.5.2 Downloading the SDK Starter PackageThis guide describes Xcode 5. If you’re using Xcode 4, read App Distribution Guide for Xcode 4 vigation/You can download it from theApple Developer Center, though you have to be registered as an appledeveloper. Registration is free and relatively painless.Once you are logged in, select the link in the for Mac Dev CenterDownload the latest version of Xcode 4 or Xcode 5.(Refer Oracle FLEXCUBE Direct Baking Mobile iPhone Workspace Configuration.docx for information on version compatibility. )

Oracle FLEXCUBE Direct Banking 12.0.3.0.0 iOS Client Developer Guide5.3 Installing XcodeOnce the download completes, mount the installer and run the XcodeTools package. Click through theinstaller till you see the customize option.Click it. This gives you the option to skip certain parts of the install. If you are short on disk space you'llprobably want to skip the 1.3GB of developer documentation.It is also recommended that you check any boxes that indicate support for older versions of OS X ie 10.5 /10.6 etc.The installer starts installing.Once installation is complete, Drag it to the applications folder of your Mac.The Developer Tools installer will have installed a folder called Developer in the root (highest level) ofyour hard drive. The Xcode application is located at /Developer/Applications/Xcode.app

Oracle FLEXCUBE Direct Banking 12.0.3.0.0 iOS Client Developer GuideXcode has been successfully installed on your computer.You can go to Finder applications xcode.Click and open it.5.6 Running FCDB Mobile banking ProjectRefer Oracle FLEXCUBE Direct Baking Mobile iPhone Workspace Configuration.docx and followstep by step to configure application5.7 Running Simulator Build and Run the application with target as simulator. On successful build, you should find theSimulator presenting the app launch screen. You can select iPad simulator or iPhone simulatorfor iPad and iPhone application respectively.

Oracle FLEXCUBE Direct Banking 12.0.3.0.0 iOS Client Developer Guide6. System Design6.1 Component DiagramHere name of the components and methods are indicative. It is not necessary that same package ormethod name will be available in application. They are just for reference.

Oracle FLEXCUBE Direct Banking 12.0.3.0.0 iOS Client Developer Guide6.2 Roles of the components involved FCDB Server: This is the external entity to the mobile app to which the client app communicatesin the form of request and response. Application Launcher: The first point which is triggered when the application is launched. Splash screen: There will be a configurable splash screen. It will be triggered by ApplicationDelegate component. Connection Manager: This is primarily involved in establishing the connection with FCDB Setupand passing the request XML over HTTP/HTTPS. Resource Management System: The main role of this component is to sync the resourceswhich are being used at the client side with the latest versions present or updated in case at theserver side. Resource:These are any resources which are present at the client side and can includeimages,css files for styling, language pack and client side xml. Layout Manager: It is responsible for managing the client side layout. App State Manager: This component is responsible for managing the overall state of theapplication. CSS Loader: The primary responsibility of this component is to load the CSS and to observe anytheme changes and refresh the style. mLEAP Data-type abstract: It will trigger the creation of all the primitive and complex UIcomponents which in turn would be styled and customized using the CSS and finally instantiated. UI Component: The primitive as well as complex UI components which are finally rendered onthe screen by the composite data type.

Oracle FLEXCUBE Direct Banking 12.0.3.0.0 iOS Client Developer Guide7.FCDB ServerThis is the external entity to the mobile app to which the client app communicates in the form ofrequest and response by the help of usability xslts. It sends request(for mobile app it is requestwhereas for transaction point of view it is a response) in the form of F-XMLs. After parsing theseXMLs and using their attributes and elements we paint the specified screens. After submitting fromthe screen the data again goes back to FCDB Server.

Oracle FLEXCUBE Direct Banking 12.0.3.0.0 iOS Client Developer Guide8.Application DelegateThe first point which is triggered when the application is launched. It is a default behavior of Xcode.The Application Delegate will also trigger the configured splash screen for display. It will trigger theResource Management System to check if there is any update on the server side in terms of anyresource updates etc. If yes it will be handled by the Resource Management System.

Oracle FLEXCUBE Direct Banking 12.0.3.0.0 iOS Client Developer Guide9.Splash ScreenThis will load properties from GlobalConfigurationFile.plist. The associated file with this componentis named as SplashViewController. It provides hook to the login screen of the application.

Oracle FLEXCUBE Direct Banking 12.0.3.0.0 iOS Client Developer Guide10. Connection ManagerA custom framework -FCDBConnectionManager.framework is used in our application as connectionmanager which is responsible for establishing connection between FCDB Server and iOS mobile App. We read URL parameters of FCDB serv

Oracle FLEXCUBE Direct Banking 12.0.3.0.0 iOS Client Developer Guide 5. Xcode Setup 5.1 iOS SDK and Xcode IDE Xcode is a developer toolkit for Mac, iPhone, and iPad. It includes the Xcode IDE, iOS Simulator, and all required tools and fr