Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Mastering Android Application Development
Mastering Android Application Development

Mastering Android Application Development: Learn how to do more with the Android SDK with this advanced Android Application guide which shows you how to make even better Android apps that users will love

eBook
$9.99 $39.99
Paperback
$48.99
Subscription
Free Trial
Renews at $19.99p/m

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Table of content icon View table of contents Preview book icon Preview Book

Mastering Android Application Development

Chapter 2. Designing our App

In this chapter, we will think of an idea for an app and transform that idea into a real app, create a basic structure to be displayed on the screen, and choose an appropriate navigation pattern to move between them.

After taking a look at the most commonly used navigation pattern, we will proceed with implementing the tabs pattern composed by fragment and ViewPager.

During this, we will do a review of our knowledge of fragments to be able to explain the advanced concepts. We will also discuss the importance of FragmentManager and the fragments back-stack.

To finish, we will add some good-looking animations to our screen transitions. Therefore, we will cover the following topics in this chapter:

  • Selecting an app navigation pattern
  • Mastering fragments
  • Implementing tabs and ViewPager
  • Animated transitions between screens

Selecting an app-navigation pattern

Let's imagine that one day you wake up feeling inspired; you have an idea for an app that you believe can become more popular than WhatsApp. Without losing time, you would want to turn this app idea into reality! This is why it's important for you to learn how to design an app and choose the most appropriate navigation pattern. Not to sound uninspiring, but you'll find that 99 percent of your ideas will already be on Google Play Store. It's simply a fact that there are hundreds of thousands of apps available, and the number is always increasing! So, you can either decide to improve upon the already existing ones or keep brainstorming until you have something original.

In order to make the app a reality, the first step is to visualize the app in your mind; for this, we need to identify the basic components. We need to simplify the idea on screen, and we need to move between screens.

Bear in mind that you are creating this app for Android...

Fragments

In this section, we are going to review briefly the key concepts of fragments to explain advanced features and components, such as Fragment Manager and the fragments back stack.

In our example, we will create an activity called MainActivity and four fragments: ListFragment, ContactFragment, SettingsFragment, and DetailsFragment. For this, you can create a fragments package and double-click on the package to go to New | Fragment | Blank Fragment. Take a look at the following dialog box:

Fragments

For now, you can create them without the fragment factory methods and the interface callbacks. We will cover these later in the chapter.

Our project so far should look like this in the Project view:

Fragments

Understanding the importance of fragments

A fragment represents a behavior or a portion of the user interface in an activity. You can combine multiple fragments in a single activity to build a multipane UI and reuse a fragment in multiple activities. You can think of a fragment as a modular section of an...

ViewPager

Continuing with our example, we have two ways of navigating between fragments on MainActivity: either by tapping on the tabs or by swiping between the fragments. To achieve this, we will use ViewPager, including the sliding tabs inside it, which is a very elegant solution with minimal code and includes synchronization between swipe and tabs.

ViewPager can be used to slide any kind of view. We could create a gallery of images with ViewPager; it is very common to see tutorials in the first run of some apps where you can slide the screen with instructions on how the app works, and this is achieved with ViewPager. To add ViewPager to MainActivity, we can simply copy and paste the following code:

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.view.ViewPager
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="match_parent...

Transitions

Small details such as creating our own animations from the screen transitions will polish our app and really make it look more professional.

Our example is perfect to talk about transitions as we have two types of screen transitions:

  • The first one is a transition between Activities, from SplashActivity to MainActivity
  • The second one (not implemented yet) is a transition between fragments, where ListFragment is replaced with DetailsFragment

For the transitions between activities, we need to call overridePendingTransition just before starting the new activity. The method receives two animations as parameters, and these animations can be in an XML file created by us or be chosen from the already created animations in Android. Run the following command:

overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);

In our example, we don't allow back navigation to SplashActivity; however, if we were in a transition between activities where we wanted to have the same...

Summary

At the end of this chapter, you should have an understanding of the basic navigation patterns and be able to translate the idea of an app in your mind into the real structure of an Android app. Fragments are a key concept in Android development, and we have spent enough time in this chapter mastering them with a review of Fragment Manager and the fragments back stack and by learning how to face common problems such as communication between them. We considered a working example of ViewPager with PagerTabStrip showing the tile of the pages as tabs, which you now know how to customize if needed. We have a skeleton of an app; this project can be saved at this stage and used as a template for your future developments. We are ready to continue evolving our app.

In the next chapter, we will see how to create and access the content that will populate our fragments and ViewPager to bring our app to life.

Left arrow icon Right arrow icon

Key benefits

  • 1. Learn how to design and build better Android apps to reach new users
  • 2. Explore the latest features and tools in the Android SDK that will help you become a better developer
  • 3. From concurrency to testing – through to adding adverts and billing, this book ties together every element to help you deliver a high-quality Android application on Google Play

Description

There are millions of Android apps out there for people to download – how do you make sure yours has the edge? It’s not always about innovation and ideas – the most successful apps are those that are able to satisfy customer demands – they’re the ones that look the best, the fastest, and the easiest and most intuitive to use. This book shows you how to create Android applications that do precisely that – it has been designed help you consider and answer those questions throughout the development process, so you can create applications that stand out against the crowd. Learn how to create exemplary UIs that contribute to a satisfying user experience through the lens of Material Design, and explore how to harness the range of features within the Android SDK to help you. Dive deeper into complex programming concepts and discover how to leverage concurrency and navigate memory management and image handling. You’ll also find further guidance on testing and debugging so you can guarantee that your application is reliable and robust for users. Beyond this you’ll find out how to extend your app and add greater functionality, including notifications, location services, adverts and app billing (essential if you want to properly monetize your creation!). To make sure you have confidence at every stage in the process, the book also shows you how to release your app to the Play store – to make sure your maximising your efforts to create a popular Android application!

Who is this book for?

Mastering Android Application Development is intended for Android developers that want insight on and guidance through the steps they need to take to give their creations the edge in a competitive market.

What you will learn

  • • Create an Android project with Android M features
  • • Design the basic navigation for our app using the UI components
  • • Set up a cloud-based platform and store data on it
  • • Implement programming patterns such as Singleton and Observer to maintain your project code for future use
  • • Display lists and grids using Android RecyclerView
  • • Implement user interface components and make your app look professional
  • • Handle, download, and store images along with memory management
  • • Create the database and content providers to perform read-write operations
  • • Add notifications to the app and analytics to track the user's usage
  • • Show a Google map view on your app
  • • Configure minify to obfuscate the code
  • • Add adverts and create products for purchase in your app
Estimated delivery fee Deliver to United States

Economy delivery 10 - 13 business days

Free $6.95

Premium delivery 6 - 9 business days

$21.95
(Includes tracking information)

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Oct 30, 2015
Length: 298 pages
Edition : 1st
Language : English
ISBN-13 : 9781785884221
Vendor :
Google
Category :
Languages :
Tools :

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Estimated delivery fee Deliver to United States

Economy delivery 10 - 13 business days

Free $6.95

Premium delivery 6 - 9 business days

$21.95
(Includes tracking information)

Product Details

Publication date : Oct 30, 2015
Length: 298 pages
Edition : 1st
Language : English
ISBN-13 : 9781785884221
Vendor :
Google
Category :
Languages :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total $ 147.97
Android Programming for Beginners
$54.99
Android Studio Cookbook
$43.99
Mastering Android Application Development
$48.99
Total $ 147.97 Stars icon
Banner background image

Table of Contents

13 Chapters
1. Getting Started Chevron down icon Chevron up icon
2. Designing our App Chevron down icon Chevron up icon
3. Creating and Accessing Content from the Cloud Chevron down icon Chevron up icon
4. Concurrency and Software Design Patterns Chevron down icon Chevron up icon
5. Lists and Grids Chevron down icon Chevron up icon
6. CardView and Material Design Chevron down icon Chevron up icon
7. Image Handling and Memory Management Chevron down icon Chevron up icon
8. Databases and Loaders Chevron down icon Chevron up icon
9. Push Notifications and Analytics Chevron down icon Chevron up icon
10. Location Services Chevron down icon Chevron up icon
11. Debugging and Testing on Android Chevron down icon Chevron up icon
12. Monetization, the Build Process, and Release Chevron down icon Chevron up icon
Index Chevron down icon Chevron up icon

Customer reviews

Rating distribution
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3
(1 Ratings)
5 star 0%
4 star 0%
3 star 100%
2 star 0%
1 star 0%
G. Bohrn Sep 25, 2016
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3
This is overall a decent book. the problem I have with it is it relies upon Parse which no longer exists online so the cloud based connection code just will not work. It would be nice if the author fixed this with an addendum connecting to a different cloud server or setting up Parse locally. Otherwise this would work well
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is the delivery time and cost of print book? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela
What is custom duty/charge? Chevron down icon Chevron up icon

Customs duty are charges levied on goods when they cross international borders. It is a tax that is imposed on imported goods. These duties are charged by special authorities and bodies created by local governments and are meant to protect local industries, economies, and businesses.

Do I have to pay customs charges for the print book order? Chevron down icon Chevron up icon

The orders shipped to the countries that are listed under EU27 will not bear custom charges. They are paid by Packt as part of the order.

List of EU27 countries: www.gov.uk/eu-eea:

A custom duty or localized taxes may be applicable on the shipment and would be charged by the recipient country outside of the EU27 which should be paid by the customer and these duties are not included in the shipping charges been charged on the order.

How do I know my custom duty charges? Chevron down icon Chevron up icon

The amount of duty payable varies greatly depending on the imported goods, the country of origin and several other factors like the total invoice amount or dimensions like weight, and other such criteria applicable in your country.

For example:

  • If you live in Mexico, and the declared value of your ordered items is over $ 50, for you to receive a package, you will have to pay additional import tax of 19% which will be $ 9.50 to the courier service.
  • Whereas if you live in Turkey, and the declared value of your ordered items is over € 22, for you to receive a package, you will have to pay additional import tax of 18% which will be € 3.96 to the courier service.
How can I cancel my order? Chevron down icon Chevron up icon

Cancellation Policy for Published Printed Books:

You can cancel any order within 1 hour of placing the order. Simply contact customercare@packt.com with your order details or payment transaction id. If your order has already started the shipment process, we will do our best to stop it. However, if it is already on the way to you then when you receive it, you can contact us at customercare@packt.com using the returns and refund process.

Please understand that Packt Publishing cannot provide refunds or cancel any order except for the cases described in our Return Policy (i.e. Packt Publishing agrees to replace your printed book because it arrives damaged or material defect in book), Packt Publishing will not accept returns.

What is your returns and refunds policy? Chevron down icon Chevron up icon

Return Policy:

We want you to be happy with your purchase from Packtpub.com. We will not hassle you with returning print books to us. If the print book you receive from us is incorrect, damaged, doesn't work or is unacceptably late, please contact Customer Relations Team on customercare@packt.com with the order number and issue details as explained below:

  1. If you ordered (eBook, Video or Print Book) incorrectly or accidentally, please contact Customer Relations Team on customercare@packt.com within one hour of placing the order and we will replace/refund you the item cost.
  2. Sadly, if your eBook or Video file is faulty or a fault occurs during the eBook or Video being made available to you, i.e. during download then you should contact Customer Relations Team within 14 days of purchase on customercare@packt.com who will be able to resolve this issue for you.
  3. You will have a choice of replacement or refund of the problem items.(damaged, defective or incorrect)
  4. Once Customer Care Team confirms that you will be refunded, you should receive the refund within 10 to 12 working days.
  5. If you are only requesting a refund of one book from a multiple order, then we will refund you the appropriate single item.
  6. Where the items were shipped under a free shipping offer, there will be no shipping costs to refund.

On the off chance your printed book arrives damaged, with book material defect, contact our Customer Relation Team on customercare@packt.com within 14 days of receipt of the book with appropriate evidence of damage and we will work with you to secure a replacement copy, if necessary. Please note that each printed book you order from us is individually made by Packt's professional book-printing partner which is on a print-on-demand basis.

What tax is charged? Chevron down icon Chevron up icon

Currently, no tax is charged on the purchase of any print book (subject to change based on the laws and regulations). A localized VAT fee is charged only to our European and UK customers on eBooks, Video and subscriptions that they buy. GST is charged to Indian customers for eBooks and video purchases.

What payment methods can I use? Chevron down icon Chevron up icon

You can pay with the following card types:

  1. Visa Debit
  2. Visa Credit
  3. MasterCard
  4. PayPal
What is the delivery time and cost of print books? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela