| +91 9790176891

ANDROID 2016 Projects

Category Archives



We describe Google’s online handwriting recognition system that currently supports 22 scripts and 97 languages. The system’s focus is on fast, high-accuracy text entry for mobile, touch-enabled devices. We use a combination of state-of-the-art components and combine them with novel additions in a flexible framework. This architecture allows us to easily transfer improvements between languages and scripts. This made it possible to build recognizers for languages that, to the best of our knowledge, are not handled by any other online handwriting recognition system. The approach also enabled us to use the same architecture both on very powerful machines for recognition in the cloud as well as on mobile devices with more limited computational power by changing some of the settings of the system. In this paper we give a general overview of the system architecture and the novel components, such as unified time- and position-based input interpretation, trainable segmentation, minimum-error rate training for feature combination, and acascade of pruning strategies. We present experimental results for different setups. The system is currently publicly available in several Google products, for example in Google Translate and as an input method for Android devices.

An Enhanced Available Bandwidth Estimation Technique for an End-to-End Network Path


This paper presents a unique probing scheme, a rate adjustment algorithm, and a modified excursion detection algorithm (EDA) for estimating the available bandwidth (ABW) of an end-to-end network path more accurately and less intrusively. The proposed algorithm is based on the well known concept of self-induced congestion and it features a unique probing train structure in which there is a region where packets are sampled more frequently than in other regions. This high-density region enables our algorithm to find the turning point more accurately. When the dynamic ABW is outside of this region, we readjust the lower rate and upper rate of the packet stream to fit the dynamic ABW into that region.We appropriately adjust the range between the lower rate and the upper rate using spread factors, which enables us to keep the number of packets low and we are thus able to measure the ABW less intrusively. Finally, to detect the ABW from the one-way queuing delay, we present a modified EDA from PathChirps’ original EDA to better deal with sudden increase and decrease in queuing delays due to cross traffic burstiness. For the experiments, an Android OS-based device was used to measure the ABW over a commercial 4G/LTE mobile network of a Japanese mobile operator, as well as real testbed measurements were conducted over fixed and WLAN network. Simulations and experimental results show that our algorithm can achieve ABW estimations in real time and outperforms other stat-of-the-art measurement algorithms in terms of accuracy, intrusiveness, and convergence time.

Seeing Is Believing: Sharing Real-time Visual Traffic Information via Vehicular Clouds


From today’s conventional cars to tomorrow’s self-driving cars, advances in technology will enable vehicles to be equipped with more and more-sophisticated sensing devices, such as cameras. As vehicles gain the ability to act as mobile sensors that carry useful traffic information, people and vehicles are sharing sensing data to enhance the driving experience. This paper describes a vehicular cloud service for route planning, where users collaborate to share traffic images by using their vehicles’ on-board cameras. We present the architecture of a collaborative traffic image–sharing system called Social Vehicle Navigation (SVN), which allows drivers in the vehicular cloud to report and share visual traffic information called NaviTweets. A set of NaviTweets is then filtered, refined, and condensed into a concise, user-friendly snapshot summary of the route of interest, called a Traffic Digest. These digests can provide more pertinent and reliable information about the road situation and can complement predictions like estimated time of arrival, thereby supporting users’ route decision making. As proof of concept, this paper presents the system design and a prototype implementation running on the Android smartphone platform, along with its evaluation.

DroidDetector: Android Malware Characterization and Detection Using Deep Learning


Smartphones and mobile tablets are rapidly becoming indispensable in daily life. Android has been the most popular mobile operating system since 2012. However, owing to the open nature of Android, countless malwares are hidden in a large number of benign apps in Android markets that seriously threaten Android security. Deep learning is a new area of machine learning research that has gained increasing attention in artificial intelligence. In this study, we propose to associate the features from the static analysis with features from dynamic analysis of Android apps and characterize malware using deep learning techniques. We implement an online deep-learning-based Android malware detection engine (DroidDetector) that can automatically detect whether an app is a malware or not. With thousands of Android apps, we thoroughly test DroidDetector and perform an indepth analysis on the features that deep learning essentially exploits to characterize malware. The results show that deep learning is suitable for characterizing Android malware and especially effective with the availability of more training data. DroidDetector can achieve 96.76% detection accuracy, which outperforms traditional machine learning techniques. An evaluation of ten popular anti-virus softwares demonstrates the urgency of advancing our capabilities in Android malware detection.

Refactoring for Asynchronous Execution on Mobile


To improve responsiveness, oftentimes developers use asynchronous programming. In the post-PC era, asyn- chronous programming is even more in demand because mo- bile and wearable devices have limited resources and access the network excessively. One contemporary development task is refactoring long-running, blocking synchronous code (e.g., accessing the web, cloud, database, or file system) into non- blocking asynchronous code. This paper educates the mobile app developer on the kinds of refactorings they need to perform to improve responsiveness, along with the obstacles of using asynchrony. We also present our formative studies on under- standing the challenges that developers face when retrofitting asynchrony, our program analyses and transformations together with our growing, practical toolset and resources that enable app developers to retrofit asynchrony.This article is part of a special issue on Refactoring.

MiraMap: A We-government Tool for Smart Peripheries in Smart Cities


Increasingly over the last decade, there has been attention and expectations on the role that ICT solutions can play in increasing accountability, participation and transparency in the Public Administration. Also, attention to citizen participation is more and more at the center of the debate about Smart Cities. However technological solutions have been often proposed without considering first citizens needs and the sociotechnical misalignment within the city, i.e. in peripheral area. The paper outlines the design and implementation process of a wegovernment IT tool, called MiraMap. The project has been developed in the Mirafiori District in Torino (Italy), a neighbourhood which is characterized by problems of marginality and by several undergoing urban transformations with a very high potential for social and economic development in the next few years. This makes Mirafiori Sud a valuable case study environment to experiment new methods and IT solutions to strengthen connection between citizens and public administration. The object of MiraMap, indeed, is to facilitate communication and management between citizens and administration in reporting of issues and claims but also in submitting proposals. Collecting and handling this information in an efficient way is crucial to improve the quality of life in urban suburbs, addressing more targeted and better performed public policies. In order to achieve those results, the authors combined First Life, a new local social network based on an interactive map – with a Business Process Management (BPM) system for easing reports about claims and proposals to be handled. The research process involves an interdisciplinary team, composed by architects, computer scientists, engineers, geographers, legal experts, with the direct participation of local administrators and citizens.

Greener and Smarter Phones for Future Cities: Characterizing the Impact of GPS Signal Strength on Power Consumption


Smart cities appear as the next stage of urbanization aiming to not only exploit physical and digital infrastructure for urban development but also the intellectual and social capital as its core ingredient for urbanization. Smart cities harness the power of data from sensors in order to understand and manage city systems. The most important of these sensing devices are smartphones as they provide the most important means to connect the smart city systems with its citizens, allowing personalization n and cocreation. The battery lifetime of smartphones is one of the most important parameters in achieving good user experience for the device. Therefore, the management and the optimization of handheld device applications in relation to their power consumption are an important area of research. This paper investigates the relationship between the energy consumption of a localization application and the strength of the global positioning system (GPS) signal. This is an important focus, because location-based applications are among the top power-hungry applications. We conduct experiments on two android location-based applications, one developed by us, and the other one, off the shelf. We use the results from the measurements of the two applications to derive a mathematical model that describes the power consumption in smartphones in terms of SNR and the time to first fix. The results from this study show that higher SNR values of GPS signals do consume less energy, while low GPS signals causing faster battery drain (38% as compared with 13%). To the best of our knowledge, this is the first study that provides a quantitative understanding of how the poor strength (SNR) of satellite signals will cause relatively higher power drain from a smartphone’s battery.

ICCDetector: ICC-Based Malware Detection on Android


Most existing mobile malware detection methods (e.g., Kirin and DroidMat) are designed based on the resources required by malwares (e.g., permissions, application programming interface (API) calls, and system calls). These methods capture the interactions between mobile apps and Android system, but ignore the communications among components within or cross application boundaries. As a consequence, the majority of the existing methods are less effective in identifying many typical malwares, which require a few or no suspicious resources, but leverage on inter-component communication (ICC) mechanism when launching stealthy attacks. To address this challenge, we propose a new malware detection method, named ICCDetector. ICCDetector outputs a detection model after training with a set of benign apps and a set of malwares, and employs the trained model for malware detection. The performance of ICCDetector is evaluated with 5264 malwares, and 12026 benign apps. Compared with our benchmark, which is a permission-based method proposed by Peng et al. in 2012 with an accuracy up to 88.2%, ICCDetector achieves an accuracy of 97.4%, roughly 10% higher than the benchmark, with a lower false positive rate of 0.67%, which is only about a half of the benchmark. After manually analyzing false positives, we discover 43 new malwares from the benign data set, and reduce the number of false positives to seven. More importantly, ICCDetector discovers 1708 more advanced malwares than the benchmark, while it misses 220 obvious malwares, which can be easily detected by the benchmark. For the detected malwares, ICCDetector further classifies them into five newly defined malware categories, which help understand the relationship between malicious behaviors and ICC characteristics. We also provide a systemic analysis of ICC patterns of benign apps and malwares.

Designing a Secure Exam Management System (SEMS) for M-Learning Environments


M-Learning has enhanced the e-learning by making the learning process learner-centered. However, enforcing exam security in open environments where each student has his/her own mobile/tablet device connected to a Wi-Fi network through which it is further connected to the Internet can be one of the most challenging tasks. In such environments, students can easily exchange information over the network during exam time. This paper aims to identify various vulnerabilities that may violate exam security in m-learning environments and to design the appropriate security services and countermeasures that can be put in place to ensure exam security. It also aims to integrate the resulting secure exam system with an existing, opensource and widely accepted Learning Management System (LMS) and its service extension to the m-learning environment, namely “the Moodbile Project”

Wireless Monitoring of Endogenous and Exogenous Biomolecules on an Android TM Interface


Monitoring patients in intensive care units is generally expensive and time consuming. A prompter medical intervention for those critical patients is a key factor for their safety. Therefore, a system that offers immediate visualization of the monitored data represents a great advance in the field. In this paper, the design, the development, and the validation of an android interface for the continuous and wireless monitoring of up to five compounds are described. Continuous monitoring of the biomolecules is addressed by using a fully integrated hardware platform consisting of biosensors connected to a read-out circuit on a printed circuit board. The electrochemical platform uses Roving’s Bluetooth module RN-42 to send the measured data to the mobile device. For the validation of the system, some biomolecules are taken as reference: glucose and lactate for endogenous metabolites and paracetamol for exogenous biomolecules. Chronoamperometries are performed at +650 mV for glucose and lactate and at +450 mV for paracetamol. Multi-walled carbon nanotubes are deposited on working electrodes for glucose and lactate for enhanced signal. Instead, for paracetamol, bare working electrodes are used. The measured data are continuously displayed on the screen of the mobile device because of the android interface. Current step for every variation of glucose, lactate, or paracetamol is clearly visible by the trend of the graphs.

Automatically Recommending Peer Reviewers in Modern Code Review


Code review is an important part of the software development process. Recently, many open source projects have begun practicing code review through “modern” tools such as GitHub pull-requests and Gerrit. Many commercial software companies use similar tools for code review internally. These tools enable the owner of a source code change to request individuals to participate in the review, i.e., reviewers. However, this task comes with a challenge. Prior work has shown that the benefits of code review are dependent upon the expertise of the reviewers involved. Thus, a common problem faced by authors of source code changes is that of identifying the best reviewers for their source code change. To address this problem, we present an approach, namely cHRev, to automatically recommend reviewers who are best suited to participate in a given review, based on their historical contributions as demonstrated in their prior reviews. We evaluate the effectiveness of cHRev on three open source systems as well as a commercial codebase at Microsoft and compare it to the state of the art in reviewer recommendation. We show that by leveraging the specific information in previously completed reviews (i.e.,quantification of review comments and their recency), we are able to improve dramatically on the performance of prior approaches, which (limitedly) operate on generic review information (i.e., reviewers of similar source code file and path names) or source coderepository data. We also present the insights into why our approach cHRev outperforms the existing approaches.

RTDroid: A Design for Real-Time Android


This paper presents our work on the inception of RTDroid, a variant of Android that provides predictability to Android applications. Although there has been much interest in adopting Android in real-time contexts, surprisingly little work has been done to examine the suitability of the Android franework layer for real-time systems. Existing work only provides solutions to traditional problems, including adding support for real-time garbage collection at the virtual machine layer as well as kernel-level real-time scheduling and resource management. While it is critical to address these issues, it is by no means sufficient. After all, Android is a vast system that is more than a Java virtual machine and a kernel. Thus, this paper goes beyond existing work and examines the internals of Android, the Android programming model, libraries and core systems services. We discuss the implications and challenges of adapting Android constructs and core system services for real-time and present a solution for each. Our system is unique in that it redesigns Androids internal components, replaces Androids Dalvik VM with a real-time VM, and leverages off-the-shelf real-time OSes. We demonstrate the feasibility and predictability of our solution on three different platforms. The evaluation results show that our design can successfully provide predictability to Android applications even under heavy loads.

Content Centric Energy Management of Mobile displays


Despite numerous studies to reduce the power consumption of the display-related components of mobile devices, previous works have led to a deterioration in user experience due to compromised graphic quality. In this paper, we propose an effective scheme to reduce the energy consumption of the display subsystems of mobile devices without compromising user experience. In preliminary experiments, we noticed that mobile devices typically perform redundant display updates even if the display content does not change. Based on this observation, we first propose a metric called thecontent rate, which is defined as the number of meaningful frame changes in a second. Our scheme then estimates an optimal refresh rate based on the content rate in order to eliminate redundant display updates. Also proposed is the flicker compensation technique, which prevents the flickering problem caused by the reduced refresh rate. Extensive experiments conducted on the latest smartphones demonstrated that our system effectively reduces the overall power consumption of mobile devices by 35 percent while simultaneously maintaining satisfactory display quality.

A secure, Usable, and transparent Middleware for Permission Managers on Android


Android’s permission system offers an all-or-nothing choice when installing an app. To make it more flexible and fine-grained, users may choose a popular app tool, called permission manager, to selectively grant or revoke an app’s permissions at runtime. A fundamental requirement for such permission manager is that the granted or revoked permissions should be enforced faithfully. However, we discover that none of existing permission managers meet this requirement due to permission leaks, in which an unprivileged app can exercise certain permissions which are revoked or not-granted through communicating with a privileged app. To address this problem, we propose a secure, usable, and transparent OS-level middleware for any permission manager to defend against the permission leaks. The middleware is provably secure in a sense that it can effectively block all possible permission leaks. The middleware is designed to have a minimal impact on the usability of running apps. In addition, the middleware is transparent to users and app developers and it requires minor modifications on permission managers and Android OS. Finally, our evaluation shows that the middleware incurs relatively low performance overhead and power consumption.

Semantic Slam: Using Environment Landmark for unsupervised INDOOR Localization


Indoor localization using mobile sensors has gained momentum lately. Most of the current systems rely on an extensive calibration step to achieve high accuracy. We propose SemanticSLAM, a novel unsupervised indoor localization scheme that bypasses the need for war-driving. SemanticSLAM leverages the idea that certain locations in an indoor environment have a unique signature on one or more phone sensors. Climbing stairs, for example, has a distinct pattern on the phone’s accelerometer; a specific spot may experience an unusual magnetic interference while another may have a unique set of Wi-Fi access points covering it. SemanticSLAM uses these unique points in the environment as landmarks and combines them with dead-reckoning in a new Simultaneous Localization And Mapping (SLAM) framework to reduce both the localization error and convergence time. In particular, the phone inertial sensors are used to keep track of the user’s path, while the observed landmarks are used to compensate for the accumulation of error in a unified probabilistic framework. Evaluation in two testbeds on Android phones shows that the system can achieve 0.53 meters human median localization errors. In addition, the system can detect the location of landmarks with 0.83 meters median error. This is 62 percent better than a system that does not use SLAM. Moreover, SemanticSLAM has a 33 percent lower convergence time compared to the same systems. This highlights the promise of SemanticSLAM as an unconventional approach for indoor localization.

An integrated simulation framework to Model Electric Vehicle operations and services


At present, battery charging operations constitute one of the most critical obstacles toward a large-scale uptake of Electric Mobility (EM), due to performance issues and implementation complexities. Although several solutions based on the utilization of Information and Communication Technologies (ICTs) and on mobile applications have been investigated to assist the Electric Vehicles (EVs) drivers and to coordinate the charging operations, there is still the problem of how to evaluate and validate such solutions on realistic scenarios, due to the lack of accurate simulators integrating vehicular mobility, wireless communication and battery charging/discharging models. In this paper, we attempt to fill this gap, by proposing a novel EV simulation platform that can assist the pre-deployment of charging infrastructures and services on realistic, large-scale EM scenarios. The simulation platform, realized within the ARTEMIS EU project “Internet of Energy for Electric Mobility“ (IoE), supports two utilization modes, i.e. evaluation of EM scenarios and immersive emulation of EM-related mobile applications, thanks to a semantic architecture through which virtual and real components can be integrated in a seamless way. We provide three major contributions with respect to the state of the art. First, we extend the existing co-simulation platform composed by SUMO (vehicular traffic simulator) and OMNET++ (network simulator) with realistic models of EVs, EVSEs and ontology-based communication protocols that enable the deployment of city-wide mobile services (e.g. charging reservation). Second, we validate the battery model against the consumptions data of target EVs, and we evaluate the operations of EVs on a large-scale scenario (the city of Bologna), by analyzing the effectiveness of the charging reservation process and the resulting impact to the smart grid. Finally, we introduce the Mobile Application Zoo (MAZ), a sandbox through which EM-related mobile ap- lications can be seamlessly integrated within the simulation platform in order to be validated on virtual environments before their deployment on real scenarios, and we describe the implementation of an Android app for battery monitoring and charging reservation.

Using Viewing Statistics to Control Energy and Traffic Overhead in Mobile Video Streaming


Video streaming can drain a smartphone battery quickly. A large part of the energy consumed goes to wireless communication. In this article, we first study the energy efficiency of different video content delivery strategies used by service providers and identify a number of sources of energy inefficiency. Specifically, we find a fundamental tradeoff in energy waste between prefetching small and large chunks of video content: small chunks are bad because each download causes a fixed tail energy to be spent regardless of the amount of content downloaded, whereas large chunks increase the risk of downloading data that user will never view because of abandoning the video. Hence, the key to optimal strategy lies in the ability to predict when the user might abandon viewing prematurely. We then propose an algorithm called eSchedule that uses viewing statistics to predict viewer behavior and computes an energy optimal download strategy for a given mobile client. The algorithm also includes a mechanism for explicit control of traffic overhead, i.e., unnecessary download of content that the user will never watch. Our evaluation results suggest that the algorithm can cut the energy waste down to less than half compared to other strategies. We also present and experiment with an Android prototype that integrates eSchedule into a YouTube downloader.

Diagnosing Energy Efficiency and Performance for mobile Inter-Netware applications: Challenges and Opportunities 2.


Mobile Internetware applications sense physical and cyber environments and connect a tremendous world of users and things. Smartphone applications are one typical example. However, the smart services of many real-world smartphone applications are realized in an energy-inefficient or performance-ill way, seriously affecting user experience. What is even worse, developers lack powerful tools to combat such problems. This curbs the continuous growth of Internet-based mobile computing. There thus exists a strong call from research communities and industries for effective techniques to diagnose energy and performance bugs in smartphone applications. In this article, we study the characteristics of these bugs and discuss challenges in diagnosing them. We then review state-of-the-art techniques in this field and explore future research directions. Finally, we study the use of one representative tool in analyzing commercial Android applications and Samsung Mobile SDK. We show how the tool can provide useful diagnostic information to developers and discuss effective ways to support Internet-based mobile computing and beyond.

The Impact of API Change- and Fault-Proneness on the User Ratings of Android Apps


The mobile apps market is one of the fastest growing areas in the  information technology. In digging their market share, developers must pay attention to building robust and reliable apps. In fact, users easily get frustrated by repeated failures, crashes, and other bugs; hence, they abandon some apps in favor of their competition. In this paper we investigate how the fault- and change-proneness of APIs used by Android apps relates to their success estimated as the average rating provided by the users to those apps. First, in a study conducted on 5,848 (free) apps, we analyzed how the ratings that an app had received correlated with the fault- and change-proneness of the APIs such app relied upon. After that, we surveyed 45 professional Android developers to assess (i) to what extent developers experienced problems when using APIs, and (ii) how much they felt these problems could be the cause for unfavorable user ratings. The results of our studies indicate that apps having high user ratings use APIs that are less fault- and change-prone than the APIs used by low rated apps. Also, most of the interviewed Android developers observed, in their development experience, a direct relationship between problems experienced with the adopted APIs and the users’ ratings that their apps received.