Librería Portfolio Librería Portfolio

Búsqueda avanzada


0 productos

en total 0,00 €

Año de edición:
66,95 € -10,0% 60,26 €



Jump in and build working Android apps with the help of more than 230 tested recipes. The second edition of this acclaimed cookbook includes recipes for working with user interfaces, multitouch gestures, location awareness, web services, and specific device features such as the phone, camera, and accelerometer. You also get useful info on packaging your app for the Google Play Market.

Ideal for developers familiar with Java, Android basics, and the Java SE API, this book features recipes contributed by more than three dozen Android developers. Each recipe provides a clear solution and sample code you can use in your project right away. Among numerous topics, this cookbook helps you:

Get started with the tooling you need for developing and testing Android apps
Create layouts with Android's UI controls, graphical services, and pop-up mechanisms
Build location-aware services on Google Maps and OpenStreetMap
Control aspects of Android's music, video, and other multimedia capabilities
Work with accelerometers and other Android sensors
Use various gaming and animation frameworks
Store and retrieve persistent data in files and embedded databases
Access RESTful web services with JSON and other formats
Test and troubleshoot individual components and your entire application

Chapter 1Getting 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. Installing Platform Editions and Keeping the SDK Updated
1.10. Creating a "Hello, Worldö App Using Android Studio
1.11. Converting an Eclipse ADT Project to Android Studio
1.12. Preserving History While Converting from Eclipse to Android Studio
1.13. Building an Android Application with both Eclipse and Android Studio
1.14. Setting Up Eclipse with AndMore (Replacing ADT)
1.15. Creating a "Hello, Worldö Application Using Eclipse
1.16. Installing the Eclipse Marketplace Client in Your Eclipse
1.17. Upgrading a Project from Eclipse ADT to Eclipse AndMore
1.18. Controlling Emulators/Devices Using Command-Line ADB
1.19. Sharing Java Classes from Another Eclipse Project
1.20. Referencing Libraries to Implement External Functionality
1.21. Using New Features on Old Devices via the Compatibility Libraries
1.22. Using SDK Samples to Help Avoid Head Scratching
1.23. Taking a Screenshot/Video from the Emulator/Android Device
1.24. Program: A Simple CountDownTimer Example
1.25. Program: Tipster, a Tip Calculator for the Android OS
Chapter 2Designing a Successful Application
2.1. Exception Handling
2.2. Requesting Android Permissions at Runtime
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 Numbers
2.11. Formatting with Correct Plurals
2.12. Formatting the Time and Date for Display
2.13. Simplifying Date/Time Calculations with the Java 8 java.time API
2.14. Controlling Input with KeyListeners
2.15. Backing Up Android Application Data
2.16. Using Hints Instead of Tool Tips
Chapter 3Application Testing
3.1. Setting Up an Android Virtual Device (AVD) for App Testing
3.2. Testing on a Wide 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
Chapter 4Inter-/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 Subactivity 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
Chapter 5Graphics
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
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 from
5.10. Using Paint.NET to Create Launcher Icons from
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
Chapter 6Graphical User Interface
6.1. Understanding and Following User Interface Guidelines
6.2. Looking Good with Material Design
6.3. Choosing a Layout Manager (a.k.a. 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 a FloatingActionButton
6.11. Wiring Up an Event Listener in Many 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 a 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. Creating a Loading Screen that Will Appear Between Two Activities
6.28. Adding a Border with Rounded Corners to a Layout
6.29. Detecting Gestures in Android
6.30. Creating a Simple App Widget
Chapter 7GUI Alerts: Menus, Dialogs, Toasts, Snackbars, and Notifications
7.1. Alerting the User with Toast and Snackbar
7.2. Customizing the Appearance of a Toast
7.3. Creating and Displaying a Menu
7.4. Handling Choice Selection in a Menu
7.5. Creating a Submenu
7.6. Creating a Pop-up/Alert Dialog
7.7. Using a Timepicker Widget
7.8. Creating an iPhone-like WheelPicker for Selection
7.9. Creating a Tabbed Dialog
7.10. Creating a ProgressDialog
7.11. Creating a Custom Dialog with Buttons, Images, and Text
7.12. Creating a Reusable "About Boxö Class
7.13. Creating a Notification in the Status Bar
Chapter 8Other GUI Elements: Lists and Views
8.1. Building List-Based Applications with RecyclerView
8.2. Building List-Based Applications with ListView
8.3. Creating a "No Dataö View for ListViews
8.4. Creating an Advanced ListView with Images and Text
8.5. Using Section Headers in ListViews
8.6. Keeping the ListView with the User's Focus
8.7. Writing a Custom List Adapter
8.8. Using a SearchView to Search Through Data in a ListView
8.9. Handling Orientation Changes: From ListView Data Values to Landscape Charting
Chapter 9Multimedia
9.1. Playing a YouTube Video
9.2. Capturing Video Using MediaRecorder
9.3. Using Android's Face Detection Capability
9.4. Playing Audio from a File
9.5. Playing Audio Without Interaction
9.6. Using Speech to Text
9.7. Making the Device Speak with Text-to-Speech
Chapter 10Data Persistence
10.1. Reading and Writing Files in Internal and External Storage
10.2. Getting File and Directory Information
10.3. Reading a File Shipped with the App Rather than in the Filesystem
10.4. Getting Space Information About the SD Card
10.5. Providing a Preference Activity
10.6. Checking the Consistency of Default Shared Preferences
10.7. Using a SQLite Database in an Android Application
10.8. Performing Advanced Text Searches on a SQLite Database
10.9. Working with Dates in SQLite
10.10. Exposing Non-SQL Data as a SQL Cursor
10.11. Displaying Data with a CursorLoader
10.12. Parsing JSON Using JSONObject
10.13. Parsing an XML Document Using the DOM API
10.14. Storing and Retrieving Data via a Content Provider
10.15. Writing a Content Provider
10.16. Adding a Contact Through the Contacts Content Provider
10.17. Reading Contact Data Using a Content Provider
10.18. Implementing Drag and Drop
10.19. Sharing Files via a FileProvider
10.20. Backing Up Your SQLite Data to the Cloud with a SyncAdapter
10.21. Storing Data in the Cloud with Google Firebase
Chapter 11Telephone Applications
11.1. Doing Something When the Phone Rings
11.2. Processing Outgoing Phone Calls
11.3. Dialing the Phone
11.4. Sending Single-part or Multipart SMS Messages
11.5. Receiving an SMS Message
11.6. Using Emulator Controls to Send SMS Messages to the Emulator
11.7. Using Android's TelephonyManager to Obtain Device Information
Chapter 12Networked Applications
12.1. Consuming a RESTful Web Service Using a URLConnection
12.2. Consuming a RESTful Web Service with Volley
12.3. Notifying Your App with Google Cloud Messaging "Push Messagingö
12.4. Extracting Information from Unstructured Text Using Regular Expressions
12.5. Parsing RSS/Atom Feeds Using ROME
12.6. Using MD5 to Digest Clear Text
12.7. Converting Text into Hyperlinks
12.8. Accessing a Web Page Using a WebView
12.9. Customizing a WebView
12.10. Writing an Inter-Process Communication Service
Chapter 13Gaming and Animation
13.1. Building an Android Game Using flixel-gdx
13.2. Building an Android Game Using AndEngine
13.3. Processing Timed Keyboard Input
Chapter 14Social Networking
14.1. Authenticating Users with OAUTH2
14.2. Integrating Social Networking Using HTTP
14.3. Loading a User's Twitter Timeline Using HTML or JSON
Chapter 15Location and Map Applications
15.1. Getting Location Information
15.2. Accessing GPS Information in Your Application
15.3. Mocking GPS Coordinates on a Device
15.4. Using Geocoding and Reverse Geocoding
15.5. Getting Ready for Google Maps API V2 Development
15.6. Using the Google Maps API V2
15.7. Displaying Map Data Using OpenStreetMap
15.8. Creating Overlays in OpenStreetMap Maps
15.9. Using a Scale on an OpenStreetMap Map
15.10. Handling Touch Events on an OpenStreetMap Overlay
15.11. Getting Location Updates with OpenStreetMap Maps
Chapter 16Accelerometer
16.1. Checking for the Presence or Absence of a Sensor
16.2. Using the Accelerometer to Detect Shaking
16.3. Checking Whether a Device Is Facing Up or Down
16.4. Reading the Temperature Sensor
Chapter 17Bluetooth
17.1. Enabling Bluetooth and Making the Device Discoverable
17.2. Connecting to a Bluetooth-Enabled Device
17.3. Accepting Connections from a Bluetooth Device
17.4. Implementing Bluetooth Device Discovery
Chapter 18System and Device Control
18.1. Accessing Phone Network/Connectivity Information
18.2. Obtaining Information from the Manifest File
18.3. Changing Incoming Call Notification to Silent, Vibrate, or Normal
18.4. Copying Text and Getting Text from the Clipboard
18.5. Using LED-Based Notifications
18.6. Making the Device Vibrate
18.7. Determining Whether a Given Application Is Running
Chapter 19All the World's Not Java: Other Programming Languages and Frameworks
19.1. Learning About Cross-Platform Solutions
19.2. Running Shell Commands from Your Application
19.3. Running Native C/C++ Code with JNI on the NDK
19.4. Getting Started with SL4A, the Scripting Layer for Android
19.5. Creating Alerts in SL4A
19.6. Fetching Your Google Documents and Displaying Them in a ListView Using SL4A
19.7. Sharing SL4A Scripts in QR Codes
19.8. Using Native Handset Functionality from a WebView via JavaScript
19.9. Building a Cross-Platform App with Xamarin
19.10. Creating a Cross-Platform App Using PhoneGap/Cordova
Chapter 20All the World's Not English: Strings and Internationalization
20.1. Internationalizing Application Text
20.2. Finding and Translating Strings
20.3. Handling the Nuances of strings.xml
Chapter 21Packaging, Deploying, and Distributing/Selling Your App
21.1. Creating a Signing Certificate and Using It to Sign Your Application
21.2. Distributing Your Application via the Google Play Store
21.3. Distributing Your Application via Other App Stores
21.4. Monetizing Your App with AdMob
21.5. Obfuscating and Optimizing with ProGuard
21.6. Hosting Your App on Your Own Server
21.7. Creating a "Self-Updatingö App
21.8. Providing a Link to Other Published Apps in the Google Play Store