Android

Greater control for more peace of mind

iBuildApp Unveils iPhone And Android Source Code For Mobile App Developers

FOR IMMEDIATE RELEASE (Burlingame, CA)—By the year 2018, telecommunications research surveys indicate that over one-third of consumers worldwide (approximately 2.56 billion people) will own smartphones. Because smartphones rneed applications in order to run properly, this presents a tremendous opportunity for business owners and mobile app developers to reach an unprecedented number of consumers right where…
Read More

Learning Android Intents

Learning Android Intents

Android is an emerging technology with loads of apps in the Google Play Market. Till date, it is the biggest marvel in Smartphone technology, propelling a larger number of developers into Android application development. Intent is an essential part of any Android Application and no Android application is complete without using them. Features such as listening broadcasts, sending messages, sharing via social networks, notifications, hardware components including camera, sensors, Wi-Fi, and more, can be used in your applications by using Intents.

This practical guide focuses on using intents to make the best use of various features of Android platform. It is ideal for those developers who want to understand the backbone and the domain of Android Intents, its power, and the need for it inside an Android application. Practical, in-depth examples are used throughout the book, to help you understand the key concepts.

The book starts with introducing the very basic concepts of Android, and its various facts and figures such as different Android versions, their release dates, evolution of Android phones and so on. While covering the basic technical concepts, it proceeds from the easiest route of introducing Android Intents towards the more practical view of Android Intents in terms of components and features.

You will learn how to use different components and features such as transfer data between activities, invoke various features and components of Android, execute different in-built and custom-made services, use hardware and software components of Android device, and start Pending Intents & notifications. You will gain better theoretical knowledge of what is running behind the concepts of Android Intents, and practical knowledge of the mobile-efficient ways to perform a certain task using Android Intents.

Towards the end, you will have a clear vision and a practical grip on Android intents and its features. Learning Android Intents is a proper guide to give you the best knowledge of Intents.

What you will learn from this book

  • Understand Android Intents and their importance in Android apps
  • Get to grips with the different types of Intents and their implementation
  • Discover data transfer methods in Android Intents along with their optimization and performance comparisons
  • Explore the implementation of Intents while invoking Android Features in an application.
  • Use Intent Filters and their sub-domains in order to perform various actions and sorting categories in Android Intents
  • Catch different events while working with Broadcast Receiver and perform various actions
  • Implement pending Intents and Intent Service, sending text to the Notification Panel, and much more

Approach

The book will take an easy-to-follow and engaging tutorial approach, providing a practical and comprehensive way to learn Android intents.

Who this book is for

If you are a novice or an intermediate Android Developer who wants to expand their knowledge of Android Intents, this book is ideal for you. Readers are expected to have basic understanding of Android development, how to use different IDEs, and how to develop applications using Android APIs.

Android Platform

Android is a software stack that includes an operating system, middleware and key applications. While Google is the main actor which comes to mind, the Open Handset Alliance also collaborates on Android’s development and release. The operating system is based on the Linux kernel, the specific versions depends on the platform version and is given in the comparison table below.
Phones / Tablets / Smart watches / TV Player…

The latest version of the platform is now Marshmallow Android 6.0.1.

There was previously two flavors of the platform. One targeted for small screens mainly mobile phones (all versions below 3.0), and one dedicated for tablets: Honeycomb Android 3.0. However not all Android tablets support this version (some tablets use the Android 2.x).

These two variants of the platform have been merged to a versatile and uniform platform since “Ice Cream Sandwich”, which has been released in October 2011. It combines “Gingerbread” and “Honeycomb” versions in a cohesive platform for tablets and phones at the same time.

Android 5.0 aka Lollipop target to be even more versatile to target also smart watches, TV player, Car media center… device with only 512 of RAM can support this new version.

Note: The market share figures (Feb. 2016) are based on statistics using API level, so the percentage might gather several versions of the Android platform.

Feature of Android Marshmallow

User experience

A new “Assist” API allows information from a currently-opened app, including text and a screenshot of the current screen, to be sent to a designated “assistant” application for analysis and processing. This system is used by the Google Search app feature “Google Now on Tap”, which allows users to perform searches within the context of information currently being displayed on-screen. By holding the “Home” button or using a voice command, on-screen cards are generated which display information, suggestions, and actions related to the content.[15] “Direct Share” allows Share menus to display recently used combinations of contacts and an associated app as direct targets.[15]

A newly inserted SD card or other secondary storage media can be designated as either “portable” or “internal” storage. “Portable” maintains the default behavior of previous Android versions, treating the media as a secondary storage device for storage of user files, and the storage media can be removed or replaced without repercussions, but is subject to access restrictions by apps.[15][16] When designated as “Internal” storage, the storage media is reformatted with an encrypted ext4 file system, and is “adopted” by the operating system as the primary storage partition. Existing data (including applications and “private” data folders) are migrated to the external storage, and normal operation of the device becomes dependent on the presence of the media. Apps and operating system functions will not function properly if the adopted storage device is removed. If the user loses access to the storage media, the adopted storage can be “forgotten”, which makes the data permanently inaccessible.[15] Samsung and LG have, however, removed the ability to use an SD card as “internal” storage on their Galaxy S7 and G5 devices, with Samsung arguing that the feature could result in unexpected losses of data, and prevents users from being able to transfer data using the card.[17]

Platform

Android Marshmallow introduces a redesigned application permission model: there are now only eight permission categories, and applications are no longer automatically granted all of their specified permissions at installation time.[18] An opt-in system is now used, in which users are prompted to grant or deny individual permissions (such as the ability to access the camera or microphone) to an application when they are needed for the first time. Applications remember the grants, which can be revoked by the user at any time.[19] The new permission model is used only by applications compiled for Marshmallow using its software development kit (SDK), and older apps will continue to use the previous all-or-nothing permission model. Permissions can still be revoked for those apps, though this might prevent them from working properly, and a warning is displayed to that effect.[5][20]

Marshmallow introduces new power management schemes known as “Doze” and “App Standby”; when running on battery power, a device will enter a low-power state if it is inactive and not being physically handled. In this state, network connectivity and background processing is restricted, and only “high-priority” notifications are processed.[15] Additionally, network access by apps is deferred if the user has not recently interacted with the app.[21] Apps may request a permission to exempt themselves from these policies, but will be rejected from Google Play Store as a violation of its “Dangerous Products” policy if their core functionality is not “adversely affected” by them.[21][22]

Android Marshmallow provides native support for fingerprint recognition on supported devices via a standard API, allowing third-party applications to implement fingerprint-based authentication. Fingerprints can be used for unlocking devices and authenticating Play Store and Android Pay purchases. Android Marshmallow supports USB Type-C, including the ability to instruct devices to charge another device over USB. Marshmallow also introduces “verified links” that can be configured to open directly in their specified application without further user prompts.[5][20] User data for apps targeting Marshmallow can be automatically backed up to Google Drive over Wi-Fi. Each application receives up to 25 MB of storage, which is separate from a user’s Google Drive storage allotment.[15]

As of Marshmallow, the Android Compatibility Definition Document contains new security mandates for devices, dictating that those that are capable of accessing encrypted data without affecting performance must enable Secure boot and device encryption by default.[23] These conditions comprise part of a specification that must be met in order to be certified for the operating system,[23] and be able to license Google Mobile Services software.[24] The requirement for mandatory device encryption was originally intended to take effect on Lollipop, but was delayed due to performance issues.[23]