Android Build Dependency Analysis

INTRODUCTION While normal source code (also as known as production code) implement the behavior of a software, its build system (including build tools and build code such as makefiles) derives the executable software from its production source code. In development of large software systems, the complexity of source code often make the build system also complex, and the building process can be time-consuming (in some cases over one hour) even using a high-performance and multi-core computer. This is absolutely not acceptable in large development projects with a high number of code revisions and builds per day. Moreover, the study of McIntosh et al. [7] shows that the build code accounts actually changes in a comparable frequency along the evolution of source code. Among these changes, even a subtle error in the build code may cause serious defects in the built software or even build failures. Therefore, McIntosh claimed that source code development and testing are significantly influenced by build maintenance although build code usually accounts for a small proportion of a software project. In order to maintain and optimize the build system, a critical step is to extract and understand the build dependency structure in the build process. Theoretically, the build dependency structure contains two dimensions as illustrated in Fig. 1. On the one hand, the root build command triggers a flow of build actions that can further run atomic build jobs (e.g., compiling and linking). These build actions and jobs are invoked and executed in a tree structure (vertical in Fig. 1). On the other hand, the build jobs with different build tools indicate dependencies between input build artefacts and output build artefacts, which further constitute a dependency graph (horizontal in Fig. 1). In the recent years, the Android operation system has been widely used in both mobile consumer electronics as well as other industrial devices (e.g., in automotive and medical care). However, the Android code complexity has been increasing along its evolution history, which makes the building process more and more time-consuming [8] and sometimes also errorprone during development and maintenance. Although there was some endeavor in build dependency extraction and optimization [1][4], a generic and automated build analysis approach with tool support is still lacking. In this paper, we provide the following contributions: • Investigation of the source code and the build system of the Android operation system (i.e., Android 5 and 6). • An automated approach to extracting and visualizing the build dependency structure based on monitoring the build process, and then comparing the extracted build dependencies of one system with that of another system. • A case study of the build dependency analysis on both the Android 5 and Android 6 respectively as well as their comparison. This paper is presented in the following structure. Section II presents the example Android system and its characteristics. Section III introduces the build dependency analysis approach and its analysis results on the Android system. While Section IV discusses related work, Section V presents conclusions and future work at the end.

(vertical in Fig. 1). On the other hand, the build jobs with different build tools indicate dependencies between input build artefacts and output build artefacts, which further constitute a dependency graph (horizontal in Fig. 1). In the recent years, the Android operation system has been widely used in both mobile consumer electronics as well as other industrial devices (e.g., in automotive and medical care). However, the Android code complexity has been increasing along its evolution history, which makes the building process more and more time-consuming [8] and sometimes also errorprone during development and maintenance. Although there was some endeavor in build dependency extraction and optimization [1][4], a generic and automated build analysis approach with tool support is still lacking. In this paper, we provide the following contributions: • Investigation of the source code and the build system of the Android operation system (i.e., Android 5 and 6). • An automated approach to extracting and visualizing the build dependency structure based on monitoring the build process, and then comparing the extracted build dependencies of one system with that of another system. • A case study of the build dependency analysis on both the Android 5 and Android 6 respectively as well as their comparison. This paper is presented in the following structure. Section II presents the example Android system and its characteristics. Section III introduces the build dependency analysis approach and its analysis results on the Android system. While Section IV discusses related work, Section V presents conclusions and future work at the end.

Travel Management System using GPS & Geo Tagging on Android Platform

INTRODUCTION The increasing popularity of smart phones and hand held devices has led to an increase in the time consumers spend on online search. According to a recent research by Google India “Mobile phones are becoming a key contributor in the online traveling space. With travel becoming cheap and affordable, the number of travelers and their frequency of travelling in India are increasing continuously. This web application is an online service for touring Incredible India. The main objective of this paper is when users are on the move, it is able to provide rich and concise information timely and make them access to the service at anytime and anywhere. It is aimed at providing information about important places of interest. Not only can visitors read and know more about these places, they can also see their relative positioning on Google maps and experience the beauty of India. It also suggests travel plans based on users preferences. To make touring more exciting visitors can also share their experiences through the forums on the web site. ­ This project, Travel Portal use android programming language. Android programming language is Android software development, the process by which new applications are created for the android operating system.

II. BACKGROUND A. Android Android is an open source and Linux-based Operating System for mobile devices such as smart phones and tablet computers. Android was developed by the Open Handset Alliance, led by Google, and other companies. Android offers a unified approach to application development for mobile devices which means developers need only develop for Android, and their applications should be able to run on different devices powered by Android. The IDE used for development of this application is android studio which is freely available under the Apache License 2.0. This application use Android 5.1 APIs (API level :22) which is an update to the Lollipop release that offers new features for users and app developers[3]. B. Global Positioning system (GPS) GPS is a space-based satellite navigation system The GPS system concept is based on time. GPS satellites transmit data continuously which contains their current time and position. This web application uses GPS to find the current location of the user and to locate all the places where the user wants to visit. The operating mode that we have used is a twodimensional GPS that includes two horizontal coordinates (longitude, latitude). It requires minimum of three visible satellites [4]. C. Google Maps API Google Maps is a Web-based service providing detailed information about geographical regions and sites around the world. The Google Maps application program interface (API) makes it possible for Website administrators to embed Google Maps into a proprietary site such as a real estate guide or community service page[4,5]. D. Google Places API The Google Places API Web Service allows to query for place information, such as: establishments, prominent points of interest, geographic locations, and more. A Place Search returns a list of places along with summary information about each place. It returns information about places — defined within the API as establishments, geographic locations, or prominent points of interest — using HTTP requests[5].

EXISTING WORK Some online social travel networking websites are TravBuddy.com, Travellerpoint.com, TripAdvisor.com, Lonely Planet.com etc. A. TripAdvisor TripAdvisor is an American online social travel networking website. TripAdvisor was the platform studied to gain deeper understanding about the way hotels, tourists and residents of a given destination are changing the tourism online marketplace. This website tripadvisor.com was designed to run within iOS, watchOS, Android, Windows, Windows Phone. Presently TripAdvisor contains 10 million travel reviews and opinions and written by 5 million registered members and count 25 million visitors per month. In TripAdvisor most information posted is autonomously generated by its users. They post reviews, comments and ratings on a destination, a hotel, an attraction or any other tourism related ‘object’ or service.

B. LONELY PLANET Travel media company Lonely Planet announced the release of guides on iOS and Android. The city guide app was designed to help users plan trips and learn about worldwide destinations, and has launched with content covering 38 cities, including London, New York, Paris and Rome. The guide app includes an average of 1,000 points of interest for each city, and allows users to download individual city guides and access offline maps for these locations [8].

Android Based Control and Monitoring System for Leg Orthosis

INTRODUCTION Paraplegia is bilateral paralysis of the lower body including the two legs. It is commonly resulting from the Spinal Cord Injury (SCI) which communication between brain and the other part of body is blocked or loss. Messages below the level of injury are unable to pass damage in the spinal cord. A. Ibrahim reported that the major cause resulting in SCI in Hospital Kuala Lumpur in between 2006 to 2009, motor vehicles accidents contribute 66% and falls 28% [1]. In a study out of 670 motor vehicle occupant fatalities in Malaysia, 176 (26.3%) cases suffered spine injury. Motorcyclist are particularly vulnerable as the helmet only protect the head but not the neck and spine [2]. Figure 1 shows the depiction of a catapulting injury to a motorcyclist. Based on the study conducted by Department of Rehabilitation Medicine, Hospital Kuala Lumpur, there were 292 patients suffering SCI from 2006 to 2009. The number increase every year. Reported that 63% of them subsequently became paraplegic (individuals who are suffering Paraplegia) and 37 % became tetraplegic (individuals who are suffering Tetraplegia) [1]. Tetraplegia or as known as Quadriplegia is a cervical (neck) injuries. Tetraplegic resulting in four limbs (both arms and legs) which are neck-down to paralyzed. Meanwhile, paraplegic resulting only in lower body (both legs) to paralyzed [3].

Most of the paraplegics wish to be able to walk normally again. It is important for a paraplegic to perform a regular range of motion exercise program. Lack of exercise can result in increased muscle spasms and increase the chances of developing pressure sores. Failure to exercise on a regular basis can cause joints, muscles, ligaments and tendons to stiffen. If parts of the body stiffen, it will impact the ability to sit and maintain body posture. In some critical cases, it leads to urinary failure or completely paralyzed [4, 5]. Thus, the leg orthosis instrument is introduced to help the paraplegic to perform regular exercise. Based on Dorland’s Medical Dictionary for Health Consumers 2007, orthosis is an orthopedic appliance or apparatus used to support, align, prevent and correct deformities or to improve function of movable parts of the body [6] . The leg orthosis instrument are largely electrical assembled. Based on the previous study, the doctors have increasingly come to realize the importance of exercise for people with paralysis. It is important to get immobile limbs to move [7]. Evaluation of performance for the leg orthosis had been made and it is proven to solve problems of paraplegic patients however the previous development of the leg orthosis is controlled manually where the leg orthosis will swing up and down by controlling on-off of the power button. Therefore during rehabilitation treatment plans, the physiotherapist (a specialist in physical rehabilitation and exercise) must always alongside with the paraplegic patient to control the on-off power button and monitored the result of the treatment. There are important parameters that doctor, physiotherapist and medical doctor need to monitor during the exercise period however this information is difficult to be available for the doctors. Therefore this project continues with the development of the control system and monitoring platform for leg orthosis by using Android application. This study mainly focuses on the development of a userfriendly control and monitoring system for leg exercise using leg orthosis. The motorized leg orthosis will be controlled using Android device which is connected wirelessly to the exercise system. The patient’s pulse rate, date and time will be shown on the android device during the exercise session. The data of the previous exercise sessions also can be stored together with other patient’s information. These information are important data needed by the doctor during rehabilitation plans. Android is the world’s most commonly used smartphone platform and it is used by many different smartphone manufacturers. Besides that, the price gap between iOS and Android smartphones is widening. The price of iOS smartphones are double the price of standard Android smartphones. This user-friendly system is design to accommodate paraplegic at a reasonable cost.

ABCA: Android Black-box Coverage Analyzer of Mobile App without Source Code

 Coverage criteria [5, 4] are indispensable in evaluating the adequacy of testing effort and progress of real-world software projects. On one hand, there are many traditional coverage criteria, including line coverage, branch coverage, data-flow coverage, method coverage, for white-box testing when the source code are available. On the other hand, there are also coverage criteria, defined on the system or module interfaces, for black-box testing. An empirical study [3] observed that coverage-based techniques are also effective in detecting software faults. Recently, the booming of Android app market in the cloud has prompted many small teams and individuals to adventure in this market. We present a coverage analysis tool, called Android Black-box Coverage Analyzer (ABCA), that does not need the source code of the apps under test (AUT) but can still provide source code level coverage data. ABCA can thus be beneficial in the following two aspects. • Clients need protect their intellectual properties (IP) and would be reluctant to release the source code of their applications to the test service providers. In this aspect, ABCA could be a useful bridge between the clients and the test service providers and could eventually promote the test service industry to the mobile application developers. • ABCA makes it possible for the test service providers to gain business without leaving concerns of IP infringement to their potential clients. As a research project, ABCA also shows the solution techniques for collecting source code coverage data without access to the program source code. With the detailed coverage data, ABCA can also help diagnosing why some parts of the code cannot be reached or identifying those code segments related to certain bug traces. Academia can also use ABCA in researching coverage-based techniques for Android apps. To the best of our knowledge, the only coverage tool similar to ABCA and available to the public for Android apps is by Horváthy, Bognáry, Gergely, et al [1]. However their tool can only report coverage on the methods. In contrast, ABCA can report detailed coverage reports on lines, methods, and classes of the source code of the execution of Android APKs. ABCA runs on Microsoft Windows on PC and connects to Android devices via a USB line. It consists of two parts. • ABCA-instrumentor (ABCAI), that instruments the byte-code of an Android Application Package (APK) so that coverage data can be collected out of the execution of the APK. • ABCA-reporter (ABCAR), that monitors the execution of the instrumented APK and collects the coverage data from the APK to compile the final coverage report. In Figure 1, we show a typical sequence diagram of the activities in using ABCA. The sequence diagram shows the following steps in sequence. 1) A test engineer first gets the APK under test (AUT) in bytecode from her client. 2) Then the test engineer can use ABCAI to instrument the APK to include bytecodes for providing coverage data. 3) The test engineer connects the Android device to the PC and with the help of ABCAR, install the instrumented APK to the Android device via the USB line. At this step, the test engineer can also use option of ABCAR to import a coverage report from a previous test session. With this option, the test engineer can continue test sessions and accumulate test coverage across test sessions in a testing project. 4) Then the test engineer starts the instrumented APK with ABCAR. 5) The test engineer then feeds test input to the AUT on the device and the coverage data is collected by ABCAR via the USB line. This step can be repeated several times until the user decides to stop the test session. Various test case generation modules and tools can also be employed for high coverage and bug exposure. 6) After the test session is done, ABCAR generates a coverage report file. At the moment, the coverage report includes line coverage, method coverage, and class coverage. In this manuscript, we shall present the algorithms and techniques used in ABCA in section 2. We also explain some technical issues in our implementation in section 3. Then we report experiment of ABCA with several Android apps in the Google Play in section 4. Via the experiment, we can see that ABCA is effective in generating white-box coverage data without source code of the apps of Android.

CSLA – An application using Android Capstone Project

INTRODUCTION With the convergence of traditional computers and mobile telephony, the new smart devices capable of running customized applications have been on the rise. These smart devices uses Android (the first comprehensive open source operating system) equipped with Dalvik virtual machine and Linux kernel. It is a platform that allows developers to develop and design applications which can turn simple cell phones into smart phones. Usually, people use their smart phones for social networking, business activities and various other purposes. There is a need for educational establishments to embrace this new mode of information dissemination. The developed system is going to help the students to locate their class rooms and staff according to the time table. Global Positioning System (GPS) and Google Maps is also integrated with CSLA which help users to follow the exact path to reach their desired destination.

LITERATURE REVIEW In year 2011, A Gomez-Goiri et al., proposed an application that reduces mobility of disabled person in supermarket as it maps all the products with the supermarket map [1]. In the year 2014, Karan Punjabi et al., proposed a bus locator via Short Message Service (SMS) android application which automates all aspects related to college bus arrival. It uses GPS receiver to get the current location of the Bus and SMS to inform the registered students when bus is near their destination [2]. In the year 2012, Diego Gargallo Tarin developed an application ‘UJI Smart Campus: the Place Finder’ which allows users to locate people and place in the campus. The application provides a base map with every room that locates rooms and connects peoples and displays them on a map [3]. In 2013, M.F.A Abdullah et al., presented a paper which proposed application ‘GPS and SMS based child tracking system’. It uses GPS and SMS based services that help parents to track children, parents need to send SMS to child phone to get his location [4]. In year 2012, Yizheng Liao et al., in his paper presents a library automation application that uses image processing algorithm to search for book in the library[5]. In year 2012, Michael Austin et al., in his paper proposed navigational instructions for locations on the campus of ‘Elizabeth City State University’, it uses GPS to get the location and tell the way to be followed to reach destination in university [6]. In year 2012, Birhanu Hailemariam developed an application ‘Received Signal Strength Indication (RSSI) based indoor localization system’ that uses existing wireless facility to locate a target object in indoor environment. The sensor reading used for the location estimation is the RSSI measured from the Access Points (APs) [7].

PROBLEM FORMULATION GNDEC face the challenging task of locating class rooms according to the new time table with the fall of new semester. They have to manually write schedule for their class rooms which is time consuming. Departments put up notices on the notice board for time tables. Students need to view map of the campus to locate class rooms. In manual system single class room can be allocated to more than one class simultaneously. Drawbacks of the manual system can be overcome by the CSLA. The application can be easily accessed by the user at any time.

Exploring the Malicious Android Applications and Reducing Risk using Static Analysis

INTRODUCTION The growth of mobile phone technology has revolutionized the whole world. As the number of users is increasing day by day, facilities are also increasing [16]. The increase in the usage of phone had made a drastic change in environment. [17]. Now mobiles are not used just for making calls, but instead they have innumerable uses as a Camera, Music player, Tablet PC, TV, and Web browser, Android operating system (OS) is mainly introduced with lot of advancement and its diverged features to make human life easier. The most widely used mobile OS on these days is Android [17] which plays a vital role in today’s market. The detection of the malicious application (malapps) out of the application (app) markets is an ongoing challenge. One of the key points of Android security mechanisms is permission control that restricts the access of applications (apps) to core facilities of devices [1]. Android forces apps to declare the permissions they require when they install them. The users can guard our privacy and security, by paying attention to android app permissions when installing those apps, where many users unaware about the permissions. The app declares its permissions when it is installed. In general, these permissions access cannot be controlled. The app displays what the requirements are and whether we need to accept or reject it. Permissions are abundant in the model. The problem is that most android users have no idea about the proper installation of an app. Many users, failed to read the [EULA] End User License Agreement in which think its a matter to quickly tap through when installing apps [9]. To protect against malware the android platform presents an application environment that ensuring the security to users and all developers. Hence, to securing an open platform the system is designed with these robust security architectures and rigorous security programs.

RELATED WORK On a recent survey [17], as reported on Wikipedia, the Google play store has nearly 1billion application where the increase in usage of android apps increases day by day. The android is open source were the people getting moved to the application. The android operating system and its apps play a vital role in the today’s world .So the focal target is towards attacking them. The threat has caused great rise in the malware1 , chargeware2 , and adware3 [7]. So, various analyses and research have been made to find better results on the malware detection and new technique involving the higher detection rate and accuracy. The main issue is when concerned with android its security, apparently the main cause is the malware. Earlier the malware detection was through a system call request in which based on only on request, where internal behavior is not analyzed. In terms of static it is based on privilege escalation attacks detection and prevention of attacks [14]. It includes various methodologies comprising the Component-based permission escalation, Application-level privilege escalation attack. In another work, a framework for segregation of software in android platform with application of security [8].MOSES represented as MOde-of-uses SEparation in Smartphones, where the android level semantics filtrations of irrelevant behaviors are done. On considering the dynamic analysis the work of the malware detection is based on Copper Droid where analyzing the android level semantics, characterizing the general behavior [13] .But it has certain limitation where the behaviors of android are not analyzed. Next Taint Droid based on android level semantics and filtering of the irrelevant behaviors [11]. Taint Droid is alerting the information leakage of unintended data to intended data. Profile Droid based on behaviors of the system and focus on the android level semantics [10]. Droid Scope focused on the android level semantics, analyzing the internal behaviors [15].

PROPOSED WORK In considering upon an installation of the app, permissions play a key role in it. Many users are unaware of installation permission where the users of ignorant to the malicious threats. Lots of unnecessary permission leaks to the unauthorized users where leading a malicious activity. Thus the proposed work is introduced in order to minimize the risk permission which preventing the privacy data to be leaked.

The efficient implementation of the Android kernel with China standard cryptographic algorithm

INTRODUCTION In recent years, with the rapid development of mobile Internet, mobile terminal intelligent devices have become popular, people use intelligent mobile terminal to obtain news information, social activities, entertainment shopping. Gradually, the intelligent mobile terminal has replaced the PC as an indispensable part of human life, work, and study. In many mobile phone operating system, The Android operating system [1] based on Linux, founded by Googles Open Handset Alliance, is one of the hottest device operating system. And its open source and easy to operate the characteristics, which has been attracting much attention of the equipment manufacturer and consumers of electronic products. With the popularity of Android devices, Android’s open source feature as the risk brought about also threatens the security of the Android platform, Personal information of their phones have become the most anxious for the user. Android system itself has provided a complete set of encryption system, that is, the use of traditional encryption algorithm for sensitive data within the system and application software signature and encryption to enhance system security. With the hardware processing speed and decryption means continue to improve, the traditional encryption algorithm is facing a serious challenge, Such as the confidentiality of the RSA algorithm with the increase of the key length, it does necessary to increase the key length in order to improve the security of the data, This will reduce the speed of the algorithm. Traditional encryption algorithm is not only been further studied, also its been attacked. There is a cracked security risks, in which it makes the personal information stored in the Android system and sensitive data faced a serious threat. Cryptography algorithm, especially the encryption algorithm is the core of information security, so in a high security environment, we should use a better performance of the password algorithm. In recent years, China has also made great progress in cryptographic algorithms, The Chinese cryptography professor has cracked the world’s two major cryptographic algorithms MD5 [2] and SHA1[3]. National Commercial Cryptography Administration has also announced SM2 algorithm, SM3 algorithm, and SM4 algorithm. Therefore, considering the security of cryptographic algorithms and Chinese law in communications security, this research and analysis for the encryption mechanism of Android kernel, the domestic encryption algorithm SM2/SM3/SM4 encryption algorithm is added to the original Android to replace the AOSP system, transformation of safety of domestic cryptographic algorithms based on Android kernel. In order to improve the encryption efficiency of the system, provide confidentiality and integrity protection, and promote the application of National cryptographic algorithms.

ANDROID SECURITY MECHANISM AND ENCRYPTION SERVICE A. Security model Android uses a layered system architecture, which consists of the Linux kernel layer, the hardware abstraction layer, the system runtime library layer, the application framework layer and the application layer [4]. Figure 1 shows the architecture of Android. Android is based on the Linux operating system kernel, which implements the core functions of hardware device driver, process and memory management, network protocol stack, power management and so on. In addition, Android also increased the number of mobile devices for specific functions, such as Low Memory Killer, Ashmem (Anonymous Shared Memory), and Binder. These enhancements to help further the Androids memory management, inter process communication (IPC) and other aspects of security. Android mechanism also uses the security features provided by the Linux kernel, using Linux user isolation mechanism to achieve Android application sandbox mechanism. During the installation phase of the application, Android automatically provide for each application with unique UID (User ID), application execution on the specific process in the UID operation, in addition, each application has a special data read and write permissions for their own directory. So the application sandbox mechanism ensures that each application runs in its own independent space, the mutual interference between each other, thus greatly enhance the protection of user privacy, and stability and running application security [5]. Because the Android application sandbox mechanism makes a process can access the memory of another process space, so as to achieve inter process communication, Binder as a new IPC mechanism for Android came into being. Binder is based on the design and conception of OpenBinder, and realizes the distributed component architecture based on abstract interface. The Binder mechanism in the kernel space to increase the process identifier, thus, the caller can not exceed the allowed permission system to obtain through forged identity, so it can prevent the occurrence of right phenomenon, improve safety. B. Encryption Service The encryption service of the Android system can protect the system security based on the Java encryption architecture [5]. Supported encryption algorithms includes: DES algorithm, AES algorithm, DH algorithm, RSA algorithm, MD5 algorithm, SHA-1, SHA-256, etc.. DES (Data Encryption Standard) is one of the most popular block cipher which also widely used in the world [6]. It is developed by the United States IBM company, it is the length of the plaintext packet of 64 bits, the key length of 56 bits. To express in three stages, the first is the initial replacement, then has the same function in the 16 round of transformation, and finally after an inverse initial permutation; where was the key point, first through a replacement function, then the encryption process of each round, produce a sub key through a circular left shift and replacement. The decryption algorithm of DES is the same as what the encryption algorithm, while the sub key is used in reverse order [7]. AES (Advanced Encryption Standard)is a block encryption standard adopted by the federal government[8]. Issued by the National Institute of standards and Technology (NIST) that has become one of the most popular algorithms for symmetric key encryption [9]. AES algorithm is a block cipher with block length and key length. The key length and the block length may be independently designated as 128 bits, 192 bits, and 256 bits. AES algorithm is the most basic transformation unit ”round” multiple iterations. The round function is composed of four different internal functions: ByteSubShiftRowMixColumnAddRoundKey. The decryption of the algorithm is only in the opposite direction inversion encryption [7]. DH (Diffie-Hellman) key exchange protocol is the first public key cryptosystem proposed by W.Diffie and M.Hellman in 1976 [10]. The purpose of the algorithm is to enable two users to exchange keys safely, and to obtain a shared session key. The security of the algorithm based on the difficulty of finding discrete logarithms. The RSA algorithm was constructed by R.Rivst, A.Shamir, and L.Adleman in 1978 [11]. It is also the most mature and perfect public key cryptosystem.

“I am in ASEAN”: A Learning Media Application On Android Operating System

INTRODUCTION The ASEAN community [2] including Thailand, Laos, Vietnam, Cambodia, Myanmar, Malaysia, Singapore, Indonesia, Brunei Darussalam and Philippines indicates the power of regional collaboration among Southeast Asian countries. As each country have its own culture, beliefs, history and way of life and being a part of ASEAN does not change these differences. Furthermore, each country aims to protect and to celebrate one own territory and diverse identities but wholeheartedly develops the region through mutual collaboration. In order to advance together as a global community, a more learning about the neighbors in the ASEAN community is necessary and importance. The children and youths, who require a solid foundation of knowledge in order to stride forward alongside their peers in the community, must know this fact. “I am in ASEAN” was developed as a learning media application that works on Android operating system. The target group is children and youths. The structure of the application is comprehensible and easy to use. A user can use the application to learn about ASEAN and will have more confident of being in the ASEAN community.

OBJECTIVE A. This application has been developed for children and youths to support better understanding of each of ASEAN The application has been developed for children and youths ages of 7 to 12 years to get better understanding of the 10 member countries of ASEAN community. The content is focused on the basics knowledge of the ASEAN community because it is the first step of preparation to be a part of the community. B. As an alternative to learn about ASEAN. “I am in ASEAN” learning media developed to provide a medium for knowledge and as an alternative to the study of knowledge about ASEAN. Focus on the basics of the ASEAN Community. This will be the first step in preparing for entry into ASEAN Community. A user can use and learn about ASEAN and becoming more confident in the ASEAN community.

BACKGROUND The terminologies and technologies used in this project are briefly described as follows. A. An android Operating System An android Operating System [1] is a free and open source mobile operating system for mobile devices such as mobile phones and computer tablet developed by Google. Android has a large community of developers writing applications that extend the functionality of devices, written primarily in the Java programming language. B. Learning media Learning media is application presented content that aims to enable students to learning and using by themselves. C. Interactive media Interactive media [3] normally refers to products and services on digital computer-based systems which respond to the user’s actions by presenting content such as text, graphics, animation, video, audio, games, etc.

CONCLUSION Our implementation aims to provide the knowledge of ASEAN for children and youths to support better understanding of each of the 10 member countries. We applied knowledge combined with technologies into this application. We tested “I am in ASEAN” learning media application with 20 children that the results are satisfactory. The children enjoy with this application and also to enhance the skills to learn and remember because it is a creative media and can be used to educate the children actually.

FoodForCare: An Android Application for Self-Care with Healthy Food

INTRODUCTION Nowadays, the majority of people do not pay attention to food that they eat due to a lack of time and ignorance of health conditions. However, health care especially with food topics tends to have an influence on some groups of healthy people in society. Food causes the body to gain nutrition and is essential to life. Healthy food is important for the system inside the body because the food choices each day affect the health condition. Good nutrition is an important part of leading a healthy lifestyle [1]. In addition to healthy food, self-care is another action of humans that can cause a healthy lifestyle [2]. People can take care of themselves by using the knowledge of self-care, which means that they should learn to control, deliberate and selfinitiate the food consumed and calories burned each day. Especially for patients, self-management is very important and crucial for them to get rid of their illness. Non-communicable diseases (NCDs) [3] are the diseases that are not caused by bacteria or infection through touching or carriers, but are caused by the result of lifestyle and the risky behaviors in eating. NCDs have become the number one cause of deaths in Thailand with more than 300,000 fatalities each year [4]. NCDs consist of Diabetes Mellitus, Cardiovascular and Cerebrovascular Diseases, Cancer, Hypertension, Obesity, etc. Thus, people would be able to have a healthy life without diseases and reduce the risk of NCDs if they usually exercise and eat nutritional food daily. Recently, technology devices such as smart phones and tablets have an impact on everyday lives. The significant growth is a mobile application often used every day. Lately, many people tend to use a mobile phone instead of a personal computer. Android is one of the most popular operating systems in the world. Especially in Thailand, Android has the highest proportion of Thai mobile operating system market share [5]. Hence, the researchers use this opportunity to make use of all of this information by creating an application on Android mobile devices. Therefore, FoodForCare is developed to support users, especially patients with NCDs diseases, to record their eating habits. Also, analyze nutrition and calories each day for users to be able to maintain their food intake and heal their ill health condition. The list of food in the application was got from various books such as healthy food [6][7], food for diabetic patients [8][9], and food that use to prevent from diseases [10]. Lastly, the researchers would like to encourage people to pay more attention to the food that they eat. According to the statement “We are what we eat” refers to people having a healthy well-being with the food that they eat everyday.

BACKGROUND AND RELATED WORK

A. Self-Care by Healthy Food and Weight Control Self-care [11] is an act when people intend to take care of themselves with respect to physical, mental and emotional health. They may use self-care to prevent themselves from illnesses, try to lose weight, or challenge their self to be healthier. The researchers are focusing on Self-care with nutritional food. Food is the topic that people often overlook, they are too busy or do not have time to consider eating healthy and nutritional food. They usually substitute it with fast food or a snack loaded with sugar instead of a regular nutritional meal. The lack of adequate nutrition will cause people to encounter with many diseases. People can easily self-check their body measurement by having weight control, which can be defined by Body Mass Index (BMI) [12], Basal Metabolic Rate (BMR) [13], and Total Daily Energy Expenditure (TDEE) [14]. All of these can be calculated by weight, height, age, gender and the daily activities of that person. It is essential to know the overall body status to be aware of health conditions and body metabolism.

B. Survey existing applications A number of existing applications related to food, diet and calories control were explored. Nine interesting applications closely related to the development of FoodForCare are briefly discussed as follows. Table I displays feature comparison of the nine applications with FoodForCare which are CalTracker[ 15], Calories Diary [16], F oodiEat[ 17], Kcal Check Calories[18], Calories Counter[19], Low Calories Recipe[20], Food That Help Your Body Heal[21], My Diet Diary[22], and Clean Food[23]. Most of the applications have only some basic features such as record, calculate and analyze calories in each day. However, all applications surveyed still had some weak points. Many applications do not provide nutritional information, clean food and a food guide. It would be more convenient for users to use one application like FoodForCare that can provide all features.

C. Related work S. Kasim et al. [24] described an Android application created with the main purpose to help users managed their calories consumed per day. It would help ensure users receive a better and healthier life and decrease the diseases problem. The significant advantage of this application is that it can compare calories eaten and burned in a day. Moreover, S. B. Ahire et al. [25] discussed the ontology semantic framework that would suggest Health Care system to give accurate information based on user input. It helps society to have a healthy food by categorizing and suggesting knowledge of food and sensible amounts of exercise by using a decision tree algorithm. L. 1. Paiva et al. [26] discussed the strategies that would change the increasing number of NCDs patients. A lack of knowledge in nutrition information leads to an unhealthy diet. They introduced the Knowledge-Attitude-Behavior (KAB) Model, which focuses on behavioral change in diet that may be caused by a lack of time or money, habits, social norm, and available technologies. Furthermore, S. Scerri et al. [27] described the review of systems and challenges in the area of human computer interaction (HCI) to give a better way to reduce the risk of health problems. The purpose is to enhance the usage of computer technologies with nutrition and human health.

oHealth: A Self-Care Android Application for Senior Citizens with Hypertension

INTRODUCTION At present, the number of senior citizens in the world tends to increase every year. As reported by the World Bank the number of senior citizens in the world is around 0.5 billion people or 8.2% and around 74.3% of them have hypertension [1]. In the same way, the number of Thai senior citizens tends to increase. According to the National Statistical Office, the number of senior citizens in Thailand is around 10 million people or 14.9% [2]. The number of senior citizens shows that Thailand’s society will become a senior’s society soon. From the information of Thai Health Promotion Foundation, senior citizens in Thailand is around 4.1 million people or 41.0% who have high blood pressure or hypertension [3]. High blood pressure is the most common risk factor to other diseases such as stroke, kidney disease, paralysis, and so on. Therefore, high blood pressure is a very important disease that needs to be treated. Nowadays, there are many medical devices that can use to monitor people health in ever day life such as heart rate monitor, glucose monitor, blood pressure monitor, pedometer and weighing scale. Blood pressure monitors are also now available to use anywhere. Accordingly, senior citizens can use these devices to measure blood pressure at home. The hypertension patient should measure the blood pressure and take care oneself at home that is the best way to measure blood pressure [4] [5]. Moreover, most of people do not know the factors that impact the value of blood pressure such as body mass index (BMI), eating too much sodium, eating too less potassium, alcohol addiction, smoking, lack of physical activities, stress and taking the medicine according to the doctor. Thus, they should know more the basic knowledge of hypertension. In 2016, smartphone owner in Thailand is about 24 million people and about 2.5% of them are senior citizens [6]. Recently, Thai people are increasingly interested in selfcare but most user interface of self-care applications are not friendly for senior citizens e.g. small text, small button [7]. The main objective of this research work is to design and develop a self-care android application for senior citizens with hypertension to guide, track and treat hypertension and to reduce the risk of having other incurrent diseases. Hence, this oHealth application will be a useful tool for senior citizens with hypertension to take care of themselves.

BACKGROUND AND RELATED WORK A. Senior Citizens The definition of senior citizens from the United Nations is people who are more than 60 years of age. The senior citizen can separate into 4 types which are the young – old (60 to 69 years old), the middle-aged old (70 to 79 years old), the old-old (80 to 90 years of age), and the very old-old (90 to 99 years old). At present, the number of senior citizens in Thailand tends to increase every year. When seniors get older, health problems occur with them in many ways [1]. B. High blood pressure (Hypertension) Normally, blood pressure when the heart pump blood (systolic) is below 120 mmHg and blood pressure when the heart relaxed (diastolic) is below 80 mmHg. Blood pressure can be changed over time, especially when people sleep, wake up, exercise, stress, or exited. But it will be back to normal blood pressure when people finish their activities. If people finish their activities, but the blood pressure still higher than 120/80 mmHg. This means people can have high blood pressure (Hypertension) [8].

High blood pressure can divide into three levels, which are prehypertension (120-139/80-89 mmHg), high blood pressure stage 1 (140-159/90-99 mmHg), and stage 2 (more than 160/100 mmHg) [4]. There are two types of high blood pressure, which consist of primary and secondary high blood pressure. More than 90% of hypertension patients have primary high blood pressure. It is the most common type that occurs in people. And another 10% have secondary high blood pressure. There are many causes, factors and treatments of primary and secondary high blood pressure as summarized in Table 1 [8] [9] [10].

High blood pressure can divide into three levels, which are prehypertension (120-139/80-89 mmHg), high blood pressure stage 1 (140-159/90-99 mmHg), and stage 2 (more than 160/100 mmHg) [4]. There are two types of high blood pressure, which consist of primary and secondary high blood pressure. More than 90% of hypertension patients have primary high blood pressure. It is the most common type that occurs in people. And another 10% have secondary high blood pressure. There are many causes, factors and treatments of primary and secondary high blood pressure as summarized in Table 1 [8] [9] [10].

From the observation, most existing applications do not provide medicine reminder, BP reminder, knowledge, treatment, and daily emotion features in their applications. Accordingly, oHealth was proposed in order to provide all of alternative features from every application that are suit for users. Furthermore, oHealth has design that supports senior citizens directly, such as use minimalist design, provide large icons, avoid the use of irrelevant information, and maximize contrast and avoid use of excessively bright colors [17]. D. Blood pressure devices In the present, there are many blood pressure devices that can connect with smartphones, such as Welch Allyn 767, Omron M7, Withings, iHealth BP7, QardioArm, etc. According to the comparison of four smartphone compatible blood pressure monitors research [18], BP5 device can measure with higher accuracy than the other devices. Blood pressure 5 (BP5) produced by iHealth Labs, Inc., can work with both Apple and Android devices by connecting via Bluetooth V3.0. This device can measure blood pressure and pulse. The pressure accuracy of BP5 is minus 3 and plus 3 mmHg. The pulse accuracy of BP5 is minus 5 and plus 5 percentages. The range that BP5 can measure blood pressure is around 0 to 300 mmHg. E. High blood pressure data set A data set from the Statistical Society of Canada is used learning and classifying hypertension levels. Thirteen variables relevant to hypertension causes and factors are selected for analysis which are systolic blood pressure, gender, marital status, smoking status, age, weight, height, body mass index (BMI), exercise level, alcohol use, stress level, hypertension level and salt (NaCl) intake level from food [19].

The oHealth system architecture as shown in Fig. 1 has five main actors. The first actor is senior citizens with hypertension who can use oHealth by connecting with Wi-Fi or a mobile Internet data in Android device. The second actor is the administrator who maintains the database on Azure SQL Database cloud server. The third actor is doctor, assistant, and family members who receive history data and blood pressure analysis report of senior citizens. The fourth actor is BP5 device which can measure blood pressure. The last actor is azure machine learning which gets all the collected data and analyze hypertension levels for the user. The oHealth application requires the user to register as a member by providing their personal information and log-in. The application offers six main features. The first feature is user profile, which keeps senior’s information. The second feature is measure blood pressure, which measures blood pressure by connecting blood pressure device. The third feature is knowledge, which gives knowledge about hypertension, food, exercise, and medicine. The fourth feature is treatment, which records food dairy, medicine intake, and exercise for using in hypertension analysis and treatment. The fifth feature is reminder, which uses to set reminder to measure blood pressure and take medicines in each day. The last feature is analysis, which analyzes hypertension levels with azure machine learning system by using Multiclass Logistic Regression algorithm [20] to create a predictive model and shows the result to the user. The analysis results and history data can be shared to doctors, assistant, or family members.