Wednesday, December 4, 2019

Mobile Technology System

Question: The technical report gives students a chance to construct a research survey in a technical report style as used by research conferences and journals. Suggested areas to focus on are: Answer: 1. Introduction With the advent of advanacement in mobile technology, the marketplaceis flooded with many different mobile operating systems. Android and iOS are most well-known rivals in this field. In this paper, a comparative study has been performed between Android and iOS to check the features keeping all the technicalities into consideration. 2. Architecture Comparison Android makes use of Linux Version 2.6 for its core system services. These includes the security, process management, memory management, driver model as well as network stack. It is implementing using the programming language C. Middleware includes both runtime as well as libraries. Runtime includes both core libraries which provides most of functionality which are available in corel libraries of java programing language and the Dalvik virtual machine which enables android application to run in its own process. These libraries are used by many different components of android system which includes 3D libraries, Media Libraries etc. The upper level includes the Application and the application framework. Developers can take full advantage of device hardware, access local information, set alarms, and add notifications to the OS notification bar, run background services among others. All these applications would be written on Java programming language. Figure 1: Android architecture Figure 2: iOS architecture Now, in the case of iOS, the core OS as well as the core OS service layers contain both the fundamental interfaces for the OS. These also includes those which are used for accessing files, as well as Bonjour services, low-level data types, network sockets among others. Most of these interfaces are C-based and also include technologies such as the core foundation, the CF Network, the SQLite as well as access to UNIX Sockets and POSIX among others. Next, the media layer contains many different fundamental technologies such as the support for 2D and 3D drawing, audio / video etc. This layer includes technologies based on C such as Quartz, OpenGL ES and Core Audio. It also contains the core animation which is an animation engine based on Objective-C. It makes use of a mixture of both C based as well as objective-c based interface. The Cocoa touch layer provides fundamental infrastructure used by the application. This foundation framework provides object oriented support for file manageme nt, network operations, and collections and is based on the objective-C 3. Feature wise comparison of Android and iOS 3.1. Android 3.1.1. Android 1.xx (aka Cupcake and Donut) The basic operating system. A drop down notification window from all sections of the screen. Basic widgets which are small programs which stick on the desktop area of the phone. Gmail integration along with a Gmail app Android Market which was the primary means to get the apps Onscreen keyboard using the touchscreen Upload support on YouTube Also included the third party app development support and kit which other developers and companies could make use of to develop apps for Android. 3.1.2. Android 2.xx (Eclair, Froyo and Gingerbread) Ability to support for multiple Google accounts Inclusion of Google Maps app which utilized the GPS hardware on the phone. Ability to add quick contacts Ability to add up to five home screens Gallery was enhanced and included features such as the ability to move image to different folders and changing the orientation would rotate the image as well. Ability to lock the phone using a 4 character PIN The user interface of the operating system as well as that of the widgets and certain apps were slightly tweaked and improved Ability to support front cameras on devices which had front camera 3.1.3. Android 3.X (Honeycomb) Honeycomb was a Tablet only operating system. It included a completely re-designed interface to begin with. There was a new action bar support. Also Honeycomb removed the need for hardware buttons and included on-screen buttons at the bottom of the screen comprising of Home, back and forward. 3.1.4. Android 4.0 (Ice Cream Sandwich) Icecream sandwich was a cohesive release which meant that the same OS would be used for both tablet and mobile phones. Primary changes included a data usage analysis section wherein users would be able to track both Wi-Fi and Cellular data usage. Ability to transfer files, contacts etc. by touching two phones together by making use of the NFC hardware. This was known as Android Beam. 3.1.5. Android 4.1 to 4.3 (Jelly Bean) Support for low-energy Bluetooth based smart devices such as heart rate monitors, thermometers etc. Support for Project butter which drastically improved the framerate of Android OS to up to 60Fps and improvements in V-Sync. Ability to interact with certain apps using the notification bar. Inclusion of Google Now, a smart digital assistant similar to Siri on iPhone. Performance improvements 3.1.6. Android 4.4 (KitKat) Slightly tweaked interface with translucent System UI and inclusion of Google Now Launcher that combined Google Now with a new launcher. A new screen recording application which allowed users to record whatever is on-screen Enhanced notification bar Performance improvements 3.1.7. Android 5.0 (Lollipop) Complete user interface overhaul with increased use of grid-based layouts which made use of cards based UI first introduced in Google Now as well as depth effects such as shadows and lighting. This was the biggest user interface overhaul and is known as Material Design (Limited, 2014). A new lock screen was also introduced, along with a do not disturb feature, new notification action, guest mode and user accounts and ability to add trusted devices (Ashby, 2010). Lollipop also came with performance improvements and improved battery consumption. Several new APIs for developers. Lollipop also came with a new way to track battery consumption on Android. 3.2 IPhone 3.2.1 IPhoneOS (iOS1) iOS1 has touch screen included by apple that responds to finger taps and swipes and the touch screen keyboard no more comes with actual buttons that gives a much larger screen and making it look less compact. Multiple key presses are also accepted by the system. Web browser named Apple safari is available as a mobile version. USB connections are possible in ios1 in iTunes enabled computers increasing the compatibility of iTunes. No direct access of files on the phone is possible, making ios1 more secure. The home button makes it easier for the user to switch between the home and any app. Wi-Fi iTunes purchase is possible on iOS1. 3.2.2 IPhoneOS 2 (iOS 2) The app store facility is available making it flexible for the user to purchase apps from the apple store. User and companies can easily develop apps with the help of iOS Developer Kit. Exchange support by Microsoft and features like push email are available. Ready-made playlists created by iTunes are possible with the help of iTunes Genius support. Audio files that we like at third party sites like web shows can be downloaded. The Google street view feature makes it easier for the viewer to view 3D maps from iPhone. 3.2.3 IPhoneOS 3 (iOS 3) Text selection, copy and paste capabilities come up with ios3. Searching web pages with spotlight search just with the help of keywords. Ios3 comes with USB/Bluetooth tethering allowing other mobile devices to access internet available on iPhone. Beside portrait, landscape view rotation is possible to make two-fingered keyboard. In case our iPhone is misplaced it can easily be located. Remote lock available to shut off any device using an iPhone. Connectivity services like Bluetooth can be used to input voice commands. 3.2.4 IPhone OS 4 (iOS 4) With ios4, multitasking is taken to a whole new level, enabling multiple apps to run in the background and also receiving notifications of the content from the apps. Facility of face time is available making video calling easier in between two iPhone users. Crystal clear display or Retina display enhancement, colour balance and smooth display along with display of TV shows makes ios4 more attractive. Just like normal SMS facility, emails are also sent directly to our device these are called as threaded emails. With iTunes Ping social network gets specifically tailored to music. Unlike in ios3 having USB/Bluetooth tethering ios4 comes with 3G tethering, making iPhone a hotspot for Wi-Fi enabled devices. 3.2.5 IPhone OS 8 iOS 8 introduced improvements in messages and included Tap to talk to send a pre-recorded message, video or a photo. It also provided new features in Group messaging and also ability to share location and turn off notifications from a group. There were many different functionalities added to the photos app such as effects, ability to adjust exposure, brightness, contrast etc. Camera also came along with new ways to take pictures and photos using time-lapse mode, timer mode, burst mode etc. Quicktype Keyboard which is an improved version of the default Apple keyboard with several key features as well as ability to install third party keyboards such as Swype, Swiftkey among others (Inc., 2014). Health: An altogether new health app is available in iOS8 which aggregates the users health and fitness related data by recording certain information from the devices sensor as well as other health related devices connected to the iPhone. Family Sharing: Ability to share iTunes, App Store purchases, iBooks with 6 members of the family. Ability to store all documents, photos and videos to the newly introduced iCloud Drive A feature called Continuity and Handoff was also made available which allows the users with different iOS and Mac OSX devices to work together seamlessly such as sharing data among each other, ability to work from one device and resume on other among others (Inc., 2014). Ability to share iPhones or iPads internet connection instantly with one click to the Mac OSX based devices. Ability to transfer files wirelessly between iOS and Mac OSX devices using AirDrop Built-in default search improvements which includes web related entry along with data stored in the device Improvements in the default Mail app Improvements in the default digital assistant Siri which improved its responsiveness, accuracy and reliability Improvements in the default web browser Safari Improvements in default Map application which includes Flyover city tours, inline map view in calendar among others. A new feature which allows one to track battery usage by different user applications. Enterprise features such as expanded data protection to contacts, calendar, messages, notes, reminders among others. 4 Development 4.1 Development Environments Language - In Android, the language is Java whereas in iOS the language is Objective-C as well as Swift as of June 2014 which is Apple's own proprietary language (Tut, 2013). IDE - Android makes use of the JDT tools whereas in iOS, XCode IDE, iPhone Simulator, Shark Analysis tools etc. is used (Maasalmi, 2011). Programming Model - Android supports multiple processes as well as component reuse and the platform also provides support for activities and intents (Chin, 2011). It provides a way for declaring user preferences in XML. While on the other hand, iOS MVC design pattern provides a way for declaring user preferences in XML (Myrose, 2012). UI Builder - The Android UI builder cannot display the user interface of how the developers app will actually appear, whereas on the iOS there is a seamless UI builder which is flexible and also able to model sophisticated UIs. Open Vs. Close - Apples iOS is a closed and proprietary system which has a strong bond between exclusive hardware and software. Googles Android on the other hand is an open-source approach. As a result, anybody is free to make use of Android Operating system from Google and customize it as per their liking or even go ahead to make use of the OS on a device other than mobile or tablet. Android Project itself is now a part of open handset alliance of several different hardware, software and service providing companies (Wilner, 2012). Application publishing - Since Apples OS is quite closed, every single Application being submitted to the App Store goes through a rigid testing process and anything out of the ordinary is rejected (Inc., 2012). Apple also requires a developer account which is licensed yearly to be able to submit Application to the app store. On the other hand, Android application publishing is much more open, relax and nearly free. Both of the companies however charge 30% of the revenue fees (Jaiswal, 2014). 4.2 Security Since iPhone is a restricted platform, there are restrictions not just for every single application being submitted but also the privileges given to them when they are executed on the phone. This makes the platform much more secure and fortified (Svajcer, 2014). While on the other hand, Android suffers from security issues not only because of the fact the entire operating system is open but also because, the manufacturers add their own layer of User Interface called as Custom Skin on top of Android Open Source Project implementations. Furthermore, it is even more customized by slipstreaming on integrating various services and applications by the manufacturer of the handset. This renders android less secure. Finally, the number of malware on Android is quite high compared to almost a miniscule amount of malware for the iOS platform (CISCO, 2014). 5 Port third party applications 5.1 Android Android resembles more with other Java platforms as compare to desktops running Desktop Linux. The desktop Linux is developed using X11 i.e. X windows system which is paired with a windows manager such as KDE or GNOME. Instead of using desktop Linux PC software, for e.g. Maemo Linux of Nokias 900, Android provides a customized Java Virtual Machine which is similar to that of BlackBerry OS and Symbian phones. They are able to execute Java ME applications. Google has developed a customized version of Java byte code interpreter of Android, known as Dalvik, in order to save Sun licensing fees for official JVM version of Android. As a result of this, Google is able to provide Android at free cost and also without interference from Sun. It also develops Android as a Java platform rather than a Linux platform. One of the key features of android, which is both strength and a weakness, is its insular nature. The peculiar user space stack provides a non-compatible path to port 3rd party applic ations from and to the standard Linux environments. However, Android does not offer considerable amount of cohesion across different devices i.e. a lesser fragmentation. 5.2 IPhone On the other hand, Apple has taken an altogether different approach in developing its mobile software platform. Instead of developing a byte code interpreter on the basis of specific and modified implementation of Java ME, Apple had come up with a scaled down version of Mac OS X Cocoa environment. It uses trusted work of the Mac developers of the company in place of established base of coders of Java ME. The Java code can be ported to iPhone but it needs considerable translation work. This is so because Apple supports only Objective-C/C language as iPhone programming language in its own tools. Instead of permitting iPhone developer to easily port desktop Mac applications to iPhone, the huge gap between iPhone and Android development tools appears to be a strategic step. Apple is able to gain more attraction of developers to Mac. In addition to this, it is able to sell twice as many iPhones as that of Mac. IPhone also shares a large market share than Mac platform. 6 Reliability and security 6.1 Android Android is a multi-process system i.e. every application along with some parts of system runs in its own process space. There is a considerable security between applications and the system which is enforces at the process level. It is done by conventional facilities offered by Linux such as user and group Ids which are allocated to applications. Another security feature is provided through permission mechanism. It results in putting restrictions of the specific operations which can be performed by a process. In addition to this, operations are specified by per-URI permissions as well. Since Android is a free software, it permits users to install softwares from any developer in the devices. However, users must pay attention to the developer of softwares being downloaded and decide whether they should allow the application to make changes in their devices. Users can decide it from the trustworthiness of developers and from where the software has come. 6.2 IPhone IPhone offers no security feature and does not allow users to load any 3rd-part applications on their devices. This could eliminate the infection risk from malicious software to a considerable extent. The higher risk arises whenever iPhone is connected to Web. In addition to this, screen of iPhone gets disabled after a prolonged time of non-use. However, passcode feature has taken this feature to a step further. Whenever display of device gets locked, either by device auto-lock feature or user has put it on sleep through sleep button, the user needs to enter 4-digit passcode in order to unlock the device before it is being used again. The security APIs of iPhone are present in the Core services layer of operating system. These APIs are based on services in Core OS layer of operating system. The iPhone applications call the security service API instead of communicating Cocoa or Media layers directly. In addition to this, networking applications are able to acquire secure networking fu nctions through CF network API. This API is also present in the Core Services layer. 7 Conclusion Android and iOS have strong technical base but each leverages itself from different perspective. Android is based on Java whereas iOS has made objective-C as its platform. Android has fragmentation issues and iOS does not 3rd party applications to get in with ease. The papers has come to this conclusion that the deciding factor among them is the users jurisdiction and how one is going to use the device. But both these operating systems will remain in race for a long time from now. 8 References Ashby, M. (2010). Materials and Design. AppState.edu. Retrieved 19 January 2015, Chin, E. (2011). Analyzing Inter-Application Communication in Android. Berkeley.edu. Retrieved 19 January 2015, from CISCO,. (2014). Cisco 2014 Annual Security Report. Retrieved 19 January 2015, from Inc, A. (2012). App Store Submission Tutorial. Apple.com. Retrieved 19 January 2015, from Inc, A. (2014). First Look - iOS 8. CreativeChannel. Retrieved 19 January 2015, from Inc, A. (2014). iOS T echnolo g y O v er view. Apple.com. Retrieved 19 January 2015, from Jaiswal, S. (2014). Research on Android app Vs Apple app Market: Who is leading ?. International Journal Of Engineering And Computer Science, 3(4), 5553-5556. Limited, 2. (2014). The Android graphics path In depth. LinuxFoundation. Retrieved 19 January 2015, from Maasalmi, E. (2011). Comparing Googles Android and Apples iOS Mobile Software Development Environments. Theseus.fi. Retrieved 19 January 2015, from Myrose, J. (2012). iOS Design Patterns. Colorado.edu. Retrieved 19 January 2015, from Svajcer, V. (2014). Sophos Mobile Security Threat Report. CRN.com. Retrieved 19 January 2015, from h Tut, C. (2013). Swift. cs.tut.fi. Retrieved 19 January 2015, from https://www.cs.tut.fi/~popl/essays/Swift.pdf Wilner, N. (2012). The Power Architecture and Power.org word marks and the Power and Power.org logos and related marks are trademarks and service marks licensed by Power.org. A. ELinux.org. Retrieved 19 January 2015, from

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.