Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Preface
Conventions Used in This Book
Getting and Using the Code Examples
Safari® Books Online
How to Contact Us
Acknowledgments
Content Updates
1. Getting Started
1.1. Understanding the Android Application Architecture
1.2. Understanding the Android Activity Life Cycle
1.3. Learning About Android Releases
1.4. Learning the Java Language
1.5. Creating a “Hello, World” Application from the Command Line
1.6. Creating a “Hello, World” App with Apache Maven
1.7. Choosing an IDE for Android Development
1.8. Setting Up Android Studio
1.9. Creating a “Hello, World” App using Android Studio
1.10. Converting an Eclipse ADT Project to Android Studio
1.11. Preserving History while Converting from Eclipse to Android Studio
1.12. Setting Up Eclipse with AndMore (Replacing ADT)
1.13. Creating a “Hello, World” Application using Eclipse
1.14. Installing the Eclipse Marketplace Client in your Eclipse
1.15. Upgrading a Project from Eclipse ADT to Eclipse AndMore
1.16. Using Java 8 Features in Android Studio 2
1.17. Controlling Emulators/Devices Using Command-Line ADB
1.18. Sharing Java Classes from Another Eclipse Project
1.19. Referencing Libraries to Implement External Functionality
1.20. Using New Features on Old Devices via the Compatibility Libraries
1.21. Using SDK Samples to Help Avoid Head Scratching
1.22. Taking a Screenshot/Video from the Emulator/Android Device
1.23. Program: A Simple CountDownTimer Example
1.24. Program: Tipster, a Tip Calculator for the Android OS
2. Designing a Successful Application
2.1. Exception Handling
2.2. Requesting Android Permissions at Run Time
2.3. Accessing Android’s Application Object as a “Singleton”
2.4. Keeping Data When the User Rotates the Device
2.5. Monitoring the Battery Level of an Android Device
2.6. Creating Splash Screens in Android
2.7. Designing a Conference/Camp/Hackathon/Institution App
2.8. Using Google Analytics in an Android Application
2.9. Setting First-Run Preferences
2.10. Formatting the Time and Date for Display
2.11. Simplifying Date/Time Calculations with the Java 8 java.time API
2.12. Controlling Input with KeyListeners
2.13. Backing Up Android Application Data
2.14. Using Hints Instead of Tool Tips
3. Application Testing
3.1. Setting Up an Android Virtual Device (AVD) for App Testing
3.2. Testing on a Huge Range of Devices with Cloud-based Testing
3.3. Testing with Eclipse and JUnit
3.4. Testing with Android Studio and JUnit
3.5. Testing with Robolectric and JUnit 4
3.6. Testing with ATSL, Espresso and JUnit 4
3.7. Troubleshooting Application Crashes
3.8. Debugging Using Log.d and LogCat
3.9. Getting Bug Reports Automatically with Crash Reporting
3.10. Using a Local Runtime Application Log for Analysis of Field Errors or Situations
3.11. Reproducing Activity Life-Cycle Scenarios for Testing
3.12. Keeping Your App Snappy with StrictMode
3.13. Static Code Testing with Android Lint
3.14. Dynamic Testing with the Monkey Program
3.15. Sending Text Messages and Placing Calls Between AVDs
4. Inter-/Intra-Process Communication
4.1. Opening a Web Page, Phone Number, or Anything Else with an Intent
4.2. Emailing Text from a View
4.3. Sending an Email with Attachments
4.4. Pushing String Values Using Intent.putExtra()
4.5. Retrieving Data from a Sub-Activity Back to Your Main Activity
4.6. Keeping a Background Service Running While Other Apps Are on Display
4.7. Sending/Receiving a Broadcast Message
4.8. Starting a Service After Device Reboot
4.9. Creating a Responsive Application Using Threads
4.10. Using AsyncTask to Do Background Processing
4.11. Sending Messages Between Threads Using an Activity Thread Queue and Handler
4.12. Creating an Android Epoch HTML/JavaScript Calendar
5. Graphics
5.1. Using a Custom Font
5.2. Drawing a Spinning Cube with OpenGL ES
5.3. Adding Controls to the OpenGL Spinning Cube
5.4. Freehand Drawing Smooth Curves
5.5. Taking a Picture Using an Intent
5.6. Taking a Picture Using android.media.Camera
5.7. Scanning a Barcode or QR Code with the Google ZXing Barcode Scanner
5.8. Using AndroidPlot to Display Charts and Graphs
5.9. Using Inkscape to Create an Android Launcher Icon
5.10. Creating Easy Launcher Icons from OpenClipArt.org Using Paint.NET
5.11. Using Nine Patch Files
5.12. Creating HTML5 Charts with Android RGraph
5.13. Adding a Simple Raster Animation
5.14. Using Pinch to Zoom
6. Graphical User Interface
6.1. Understanding and Following User Interface Guidelines
6.2. Looking Good with Material Design
6.3. Choosing a Layout Manager (ViewGroup) and Arranging Components
6.4. Handling Configuration Changes by Decoupling the View from the Model
6.5. Controlling the Action Bar
6.6. Adding a Share Action to your action bar
6.7. Building Modern UIs with the Fragment API
6.8. Creating a Button and Its Click Event Listener
6.9. Enhancing UI Design Using Image Buttons
6.10. Using FloatingActionButton
6.11. Wiring Up an Event Listener in Five Different Ways
6.12. Using CheckBoxes and RadioButtons
6.13. Using Card Widgets
6.14. Offering a Drop-Down Chooser via the Spinner Class
6.15. Handling Long-Press/Long-Click Events
6.16. Displaying Text Fields with TextView and EditText
6.17. Constraining EditText Values with Attributes and the TextWatcher Interface
6.18. Implementing AutoCompleteTextView
6.19. Feeding AutoCompleteTextView Using an SQLite Database Query
6.20. Turning Edit Fields into Password Fields
6.21. Changing the Enter Key to “Next” on the Soft Keyboard
6.22. Processing Key-Press Events in an Activity
6.23. Let Them See Stars: Using RatingBar
6.24. Making a View Shake
6.25. Providing Haptic Feedback
6.26. Navigating Different Activities Within a TabView
6.27. Formatting Numbers
6.28. Formatting with Correct Plurals
6.29. Creating a Loading Screen That Will Appear Between Two Activities
6.30. Adding a Border with Rounded Corners to a Layout
6.31. Detecting Gestures in Android
6.32. Creating a Simple App Widget
← Prev
Back
Next →
← Prev
Back
Next →