Changes

Jump to: navigation, search

Android Studio Development Essentials - Android 6 Edition

33,929 bytes added, 15:26, 18 November 2016
Table of Contents
<googlehtmlet>BUY_ANDROID_STUDIO6androidstudio_a6</googlehtmlet>
<table>
<tr>
<td>
= Table of Contents =
#* [[Setting up an Android Studio Development Environment - Android 6|Linux]]
#* [[Setting up an Android Studio Development Environment - Android 6|Mac OS X]]
#* [[Setting up an Android Studio Development Environment - Android 6|Updating the Android Studio and the SDK]]<br><br><htmlet>ezoictoc1</htmlet>
# [[Creating an Example Android 6 App in Android Studio]]
#* [[Creating an Example Android 6 App in Android Studio|Creating a New Android Project]]
#* [[Creating an Android 6 User Interface in Java Code|Adding Layout Parameters and Rules]]
#* [[Creating an Android 6 User Interface in Java Code|Using View IDs]]
#* [[Creating an Android 6 User Interface in Java Code|Converting Density Independent Pixels (dp) to Pixels (px)]]<br><br><htmlet>ezoictoc2</htmlet>
# [[Using the Android 6 GridLayout Manager in Android Studio Designer]]
#* [[Using the Android 6 GridLayout Manager in Android Studio Designer|Introducing the Android GridLayout and Space Classes]]
#* [[Implementing Android 6 Scene Transitions – A Tutorial|Adding the Transition File]]
#* [[Implementing Android 6 Scene Transitions – A Tutorial|Loading and Using the Transition Set]]
#* [[Implementing Android 6 Scene Transitions – A Tutorial|Configuring Additional Transitions]]<br><br><htmlet>ezoictoc3</htmlet>
# [[Working with the Floating Action Button and Snackbar]]
#* [[Working with the Floating Action Button and Snackbar|The Material Design]]
#* [[Working with the Floating Action Button and Snackbar|Adding an Action to the Snackbar]]<br><br>
# [[Creating an Android Tabbed Interface using the TabLayout Component]]
#* [[Creating an Android Tabbed Interface using the TabLayout Component|An Introduction to the ViewPager]]
#* [[Creating an Android Tabbed Interface using the TabLayout Component|An Overview of the TabLayout Component]]
#* [[Creating an Android Tabbed Interface using the TabLayout Component|Creating the TabLayoutDemo Project]]
#* [[Creating an Android Tabbed Interface using the TabLayout Component|Creating the First Fragment]]
#* [[Creating an Android Tabbed Interface using the TabLayout Component|Duplicating the Fragments]]
#* [[Creating an Android Tabbed Interface using the TabLayout Component|Adding the TabLayout and ViewPager]]
#* [[Creating an Android Tabbed Interface using the TabLayout Component|Creating the Pager Adapter]]
#* [[Creating an Android Tabbed Interface using the TabLayout Component|Performing the Initialization Tasks]]
#* [[Creating an Android Tabbed Interface using the TabLayout Component|Testing the Application]]
#* [[Creating an Android Tabbed Interface using the TabLayout Component|Customizing the TabLayout]]
#* [[Creating an Android Tabbed Interface using the TabLayout Component|Displaying Icon Tab Items]]<br><br>
# [[Working with the Android RecyclerView and CardView Widgets]]
#* [[Working with the Android RecyclerView and CardView Widgets|An Overview of the RecyclerView]]
#* [[Working with the Android RecyclerView and CardView Widgets|An Overview of the CardView]]
#* [[Working with the Android RecyclerView and CardView Widgets|Adding the Libraries to the Project]]<br><br>
# [[An Android RecyclerView and CardView Tutorial]]
#* [[An Android RecyclerView and CardView Tutorial|Creating the CardDemo Project]]
#* [[An Android RecyclerView and CardView Tutorial|Removing the Floating Action Button]]
#* [[An Android RecyclerView and CardView Tutorial|Adding the RecyclerView and CardView Libraries]]
#* [[An Android RecyclerView and CardView Tutorial|Designing the CardView Layout]]
#* [[An Android RecyclerView and CardView Tutorial|Adding the RecyclerView]]
#* [[An Android RecyclerView and CardView Tutorial|Creating the RecyclerView Adapter]]
#* [[An Android RecyclerView and CardView Tutorial|Adding the Image Files]]
#* [[An Android RecyclerView and CardView Tutorial|Initializing the RecyclerView Component]]
#* [[An Android RecyclerView and CardView Tutorial|Testing the Application]]
#* [[An Android RecyclerView and CardView Tutorial|Responding to Card Selections]]<br><br>
# [[Working with the Android AppBar and Collapsing Toolbar Layouts]]
#* [[Working with the Android AppBar and Collapsing Toolbar Layouts|The Anatomy of an AppBar]]
#* [[Working with the Android AppBar and Collapsing Toolbar Layouts|The Example Project]]
#* [[Working with the Android AppBar and Collapsing Toolbar Layouts|Coordinating the RecyclerView and Toolbar]]
#* [[Working with the Android AppBar and Collapsing Toolbar Layouts|Introducing the Collapsing Toolbar Layout]]
#* [[Working with the Android AppBar and Collapsing Toolbar Layouts|Changing the Title and Scrim Color]]<br><br>
# [[Implementing an Android Navigation Drawer]]
#* [[Implementing an Android Navigation Drawer|An Overview of the Navigation Drawer]]
#* [[Implementing an Android Navigation Drawer|Opening and Closing the Drawer]]
#* [[Implementing an Android Navigation Drawer|Responding to Drawer Item Selections]]
#* [[Implementing an Android Navigation Drawer|Using the Navigation Drawer Activity Template]]
#* [[Implementing an Android Navigation Drawer|Creating the Navigation Drawer Template Project]]
#* [[Implementing an Android Navigation Drawer|The Template Layout Resource Files]]
#* [[Implementing an Android Navigation Drawer|The Header Coloring Resource File]]
#* [[Implementing an Android Navigation Drawer|The Template Menu Resource File]]
#* [[Implementing an Android Navigation Drawer|The Template Code]]
#* [[Implementing an Android Navigation Drawer|Running the App]]<br><br>
# [[An Android Studio Master/Detail Flow Tutorial - Android 6|An Android Studio Master/Detail Flow Tutorial]]
#* [[An Android Studio Master/Detail Flow Tutorial - Android 6|The Master/Detail Flow]]
#* [[An Android Studio Master/Detail Flow Tutorial - Android 6|Creating a Master/Detail Flow Activity]]
#* [[An Android Studio Master/Detail Flow Tutorial - Android 6|The Anatomy of the Master/Detail Flow Template]]
#* [[An Android Studio Master/Detail Flow Tutorial - Android 6|Modifying the Master/Detail Flow Template]]
#* [[An Android Studio Master/Detail Flow Tutorial - Android 6|Changing the Content Model]]
#* [[An Android Studio Master/Detail Flow Tutorial - Android 6|Changing the Detail Pane]]
#* [[An Android Studio Master/Detail Flow Tutorial - Android 6|Modifying the WebsiteDetailFragment Class]]
#* [[An Android Studio Master/Detail Flow Tutorial - Android 6|Modifying the WebsiteListActivity Class]]
#* [[An Android Studio Master/Detail Flow Tutorial - Android 6|Adding Manifest Permissions]]
#* [[An Android Studio Master/Detail Flow Tutorial - Android 6|Running the Application]]<br><br>
# [[An Overview of Android 6 Intents]]
#* [[An Overview of Android 6 Intents|An Overview of Intents]]
#* [[An Overview of Android 6 Intents|Explicit Intents]]
#* [[An Overview of Android 6 Intents|Returning Data from an Activity]]
#* [[An Overview of Android 6 Intents|Implicit Intents]]
#* [[An Overview of Android 6 Intents|Using Intent Filters]]
#* [[An Overview of Android 6 Intents|Checking Intent Availability]]<br><br>
# [[Android 6 Explicit Intents – A Worked Example]]
#* [[Android 6 Explicit Intents – A Worked Example|Creating the Explicit Intent Example Application]]
#* [[Android 6 Explicit Intents – A Worked Example|Designing the User Interface Layout for ActivityA]]
#* [[Android 6 Explicit Intents – A Worked Example|Creating the Second Activity Class]]
#* [[Android 6 Explicit Intents – A Worked Example|Designing the User Interface Layout for ActivityB]]
#* [[Android 6 Explicit Intents – A Worked Example|Reviewing the Application Manifest File]]
#* [[Android 6 Explicit Intents – A Worked Example|Creating the Intent]]
#* [[Android 6 Explicit Intents – A Worked Example|Extracting Intent Data]]
#* [[Android 6 Explicit Intents – A Worked Example|Launching ActivityB as a Sub-Activity]]
#* [[Android 6 Explicit Intents – A Worked Example|Returning Data from a Sub-Activity]]
#* [[Android 6 Explicit Intents – A Worked Example|Testing the Application]]<br><br>
# [[Android 6 Implicit Intents – A Worked Example]]
#* [[Android 6 Implicit Intents – A Worked Example|Creating the Android Studio Implicit Intent Example Project]]
#* [[Android 6 Implicit Intents – A Worked Example|Designing the User Interface]]
#* [[Android 6 Implicit Intents – A Worked Example|Creating the Implicit Intent]]
#* [[Android 6 Implicit Intents – A Worked Example|Adding a Second Matching Activity]]
#* [[Android 6 Implicit Intents – A Worked Example|Adding the Web View to the UI]]
#* [[Android 6 Implicit Intents – A Worked Example|Obtaining the Intent URL]]
#* [[Android 6 Implicit Intents – A Worked Example|Modifying the MyWebView Project Manifest File]]
#* [[Android 6 Implicit Intents – A Worked Example|Installing the MyWebView Package on a Device]]
#* [[Android 6 Implicit Intents – A Worked Example|Testing the Application]]<br><br>
# [[Android 6 Broadcast Intents and Broadcast Receivers]]
#* [[Android 6 Broadcast Intents and Broadcast Receivers|An Overview of Broadcast Intents]]
#* [[Android 6 Broadcast Intents and Broadcast Receivers|An Overview of Broadcast Receivers]]
#* [[Android 6 Broadcast Intents and Broadcast Receivers|Obtaining Results from a Broadcast]]
#* [[Android 6 Broadcast Intents and Broadcast Receivers|Sticky Broadcast Intents]]
#* [[Android 6 Broadcast Intents and Broadcast Receivers|The Broadcast Intent Example]]
#* [[Android 6 Broadcast Intents and Broadcast Receivers|Creating the Example Application]]
#* [[Android 6 Broadcast Intents and Broadcast Receivers|Creating and Sending the Broadcast Intent]]
#* [[Android 6 Broadcast Intents and Broadcast Receivers|Creating the Broadcast Receiver]]
#* [[Android 6 Broadcast Intents and Broadcast Receivers|Configuring a Broadcast Receiver in the Manifest File]]
#* [[Android 6 Broadcast Intents and Broadcast Receivers|Testing the Broadcast Example]]
#* [[Android 6 Broadcast Intents and Broadcast Receivers|Listening for System Broadcasts]]<br><br>
# [[A Basic Overview of Java Threads and Thread Handlers on Android]]
#* [[A Basic Overview of Java Threads and Thread Handlers on Android|An Overview of Threads]]
#* [[A Basic Overview of Java Threads and Thread Handlers on Android|The Application Main Thread]]
#* [[A Basic Overview of Java Threads and Thread Handlers on Android|Thread Handlers]]
#* [[A Basic Overview of Java Threads and Thread Handlers on Android|A Basic Threading Example]]
#* [[A Basic Overview of Java Threads and Thread Handlers on Android|Creating a New Thread]]
#* [[A Basic Overview of Java Threads and Thread Handlers on Android|Implementing a Thread Handler]]
#* [[A Basic Overview of Java Threads and Thread Handlers on Android|Passing a Message to the Handler]]<br><br>
# [[An Overview of Android 6 Started and Bound Services]]
#* [[An Overview of Android 6 Started and Bound Services|Started Services]]
#* [[An Overview of Android 6 Started and Bound Services|Intent Service]]
#* [[An Overview of Android 6 Started and Bound Services|Bound Service]]
#* [[An Overview of Android 6 Started and Bound Services|The Anatomy of a Service]]
#* [[An Overview of Android 6 Started and Bound Services|Controlling Destroyed Service Restart Options]]
#* [[An Overview of Android 6 Started and Bound Services|Declaring a Service in the Manifest File]]
#* [[An Overview of Android 6 Started and Bound Services|Starting a Service Running on System Startup]]<br><br>
# [[Implementing an Android 6 Started Service – A Worked Example]]
#* [[Implementing an Android 6 Started Service – A Worked Example|Creating the Example Project]]
#* [[Implementing an Android 6 Started Service – A Worked Example|Creating the Service Class]]
#* [[Implementing an Android 6 Started Service – A Worked Example|Adding the Service to the Manifest File]]
#* [[Implementing an Android 6 Started Service – A Worked Example|Starting the Service]]
#* [[Implementing an Android 6 Started Service – A Worked Example|Testing the IntentService Example]]
#* [[Implementing an Android 6 Started Service – A Worked Example|Using the Service Class]]
#* [[Implementing an Android 6 Started Service – A Worked Example|Creating the New Service]]
#* [[Implementing an Android 6 Started Service – A Worked Example|Modifying the User Interface]]
#* [[Implementing an Android 6 Started Service – A Worked Example|Running the Application]]
#* [[Implementing an Android 6 Started Service – A Worked Example|Creating a New Thread for Service Tasks]]<br><br>
# [[Android 6 Local Bound Services – A Worked Example]]
#* [[Android 6 Local Bound Services – A Worked Example|Understanding Bound Services]]
#* [[Android 6 Local Bound Services – A Worked Example|Bound Service Interaction Options]]
#* [[Android 6 Local Bound Services – A Worked Example|An Android Studio Local Bound Service Example]]
#* [[Android 6 Local Bound Services – A Worked Example|Adding a Bound Service to the Project]]
#* [[Android 6 Local Bound Services – A Worked Example|Implementing the Binder]]
#* [[Android 6 Local Bound Services – A Worked Example|Binding the Client to the Service]]
#* [[Android 6 Local Bound Services – A Worked Example|Completing the Example]]
#* [[Android 6 Local Bound Services – A Worked Example|Testing the Application]]<br><br>
# [[Android 6 Remote Bound Services – A Worked Example]]
#* [[Android 6 Remote Bound Services – A Worked Example|Client to Remote Service Communication]]
#* [[Android 6 Remote Bound Services – A Worked Example|Creating the Example Application]]
#* [[Android 6 Remote Bound Services – A Worked Example|Designing the User Interface]]
#* [[Android 6 Remote Bound Services – A Worked Example|Implementing the Remote Bound Service]]
#* [[Android 6 Remote Bound Services – A Worked Example|Configuring a Remote Service in the Manifest File]]
#* [[Android 6 Remote Bound Services – A Worked Example|Launching and Binding to the Remote Service]]
#* [[Android 6 Remote Bound Services – A Worked Example|Sending a Message to the Remote Service]]<br><br>
# [[An Overview of Android 6 SQLite Databases]]
#* [[An Overview of Android 6 SQLite Databases|Understanding Database Tables]]
#* [[An Overview of Android 6 SQLite Databases|Introducing Database Schema]]
#* [[An Overview of Android 6 SQLite Databases|Columns and Data Types]]
#* [[An Overview of Android 6 SQLite Databases|Database Rows]]
#* [[An Overview of Android 6 SQLite Databases|Introducing Primary Keys]]
#* [[An Overview of Android 6 SQLite Databases|What is SQLite?]]
#* [[An Overview of Android 6 SQLite Databases|Structured Query Language (SQL)]]
#* [[An Overview of Android 6 SQLite Databases|Trying SQLite on an Android Virtual Device (AVD)]]
#* [[An Overview of Android 6 SQLite Databases|Android SQLite Java Classes]]
#* [[An Overview of Android 6 SQLite Databases|Cursor]]
#* [[An Overview of Android 6 SQLite Databases|SQLiteDatabase]]
#* [[An Overview of Android 6 SQLite Databases|SQLiteOpenHelper]]
#* [[An Overview of Android 6 SQLite Databases|ContentValues]]<br><br>
# [[An Android 6 TableLayout and TableRow Tutorial]]
#* [[An Android 6 TableLayout and TableRow Tutorial|The TableLayout and TableRow Layout Views]]
#* [[An Android 6 TableLayout and TableRow Tutorial|Creating the Database Project]]
#* [[An Android 6 TableLayout and TableRow Tutorial|Adding the TableLayout to the User Interface]]
#* [[An Android 6 TableLayout and TableRow Tutorial|Adding and Configuring the TableRows]]
#* [[An Android 6 TableLayout and TableRow Tutorial|Adding the Button Bar to the Layout]]
#* [[An Android 6 TableLayout and TableRow Tutorial|Adjusting the Layout Margins]]<br><br>
# [[An Android 6 SQLite Database Tutorial]]
#* [[An Android 6 SQLite Database Tutorial|About the Database Example]]
#* [[An Android 6 SQLite Database Tutorial|Creating the Data Model]]
#* [[An Android 6 SQLite Database Tutorial|Implementing the Data Handler]]
#* [[An Android 6 SQLite Database Tutorial|The Add Handler Method]]
#* [[An Android 6 SQLite Database Tutorial|The Query Handler Method]]
#* [[An Android 6 SQLite Database Tutorial|The Delete Handler Method]]
#* [[An Android 6 SQLite Database Tutorial|Implementing the Activity Event Methods]]
#* [[An Android 6 SQLite Database Tutorial|Testing the Application]]<br><br><htmlet>ezoictoc4</htmlet>
# [[Understanding Android 6 Content Providers]]
#* [[Understanding Android 6 Content Providers|What is a Content Provider?]]
#* [[Understanding Android 6 Content Providers|The Content Provider]]
#* [[Understanding Android 6 Content Providers|onCreate()]]
#* [[Understanding Android 6 Content Providers|query()]]
#* [[Understanding Android 6 Content Providers|insert()]]
#* [[Understanding Android 6 Content Providers|update()]]
#* [[Understanding Android 6 Content Providers|delete()]]
#* [[Understanding Android 6 Content Providers|getType()]]
#* [[Understanding Android 6 Content Providers|The Content URI]]
#* [[Understanding Android 6 Content Providers|The Content Resolver]]
#* [[Understanding Android 6 Content Providers|The <provider> Manifest Element]]<br><br>
# [[Implementing an Android Content Provider in Android Studio]]
#* [[Implementing an Android Content Provider in Android Studio|Copying the Database Project]]
#* [[Implementing an Android Content Provider in Android Studio|Adding the Content Provider Package]]
#* [[Implementing an Android Content Provider in Android Studio|Creating the Content Provider Class]]
#* [[Implementing an Android Content Provider in Android Studio|Constructing the Authority and Content URI]]
#* [[Implementing an Android Content Provider in Android Studio|Implementing URI Matching in the Content Provider]]
#* [[Implementing an Android Content Provider in Android Studio|Implementing the Content Provider onCreate() Method]]
#* [[Implementing an Android Content Provider in Android Studio|Implementing the Content Provider insert() Method]]
#* [[Implementing an Android Content Provider in Android Studio|Implementing the Content Provider query() Method]]
#* [[Implementing an Android Content Provider in Android Studio|Implementing the Content Provider update() Method]]
#* [[Implementing an Android Content Provider in Android Studio|Implementing the Content Provider delete() Method]]
#* [[Implementing an Android Content Provider in Android Studio|Declaring the Content Provider in the Manifest File]]
#* [[Implementing an Android Content Provider in Android Studio|Modifying the Database Handler]]<br><br>
# [[Accessing Cloud Storage using the Android 6 Storage Access Framework]]
#* [[Accessing Cloud Storage using the Android 6 Storage Access Framework|The Storage Access Framework]]
#* [[Accessing Cloud Storage using the Android 6 Storage Access Framework|Working with the Storage Access Framework]]
#* [[Accessing Cloud Storage using the Android 6 Storage Access Framework|Filtering Picker File Listings]]
#* [[Accessing Cloud Storage using the Android 6 Storage Access Framework|Handling Intent Results]]
#* [[Accessing Cloud Storage using the Android 6 Storage Access Framework|Reading the Content of a File]]
#* [[Accessing Cloud Storage using the Android 6 Storage Access Framework|Writing Content to a File]]
#* [[Accessing Cloud Storage using the Android 6 Storage Access Framework|Deleting a File]]
#* [[Accessing Cloud Storage using the Android 6 Storage Access Framework|Gaining Persistent Access to a File]]<br><br>
# [[An Android 6 Storage Access Framework Example]]
#* [[An Android 6 Storage Access Framework Example|About the Storage Access Framework Example]]
#* [[An Android 6 Storage Access Framework Example|Creating the Storage Access Framework Example]]
#* [[An Android 6 Storage Access Framework Example|Designing the User Interface]]
#* [[An Android 6 Storage Access Framework Example|Declaring Request Codes]]
#* [[An Android 6 Storage Access Framework Example|Creating a New Storage File]]
#* [[An Android 6 Storage Access Framework Example|The onActivityResult() Method]]
#* [[An Android 6 Storage Access Framework Example|Saving to a Storage File]]
#* [[An Android 6 Storage Access Framework Example|Opening and Reading a Storage File]]
#* [[An Android 6 Storage Access Framework Example|Testing the Storage Access Application]]<br><br>
# [[Implementing Video Playback on Android 6 using the VideoView and MediaController Classes]]
#* [[Implementing Video Playback on Android 6 using the VideoView and MediaController Classes|Introducing the Android VideoView Class]]
#* [[Implementing Video Playback on Android 6 using the VideoView and MediaController Classes|Introducing the Android MediaController Class]]
#* [[Implementing Video Playback on Android 6 using the VideoView and MediaController Classes|Testing Video Playback]]
#* [[Implementing Video Playback on Android 6 using the VideoView and MediaController Classes|Creating the Video Playback Example]]
#* [[Implementing Video Playback on Android 6 using the VideoView and MediaController Classes|Designing the VideoPlayer Layout]]
#* [[Implementing Video Playback on Android 6 using the VideoView and MediaController Classes|Configuring the VideoView]]
#* [[Implementing Video Playback on Android 6 using the VideoView and MediaController Classes|Adding Internet Permission]]
#* [[Implementing Video Playback on Android 6 using the VideoView and MediaController Classes|Adding the MediaController to the Video View]]
#* [[Implementing Video Playback on Android 6 using the VideoView and MediaController Classes|Setting up the onPreparedListener]]<br><br>
# [[Video Recording and Image Capture on Android 6 using Camera Intents]]
#* [[Video Recording and Image Capture on Android 6 using Camera Intents|Checking for Camera Support]]
#* [[Video Recording and Image Capture on Android 6 using Camera Intents|Calling the Video Capture Intent]]
#* [[Video Recording and Image Capture on Android 6 using Camera Intents|Calling the Image Capture Intent]]
#* [[Video Recording and Image Capture on Android 6 using Camera Intents|Creating an Android Studio Video Recording Project]]
#* [[Video Recording and Image Capture on Android 6 using Camera Intents|Designing the User Interface Layout]]
#* [[Video Recording and Image Capture on Android 6 using Camera Intents|Checking for the Camera]]
#* [[Video Recording and Image Capture on Android 6 using Camera Intents|Launching the Video Capture Intent]]
#* [[Video Recording and Image Capture on Android 6 using Camera Intents|Handling the Intent Return]]
#* [[Video Recording and Image Capture on Android 6 using Camera Intents|Testing the Application]]<br><br>
# [[Making Runtime Permission Requests in Android 6.0]]
#* [[Making Runtime Permission Requests in Android 6.0|Understanding Normal and Dangerous Permissions]]
#* [[Making Runtime Permission Requests in Android 6.0|Creating the Permissions Example Project]]
#* [[Making Runtime Permission Requests in Android 6.0|Checking for a Permission]]
#* [[Making Runtime Permission Requests in Android 6.0|Requesting Permission at Runtime]]
#* [[Making Runtime Permission Requests in Android 6.0|Providing a Rationale for the Permission Request]]
#* [[Making Runtime Permission Requests in Android 6.0|Testing the Permissions App]]<br><br>
# [[Android 6 Audio Recording and Playback using MediaPlayer and MediaRecorder]]
#* [[Android 6 Audio Recording and Playback using MediaPlayer and MediaRecorder|Playing Audio]]
#* [[Android 6 Audio Recording and Playback using MediaPlayer and MediaRecorder|Recording Audio and Video using the MediaRecorder Class]]
#* [[Android 6 Audio Recording and Playback using MediaPlayer and MediaRecorder|About the Example Project]]
#* [[Android 6 Audio Recording and Playback using MediaPlayer and MediaRecorder|Creating the AudioApp Project]]
#* [[Android 6 Audio Recording and Playback using MediaPlayer and MediaRecorder|Designing the User Interface]]
#* [[Android 6 Audio Recording and Playback using MediaPlayer and MediaRecorder|Checking for Microphone Availability]]
#* [[Android 6 Audio Recording and Playback using MediaPlayer and MediaRecorder|Performing the Activity Initialization]]
#* [[Android 6 Audio Recording and Playback using MediaPlayer and MediaRecorder|Implementing the recordAudio() Method]]
#* [[Android 6 Audio Recording and Playback using MediaPlayer and MediaRecorder|Implementing the stopAudio() Method]]
#* [[Android 6 Audio Recording and Playback using MediaPlayer and MediaRecorder|Implementing the playAudio() method]]
#* [[Android 6 Audio Recording and Playback using MediaPlayer and MediaRecorder|Configuring and Requesting Permissions]]
#* [[Android 6 Audio Recording and Playback using MediaPlayer and MediaRecorder|Testing the Application]]<br><br>
# [[Working with the Google Maps Android 6 API in Android Studio]]
#* [[Working with the Google Maps Android 6 API in Android Studio|The Elements of the Google Maps Android API]]
#* [[Working with the Google Maps Android 6 API in Android Studio|Creating the Google Maps Project]]
#* [[Working with the Google Maps Android 6 API in Android Studio|Obtaining Your Developer Signature]]
#* [[Working with the Google Maps Android 6 API in Android Studio|Testing the Application]]
#* [[Working with the Google Maps Android 6 API in Android Studio|Understanding Geocoding and Reverse Geocoding]]
#* [[Working with the Google Maps Android 6 API in Android Studio|Adding a Map to an Application]]
#* [[Working with the Google Maps Android 6 API in Android Studio|Requesting Current Location Permission]]
#* [[Working with the Google Maps Android 6 API in Android Studio|Displaying the User’s Current Location]]
#* [[Working with the Google Maps Android 6 API in Android Studio|Changing the Map Type]]
#* [[Working with the Google Maps Android 6 API in Android Studio|Displaying Map Controls to the User]]
#* [[Working with the Google Maps Android 6 API in Android Studio|Handling Map Gesture Interaction]]
#* [[Working with the Google Maps Android 6 API in Android Studio|Map Zooming Gestures]]
#* [[Working with the Google Maps Android 6 API in Android Studio|Map Scrolling/Panning Gestures]]
#* [[Working with the Google Maps Android 6 API in Android Studio|Map Tilt Gestures]]
#* [[Working with the Google Maps Android 6 API in Android Studio|Map Rotation Gestures]]
#* [[Working with the Google Maps Android 6 API in Android Studio|Creating Map Markers]]
#* [[Working with the Google Maps Android 6 API in Android Studio|Controlling the Map Camera]]<br><br>
# [[Printing with the Android 6 Printing Framework]]
#* [[Printing with the Android 6 Printing Framework|The Android Printing Architecture]]
#* [[Printing with the Android 6 Printing Framework|The Print Service Plugins]]
#* [[Printing with the Android 6 Printing Framework|Google Cloud Print]]
#* [[Printing with the Android 6 Printing Framework|Printing to Google Drive]]
#* [[Printing with the Android 6 Printing Framework|Save as PDF]]
#* [[Printing with the Android 6 Printing Framework|Printing from Android Devices]]
#* [[Printing with the Android 6 Printing Framework|Options for Building Print Support into Android Apps]]
#* [[Printing with the Android 6 Printing Framework|Image Printing]]
#* [[Printing with the Android 6 Printing Framework|Creating and Printing HTML Content]]
#* [[Printing with the Android 6 Printing Framework|Printing a Web Page]]
#* [[Printing with the Android 6 Printing Framework|Printing a Custom Document]]<br><br>
# [[An Android 6 HTML and Web Content Printing Example]]
#* [[An Android 6 HTML and Web Content Printing Example|Creating the HTML Printing Example Application]]
#* [[An Android 6 HTML and Web Content Printing Example|Printing Dynamic HTML Content]]
#* [[An Android 6 HTML and Web Content Printing Example|Creating the Web Page Printing Example]]
#* [[An Android 6 HTML and Web Content Printing Example|Removing the Floating Action Button]]
#* [[An Android 6 HTML and Web Content Printing Example|Designing the User Interface Layout]]
#* [[An Android 6 HTML and Web Content Printing Example|Loading the Web Page into the WebView]]
#* [[An Android 6 HTML and Web Content Printing Example|Adding the Print Menu Option]]<br><br>
# [[A Guide to Android 6 Custom Document Printing]]
#* [[A Guide to Android 6 Custom Document Printing|An Overview of Android Custom Document Printing]]
#* [[A Guide to Android 6 Custom Document Printing|Custom Print Adapters]]
#* [[A Guide to Android 6 Custom Document Printing|Preparing the Custom Document Printing Project]]
#* [[A Guide to Android 6 Custom Document Printing|Creating the Custom Print Adapter]]
#* [[A Guide to Android 6 Custom Document Printing|Implementing the onLayout() Callback Method]]
#* [[A Guide to Android 6 Custom Document Printing|Implementing the onWrite() Callback Method]]
#* [[A Guide to Android 6 Custom Document Printing|Checking a Page is in Range]]
#* [[A Guide to Android 6 Custom Document Printing|Drawing the Content on the Page Canvas]]
#* [[A Guide to Android 6 Custom Document Printing|Starting the Print Job]]
#* [[A Guide to Android 6 Custom Document Printing|Testing the Application]]<br><br>
# [[Handling Different Android 6 Devices and Displays]]
#* [[Handling Different Android 6 Devices and Displays|Handling Different Device Displays]]
#* [[Handling Different Android 6 Devices and Displays|Creating a Layout for each Display Size]]
#* [[Handling Different Android 6 Devices and Displays|Providing Different Images]]
#* [[Handling Different Android 6 Devices and Displays|Checking for Hardware Support]]
#* [[Handling Different Android 6 Devices and Displays|Providing Device Specific Application Binaries]]<br><br>
# [[Signing and Preparing an Android 6 Application for Release]]
#* [[Signing and Preparing an Android 6 Application for Release|The Release Preparation Process]]
#* [[Signing and Preparing an Android 6 Application for Release|Changing the Build Variant]]
#* [[Signing and Preparing an Android 6 Application for Release|Enabling ProGuard]]
#* [[Signing and Preparing an Android 6 Application for Release|Creating a Keystore File]]
#* [[Signing and Preparing an Android 6 Application for Release|Generating a Private Key]]
#* [[Signing and Preparing an Android 6 Application for Release|Creating the Application APK File]]
#* [[Signing and Preparing an Android 6 Application for Release|Register for a Google Play Developer Console Account]]
#* [[Signing and Preparing an Android 6 Application for Release|Uploading New APK Versions to the Google Play Developer Console]]<br><br>
# [[Integrating Google Play In-app Billing into an Android 6 Application]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Installing the Google Play Billing Library]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Creating the Example In-app Billing Project]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Adding Billing Permission to the Manifest File]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Adding the IInAppBillingService.aidl File to the Project]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Adding the Utility Classes to the Project]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Designing the User Interface]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Implementing the “Click Me” Button]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Google Play Developer Console and Google Wallet Accounts]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Obtaining the Public License Key for the Application]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Setting Up Google Play Billing in the Application]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Initiating a Google Play In-app Billing Purchase]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Implementing the onActivityResult Method]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Implementing the Purchase Finished Listener]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Consuming the Purchased Item]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Releasing the IabHelper Instance]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Modifying the Security.java File]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Testing the In-app Billing Application]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Building a Release APK]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Creating a New In-app Product]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Publishing the Application to the Alpha Distribution Channel]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Adding In-app Billing Test Accounts]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Configuring Group Testing]]
#* [[Integrating Google Play In-app Billing into an Android 6 Application|Resolving Problems with In-App Purchasing]]<br><br>
# [[An Overview of Gradle in Android Studio - Android 6]]
#* [[An Overview of Gradle in Android Studio - Android 6|An Overview of Gradle]]
#* [[An Overview of Gradle in Android Studio - Android 6|Gradle and Android Studio]]
#* [[An Overview of Gradle in Android Studio - Android 6|Sensible Defaults]]
#* [[An Overview of Gradle in Android Studio - Android 6|Dependencies]]
#* [[An Overview of Gradle in Android Studio - Android 6|Build Variants]]
#* [[An Overview of Gradle in Android Studio - Android 6|Manifest Entries]]
#* [[An Overview of Gradle in Android Studio - Android 6|APK Signing]]
#* [[An Overview of Gradle in Android Studio - Android 6|ProGuard Support]]
#* [[An Overview of Gradle in Android Studio - Android 6|The Top-level Gradle Build File]]
#* [[An Overview of Gradle in Android Studio - Android 6|Module Level Gradle Build Files]]
#* [[An Overview of Gradle in Android Studio - Android 6|Configuring Signing Settings in the Build File]]
#* [[An Overview of Gradle in Android Studio - Android 6|Running Gradle Tasks from the Command-line]]<br><br>
# [[An Android Studio Gradle Build Variants Example - Android 6]]
#* [[An Android Studio Gradle Build Variants Example - Android 6|Creating the Build Variant Example Project]]
#* [[An Android Studio Gradle Build Variants Example - Android 6|Extracting the Hello World String Resource]]
#* [[An Android Studio Gradle Build Variants Example - Android 6|Adding the Build Flavors to the Module Build File]]
#* [[An Android Studio Gradle Build Variants Example - Android 6|Adding the Flavors to the Project Structure]]
#* [[An Android Studio Gradle Build Variants Example - Android 6|Adding Resource Files to the Flavors]]
#* [[An Android Studio Gradle Build Variants Example - Android 6|Testing the Build Flavors]]
#* [[An Android Studio Gradle Build Variants Example - Android 6|Build Variants and Class Files]]
#* [[An Android Studio Gradle Build Variants Example - Android 6|Adding Packages to the Build Flavors]]
#* [[An Android Studio Gradle Build Variants Example - Android 6|Customizing the Activity Classes]]<br><br>
</td>
<td valign="top">
<htmlet>adsdaqbox</htmlet>
</td>
</tr>
</table>
<htmlet>androidstudio_a6</htmlet>
<google>BUY_ANDROID_STUDIO6</google>
<htmlet>ezoicbottom</htmlet>
<hr>
<table border="0" cellspacing="0" width="100%">
<tr>
<td width="20%"><td align="center">[[Android Studio Development Essentials - Android 6 Edition|Table of Contents]]<td width="20%" align="right">[[Introduction - Android Studio 6|Next]]</td>
<tr>
<td width="20%"><td align="center"><td width="20%" align="right">Introduction</td>
</table>

Navigation menu