Aggregated Call Module for Lollipop Mobile Call Sequences
Total Page:16
File Type:pdf, Size:1020Kb
IJCSN International Journal of Computer Science and Network, Volume 4, Issue 3, June 2015 ISSN (Online) : 2277-5420 www.IJCSN.org Impact Factor: 0.417 546 Aggregated Call Module for Lollipop Mobile Call Sequences 1 Venkata Sanyasi Rao Sasipalli, 2 Zulfadhli Bin Zainuddin, 3 Gouri Shankar Sasipalli, 4 Krishnam Raju Gottumukkala 1 Center for Excellence in Computer Technology Hiroshima, Hiroshima, 7300048, Japan 2 RAMTEJ Technologies Corp., Hiroshima, Hiroshima, 7300048, Japan 3 Center for Excellence in Computer Technology Collierville, Tennessee, 38017, USA 4 Center for Excellence in Computer Technology Visakhapatnam, Andhra Pradesh, 531001, India Abstract – Call sequences in Lollipop posed some problems Reference [1]. Today, carriers, device manufacturers and of call success rate. It is identified that processing call developers exploit this innovative platform to create sequences need to be modified with new methods and applications. Software companies are creating a variety of techniques. In this paper we presented new method and applications over this platform and achieving higher techniques “Aggregated Call Module” (ACM) to replace benefits. As well, with the advancements of network traditional call sequences adopted by many OEMs, technology the carriers are also exploiting and providing Developers. Android call processes, Network types and Error handling are clearly separated into different feasibility to a variety of network variants. In order to components. This separation allowed the processes to act facilitate and support creative applications and network independently and hence problems such as inter-process innovations, device manufacturers or OEMs are dependency, asynchronous communication, etc are aggressively offering a wide range of device models [2]. eliminated. This new design concept and method allowed All these three entities, developers / software companies, programmers to develop strongly intact classes / methods. network carriers and OEM form a set together with the On the business point also, ACM provided more flexibility Android platform. to add new business components with minimal configuration and programming changes. Adoptions and Android Present Lollipop version is an excellent development upgrades also can be implemented easily. compared to Kitkat, brought to us by Android with many Keywords - Call Sequences, Network Types, ACM, rich applications [3]. To name some apps, Multitasking. 1. Look and Feel - Holo vs Material Design: Holo was 1. Introduction clean and minimal. Material Design represents the pendulum swinging back the other way so far that it Android Open Source Project (AOSP) is an initiative of almost looks like iOS. Bright colors, super flat, card- Open Handset Alliance (OHA, led by Google. Android based design and animations everywhere make Material software stack is created for a wide array of devices with Design the single most recognizable OS version around. different form factors. The primary purposes of Android are to create an open software platform available for 2. Security - Lock Screen All the Things: Lollipop is carriers, OEMs, and developers to make their innovative much more geared towards multitasking and convenient. ideas a reality and to introduce a successful, real-world From personal unlocking to notifications and quick product that improves the mobile experience for users, settings accessible from the lock screen, Lollipop goes one better and adds a Caller shortcut. IJCSN International Journal of Computer Science and Network, Volume 4, Issue 3, June 2015 ISSN (Online) : 2277-5420 www.IJCSN.org Impact Factor: 0.417 547 3. Recent Apps: Lollipop introduces a refreshed Recent As well the important components of Security, Apps area, with a scrolling card-based Rolodex stack of Configuration and Connectivity are also shown, however, your apps. Lollipop also introduces the search bar to the they are not discussed in this paper. Recents menu. 2.1 Presentation Layer (PL) 4. Settings Menu: Again, the big change here is from dark to light, with Lollipop opting for a light gray Roboto font Presentation layer (PL) provides all application level with green icons on a white ground. Lollipop embeds components with UI perspective. This layer is responsible them a layer down. The idea is, of course, that you access to display the graphical interface and providing it with those switches via the Quick Settings shortcuts instead. As data from Data Layer. There are two main components: far as functionality goes, there's a lot to be said: but it all UI Components and Process Components. When the boils down to the simple premise that lollipop is KitKat Dialer app initiates a call intent in the UI component a but better. notification is sent to Process component. The interface adapters convert the notification details into data object. 5. Dialer: All the other apps are onside of the balance and The process component parses and initiates sequencing. Dialer application itself stays on the other side to make equilibrium. This app provides wider scope to explore the Individual Users implementation of the technology improvements of various network types. With the introduction of network types, 3G, 4G and their variants, carriers and OEMs Mobile Client Application respond intelligently to the architectural changes in the UI Components network communications and implementations in Dialer Dialer / Call application. However, the call sequencing methodology Process Comps. adopted by each OEM or Software developers throws n Layer Presentatio functional disparities and diminishes call success rates and results in faulty mobile operation [4][5]. / Settings App. Facade This is where we propose a new method of implementing Biz Workfl Biz Layer Security call sequences. The proposed new method (1) avoids Business comp ows Entities Connectivity inter-process dependency, addressed in [5], (2) handles Cross-Cutting network variants independently and (3) provides Data Data Servi Configuration opportunity to easily add business components. Basic and Access Helper s ce essential architecture of android app highlighting Data Layer Agen presentation layer, business layer and data layer is given t in Fig.1. Unreliable Local Business Data Cache Networks Presentation Data & Layer Layer Layer Internet / Carrier Networks Model View Java Objects Repository Boundaries Presenter Interceptors Data Patterns Services Sources Figure 1: Android 3-level Architecture Mobile Support Infrastructure 2. Detailed Client Components Figure 2: Mobile Client Components & Network Connectivity Before adopting the newly proposed method for handling 2.2 Business Layer (BL) processes, we need to look into detailed components that are influencing or involved in the design. Our focus is on Business rules here: all the logic happens in this layer. components in the 3-level architecture depicted in Fig.1. Regarding the android project, you will see all the Essential components in each layer are given in Fig.2 [6]. interactors (use cases) implementations here as well. This layer provides room where one can add business IJCSN International Journal of Computer Science and Network, Volume 4, Issue 3, June 2015 ISSN (Online) : 2277-5420 www.IJCSN.org Impact Factor: 0.417 548 components that the application will use. Business 3. Proposed Aggregated Call Module (ACM) processes reflect the macro-level activities that the business performs. Examples include call processing. We propose a new method to replace the traditional call These business processes are encapsulated by business sequences. The proposed method is an aggregated call workflow components. Multitasking, a big improvement module in which all the processes, that are involved in in Lollipop, allows these workflows travel together. call sequence, are handled independently. The module is designed with following components Business entities are data containers. They encapsulate - a box for Input values (IN Box) and hide the details of specific data representation formats. - a box for Output values (OUT Box) For instance, a business entity may initially encapsulate a - set of Call Process Units with forward flow (CPU) recordset obtained from a database, such as address book. - set of supported Network variants (NTV) and Later, that same business entity may be modified to wrap - set of Error handlings (ERR), as shown in Fig.4. an XML document with minimal impact to the rest of the application. Business and business workflow components can interact with independent business entity components. 2.3 Data Layer (DL) Data access components in this DL are responsible for exposing the data stored in databases to the BL. In Dialer app, data source is the database at access provider where messages are stored, when calls forwarded to message center. In our case this DL includes local data cache also, which we refer very often to check the caller / called information from the object. 2.4 Network Variants Carriers do support basic (3G) to advanced (4G) networks Figure 4: Aggregated Call Module Process Overview based on the spectrums allowed to them. 4G technologies include HSPA+ 21/42, the now obsolete WiMAX, and 3.1 IN and OUT Boxes LTE. See below picture for 3G, 4G networks and the variants [7]. IN and OUT Boxes are array objects to hold all variable values. These values include the ones received from PL via INN and the ones returned by each of the CPUs. When CPUs are process a call intent it looks for the necessary values in both IN and OUT boxes. 3.2 CPU Component All the CPUs function independently, however to start and end the module ACM to function, we fix CPU1 as starting and CPUn as ending in compliance with Android Figure 3: Network Variants architecture. The technique we propose is that CPUs process the call intent in forward flow. The input values Some US carriers are in this flow (from fastest to slowest that are necessary to process the call intent are searched speed), Verizon's 4G LTE network was the fastest, in both IN and OUT boxes, and if available they are used followed by T-Mobile LTE, AT&T LTE, T-Mobile and the process continues. Otherwise the CPU is paused HSPA+, Sprint LTE, AT&T HSPA, Verizon 3G and until the necessary values are available.