Font Size: a A A

The Design And Implementation Of A Hybrid Mobile Application Development Framework

Posted on:2017-10-13Degree:MasterType:Thesis
Country:ChinaCandidate:W XiongFull Text:PDF
GTID:2348330491964433Subject:Software engineering
Abstract/Summary:PDF Full Text Request
As broadband wireless access technology and the rapid development of mobile communication technology, people want fast and convenient access to information and services from the internet. Mobile Internet arises at the historic moment and rapid development. The rapid development of mobile Internet overturn the Web Page Form which used to be the core application form. And it has given rise to new application service system, and rebuild the business model. The mobile application has become the dominant form of mobile Internet application service.Enterprises expands to the mobile Internet, mainly face the following problems:(1) the current mobile displays diverse characteristics:different vendors, different models, more importantly different platforms (different operating systems). If you want to meet different platform to develop a mobile application, you need to develop different versions for different platform. This not only increased the workload, also increase the cost of development. (2) The native applications, the UI design and the business logic processing cannot be complete separation. The UI design and business logic development can only be sequential development which reduce the efficiency of development. (3) Companies wants to reuse the result which had achieved in the WEB internet. (4) At present, bug fixes and updating in mobile native applications is complex, and hard to manage.In order to solve the above problems, this topic was designed and implemented a hybrid mobile application development framework. By comparing the advantages and disadvantages of the current mobile application development model (native development model, Web development model and hybrid model), the article decided to adopt a hybrid mobile application development model. Existing hybrid mobile application development framework focuses on the Web part, and do not involved in some enterprise's specific requirements.In order to give a full play to the superiority of the Web and native, separate the UI design and the logic implementation, this framework was be divided into two parts:a Web part and Native part. Web part is mainly used for the UI, native part is mainly used for processing business logic. Framework encapsulates the Web distribution and communication between the native and instructions, which provides the framework for an up and a down communication channel and distribute instruction. In order to manage the HTML pages in the web part and increase the HTML pages load and jump efficiency, the framework integrate AngularJs and RequireJs.The framework is divided into four layers:display layer, mobile middleware, the service layer and data layer. Display layer including view page and view controller. And this layer is developed with Web language. Mobile middleware encapsulates the Web distribution and communication channel between native and instructions. Service layer provides application framework and related services. Data layer including Web source files and databases.Framework mainly implements the five function modules:(1) block. Block mainly solve the size difference between PC screen and mobile screen. The block is used to divide the PC web pages into small fragments which is convenient transplanting to the mobile application. The block algorithm based on the HTML Dom semantic structure. The main idea is from bottom to top, from the front to rear traversing the Dom tree structure to find the requirements of the node. And then output the nodes and the related resources to the specified folder. (2) The controller module. The controller module provides two services: request processing and broadcasting services. Request processing service used to send the request to the native part. Broadcasting services used to distribute the returned data to specified module. (3) The routing management module. Routing management module is used to manage Web page's jump model to make a web page's jump action just like the mobile native application. Framework provides three page jump mode: the singleton pattern, one-time use mode and standard mode. (4) The logic processing module. Logic processing module manages the native part's return data and instructions distribution. In order to make the instructions distribution and specific processing object completely decoupled, the logical processing module based on Java reflection mechanism to realize the dynamic to create instruction processing object. (5) Real-time update service. In specific situations it realize the real time and convenient update, which provides the application development and use higher flexibility.After the completion of the framework design, the article analysis the performance of the framework. At first the article tests and analyses the single page structure, and then tests and analyses the transmission efficiency of the framework. After testing single page structure, conclusion are found as follows:the single page structure's main characteristics are routing and page loading. Although the routing configuration cost a certain time loss, but this is the precondition of efficient page jump. The routing configuration improve the efficiency of the jump of the page. After the routing configuration is done, the structure realize the partition page loading and avoid the whole page loading and refreshing. After testing the communication efficiency, conclusion are found as follows:the web part of the framework is using single thread. When the native parts with high frequency to send data to a Web part, will cause the application of suspended animation. So the native part should control the frequency, in order to ensure a better user experience.Finally, the topic tests the functional modules and implements two examples.
Keywords/Search Tags:Mobile applications, Single page structure, Real-time update, Framework
PDF Full Text Request
Related items