- Step #1: Eclipse.......................................................................................
- Step #2: Command Line........................................................................
- A Simple Form........................................................................................
- Step-By-Step Instructions............................................................................
- Step #1: Generate the Application Skeleton........................................
- Step #2: Modify the Layout..................................................................
- Step #3: Compile and Install the Application.....................................
- Step #4: Run the Application in the Emulator...................................
- Step #5: Create a Model Class..............................................................
- Step #6: Save the Form to the Model..................................................
- Extra Credit..................................................................................................
- Further Reading...........................................................................................
- Step-By-Step Instructions............................................................................
- A Fancier Form.......................................................................................
- Step-By-Step Instructions...........................................................................
- Step #1: Switch to a TableLayout.........................................................
- Step #2: Add a RadioGroup..................................................................
- Step #3: Update the Model..................................................................
- Step #4: Save the Type to the Model..................................................
- Extra Credit.................................................................................................
- Further Reading..........................................................................................
- Step-By-Step Instructions...........................................................................
- Adding a List..........................................................................................
- Step-By-Step Instructions..........................................................................
- Step #1: Hold a List of Restaurants.....................................................
- Step #2: Save Adds to List....................................................................
- Step #3: Implement toString().............................................................
- Step #4: Add a ListView Widget..........................................................
- Step #5: Build and Attach the Adapter...............................................
- Extra Credit.................................................................................................
- Further Reading..........................................................................................
- Step-By-Step Instructions..........................................................................
- Making Our List Be Fancy.....................................................................
- Step-By-Step Instructions..........................................................................
- Step #1: Create a Stub Custom Adapter..............................................
- Step #2: Design Our Row.....................................................................
- Step #3: Override getView(): The Simple Way..................................
- Step #4: Create a RestaurantHolder....................................................
- Step #5: Recycle Rows via RestaurantHolder....................................
- Extra Credit.................................................................................................
- Further Reading..........................................................................................
- Step-By-Step Instructions..........................................................................
- Splitting the Tab....................................................................................
- Step-By-Step Instructions..........................................................................
- Step #1: Rework the Layout.................................................................
- Step #2: Wire In the Tabs....................................................................
- Step #3: Get Control On List Events....................................................
- Step #4: Update Our Restaurant Form On Clicks..............................
- Step #5: Switch Tabs On Clicks...........................................................
- Extra Credit.................................................................................................
- Further Reading..........................................................................................
- Step-By-Step Instructions..........................................................................
- Menus and Messages.............................................................................
- Step-By-Step Instructions..........................................................................
- Step #1: Add Notes to the Restaurant.................................................
- Step #2: Add Notes to the Detail Form..............................................
- Step #3: Define the Option Menu.......................................................
- Step #4: Show the Notes as a Toast.....................................................
- Extra Credit.................................................................................................
- Further Reading..........................................................................................
- Step-By-Step Instructions..........................................................................
- Sitting in the Background.....................................................................
- Step-By-Step Instructions..........................................................................
- Step #1: Initialize the Progress Bar.....................................................
- Step #2: Create the Work Method......................................................
- Step #3: Fork the Thread from the Menu...........................................
- Step #4: Manage the Progress Bar.......................................................
- Extra Credit.................................................................................................
- Further Reading..........................................................................................
- Step-By-Step Instructions..........................................................................
- Life and Times........................................................................................
- Step-By-Step Instructions..........................................................................
- Step #1: Lengthen the Background Work...........................................
- Step #2: Pause in onPause()................................................................
- Step #3: Resume in onResume().........................................................
- Extra Credit.................................................................................................
- Further Reading..........................................................................................
- Step-By-Step Instructions..........................................................................
- A Few Good Resources..........................................................................
- Step-By-Step Instructions..........................................................................
- Step #1: Review our Current Resources..............................................
- Step #2: Create a Landscape Layout...................................................
- Extra Credit..................................................................................................
- Further Reading..........................................................................................
- Step-By-Step Instructions..........................................................................
- The Restaurant Store.............................................................................
- Step-By-Step Instructions..........................................................................
- Step #1: Create a Stub SQLiteOpenHelper.........................................
- Step #2: Manage our Schema..............................................................
- Step #3: Remove Extraneous Code from LunchList..........................
- Step #4: Get Access to the Helper......................................................
- Step #5: Save a Restaurant to the Database.......................................
- Step #6: Get the List of Restaurants from the Database...................
- Step #7: Change our Adapter and Wrapper......................................
- Step #8: Clean Up Lingering ArrayList References...........................
- Step #9: Refresh Our List...................................................................
- Extra Credit................................................................................................
- Further Reading.........................................................................................
- Step-By-Step Instructions..........................................................................
- Getting More Active.............................................................................
- Step-By-Step Instructions.........................................................................
- Step #1: Create a Stub Activity...........................................................
- Step #2: Launch the Stub Activity on List Click................................
- Step #3: Move the Detail Form UI......................................................
- Step #4: Clean Up the Original UI.....................................................
- Step #5: Pass the Restaurant _ID........................................................
- Step #6: Load the Restaurant Into the Form.....................................
- Step #7: Add an "Add" Menu Option.................................................
- Step #8: Detail Form Supports Add and Edit....................................
- Extra Credit................................................................................................
- Further Reading.........................................................................................
- Step-By-Step Instructions.........................................................................
- What's Your Preference?......................................................................
- Step-By-Step Instructions.........................................................................
- Step #1: Define the Preference XML..................................................
- Step #2: Create the Preference Activity.............................................
- Step #3: Connect the Preference Activity to the Option Menu......
- Step #4: Apply the Sort Order on Startup.........................................
- Step #5: Listen for Preference Changes.............................................
- Step #6: Re-Apply the Sort Order on Changes.................................
- Extra Credit................................................................................................
- Further Reading.........................................................................................
- Step-By-Step Instructions.........................................................................
- Turn, Turn, Turn..................................................................................
- Step-By-Step Instructions.........................................................................
- Step #1: Add a Stub onSaveInstanceState()......................................
- Step #2: Pour the Form Into the Bundle...........................................
- Step #3: Repopulate the Form...........................................................
- Step #4: Fix Up the Landscape Detail Form.....................................
- Extra Credit................................................................................................
- Further Reading..........................................................................................
- Step-By-Step Instructions.........................................................................
- Raising (Something Like) a Tweet.......................................................
- Step-By-Step Instructions.........................................................................
- Step #1: Set Up an Identi.ca Account.................................................
- Step #2: Create a Stub Application and Activity..............................
- Step #3: Create a Layout.....................................................................
- Step #4: Listen for Send Actions........................................................
- Step #5: Make the Status Post Request.............................................
- Extra Credit................................................................................................
- Further Reading.........................................................................................
- Step-By-Step Instructions.........................................................................
- Opening a JAR......................................................................................
- Step-By-Step Instructions.........................................................................
- Step #1: Obtain the JTwitter JAR.......................................................
- Step #2: Switch from HttpClient to JTwitter....................................
- Step #3: Create Preferences for Account Information.....................
- Step #4: Use Account Information from Preferences......................
- Extra Credit................................................................................................
- Further Reading.........................................................................................
- Step-By-Step Instructions.........................................................................
- Listening To Your Friends....................................................................
- Step-By-Step Instructions.........................................................................
- Step #1: Create a Service Stub............................................................
- Step #2: Set Up a Background Thread...............................................
- Step #3: Poll Your Friends..................................................................
- Step #4: Find New Statuses................................................................
- Step #5: Set up the Public API............................................................
- Extra Credit................................................................................................
- Further Reading.........................................................................................
- Step-By-Step Instructions.........................................................................
- No, Really Listening To Your Friends.................................................
- Step-By-Step Instructions.........................................................................
- Step #1: Define the Callback...............................................................
- Step #2: Enable Callbacks in the Service..........................................
- Step #3: Manage the Service and Register the Account..................
- Step #4: Display the Timeline............................................................
- Extra Credit...............................................................................................
- Further Reading.........................................................................................
- Step-By-Step Instructions.........................................................................
- Your Friends Seem Remote.................................................................
- Step-By-Step Instructions........................................................................
- Step #1: Back Up or Branch Your Project.........................................
- Step #2: Create a Fresh Project.........................................................
- Step #3: Move the Service to the New Project.................................
- Step #4: Implement and Copy the AIDL..........................................
- Step #5: Implement the Client Side..................................................
- Step #6: Implement the Service Side................................................
- Step #7: Restore Your Project.............................................................
- Extra Credit................................................................................................
- Further Reading.........................................................................................
- Step-By-Step Instructions........................................................................
- A Subtle Notification............................................................................
- Step-By-Step Instructions.........................................................................
- Step #1: Pick a Word and Icon...........................................................
- Step #2: Raise the Notification..........................................................
- Step #3: Watch for the Keyword........................................................
- Step #4: Clearing the Notification.....................................................
- Extra Credit...............................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions.........................................................................
- Posts On Location................................................................................
- Step-By-Step Instructions........................................................................
- Step #1: Get the LocationManager....................................................
- Step #2: Register for Location Updates............................................
- Step #3: Add "Insert Location" Menu...............................................
- Step #4: Insert the Last Known Location.........................................
- Extra Credit...............................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions........................................................................
- Here a Post, There a Post.....................................................................
- Step-By-Step Instructions........................................................................
- Step #1: Register for a Map API Key..................................................
- Step #2: Create a Basic MapActivity.................................................
- Step #3: Launch the Map on Location-Bearing Status Click...........
- Step #4: Show the Location Via a Pin...............................................
- Extra Credit...............................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions........................................................................
- Media....................................................................................................
- Step-By-Step Instructions........................................................................
- Step #1: Obtain and Install a Video Clip...........................................
- Step #2: Create the Stub Helpcast Activity......................................
- Step #3: Launch the Helpcast from the Menu.................................
- Extra Credit...............................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions........................................................................
- Browsing Some Posts...........................................................................
- Step-By-Step Instructions.........................................................................
- Step #1: Add Auto-Linking.................................................................
- Step #2: Draft and Package the Help HTML....................................
- Step #3: Create a Help Activity..........................................................
- Step #4: Splice In the Help Activity..................................................
- Extra Credit...............................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions.........................................................................
- High-Priced Help.................................................................................
- Step-By-Step Instructions........................................................................
- Step #1: Enable Javascript...................................................................
- Step #2: Create the Java Object to Inject..........................................
- Step #3: Inject the Java Object..........................................................
- Step #4: Leverage the Java Object from Javascript..........................
- Extra Credit...............................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions........................................................................
- Now Your Friends Seem Animated.....................................................
- Step-By-Step Instructions........................................................................
- Step #1: Set Up the Option Menu.....................................................
- Step #2: Show and Hide the Status Entry Widgets.........................
- Step #3: Fading In and Out...............................................................
- Extra Credit...............................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions........................................................................
- Messages From The Great Beyond......................................................
- Step-By-Step Instructions.........................................................................
- Step #1: Broadcast the Intent.............................................................
- Step #2: Catch and Use the Intent....................................................
- Extra Credit...............................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions.........................................................................
- Contacting Our Friends.......................................................................
- Step-By-Step Instructions........................................................................
- Step #1: Fake the Contact Data..........................................................
- Step #2: Design the Highlight...........................................................
- Step #3: Find and Highlight Matching Contacts..............................
- Extra Credit...............................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions........................................................................
- Android Would Like Your Attention..................................................
- Step-By-Step Instructions........................................................................
- Step #1: Track the Battery State........................................................
- Step #2: Use the Battery State...........................................................
- Extra Credit...............................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions........................................................................
- Now, Your Friends Are Alarmed.........................................................
- Step-By-Step Instructions........................................................................
- Step #1: Import a Reusable Component...........................................
- Step #2: Create the Alarm BroadcastReceiver.................................
- Step #3: Doing the Work....................................................................
- Extra Credit...............................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions........................................................................
- Searching For Food..............................................................................
- Step-By-Step Instructions........................................................................
- Step #1: Have the List Conduct the Search......................................
- Step #2: Integrate the Search in the Application.............................
- Extra Credit...............................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions........................................................................
- Look Inside Yourself............................................................................
- Step-By-Step Instructions........................................................................
- Step #1: Create a Stub Project............................................................
- Step #2: Create a Layout....................................................................
- Step #3: Find the Correct Contact Uri..............................................
- Step #4: Attach the Button to the Contacts.....................................
- Step #5: Populate the List..................................................................
- Extra Credit................................................................................................
- Further Reading.........................................................................................
- Step-By-Step Instructions........................................................................
- A Restaurant In Your Own Home........................................................
- Step-By-Step Instructions.........................................................................
- Step #1: Find An App Widget Background and Icon........................
- Step #2: Design the App Widget Layout...........................................
- Step #3: Add an (Empty) AppWidgetProvider.................................
- Step #4: Add the Widget Metadata...................................................
- Step #5: Update the Manifest.............................................................
- Step #6: Show a Random Restaurant................................................
- Extra Credit...............................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions.........................................................................
- More Home Cooking............................................................................
- Step-By-Step Instructions........................................................................
- Step #1: Find a Button Graphic..........................................................
- Step #2: Add the Button to the Layout.............................................
- Step #3: Migrate Update Logic to an IntentService.........................
- Step #4: Get Control on Button Clicks.............................................
- Step #5: Get Control on Name Clicks................................................
- Extra Credit................................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions........................................................................
- Take a Monkey to Lunch......................................................................
- Step-By-Step Instructions.........................................................................
- Step #1: Prep LunchList......................................................................
- Step #2: Run the Monkey...................................................................
- Extra Credit...............................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions.........................................................................
- Asking Permission to Place a Call.......................................................
- Step-By-Step Instructions........................................................................
- Step #1: Add a Phone Number to the Database Schema.................
- Step #2: Intelligently Handle Database Updates.............................
- Step #3: Add Phone Number Support to the Rest of the Helper...
- Step #4: Collect the Phone Number on the Detail Form................
- Step #5: Ask for Permission to Make Calls.......................................
- Step #6: Dial the Number..................................................................
- Step #7: Make the Call.......................................................................
- Extra Credit...............................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions........................................................................
- Photographic Memory........................................................................
- Step-By-Step Instructions........................................................................
- Step #1: Adjust the Manifest..............................................................
- Step #2: Create the Photographer Layout.........................................
- Step #3: Create the Photographer Class...........................................
- Step #4: Tie In the Photographer Class............................................
- Extra Credit................................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions........................................................................
- Sensing a Disturbance.........................................................................
- Step-By-Step Instructions........................................................................
- Step #1: Implement a Shaker.............................................................
- Step #2: Hook Into the Shaker..........................................................
- Step #3: Make a Random Selection on a Shake................................
- Extra Credit...............................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions........................................................................
- Getting the Word Out..........................................................................
- Step-By-Step Instructions........................................................................
- Step #1: Add a "Send SMS" Option Menu........................................
- Step #2: Find Contacts' Mobile Numbers.........................................
- Step #3: Pick a Person........................................................................
- Step #4: Send the Message................................................................
- Extra Credit...............................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions........................................................................
- Seeking the Proper Level.....................................................................
- Step-By-Step Instructions.........................................................................
- Step #1: Define an Interface for Mobile Numbers............................
- Step #2: Implement the Interface: the New Way.............................
- Step #3: Implement the Interface: the Old Way..............................
- Step #4: Choose and Use the Bridge.................................................
- Extra Credit...............................................................................................
- Further Reading........................................................................................
- Step-By-Step Instructions.........................................................................
- Appendix A: How To Get Started.........................................................
- Java
- Step #1: Install the JDK.......................................................................
- Step #2: Learn Java.............................................................................
- Install the Android SDK...........................................................................
- Step #1: Install the Base Tools...........................................................
- Step #2: Install the SDKs and Add-Ons............................................
- Install the ADT for Eclipse.......................................................................
- Install Apache Ant....................................................................................
- Set Up the Emulator.................................................................................
- Set Up the Device.....................................................................................
- Step #1: Windows...............................................................................
- Step #2: OS X and Linux....................................................................
- Java
- Appendix B: Coping with Eclipse........................................................
- How to Import a Non-Eclipse Project.....................................................
- How to Get To DDMS..............................................................................
- How to Create an Emulator.....................................................................
- How to Run a Project...............................................................................
- How Not to Run Your Project.................................................................
- How to Get Past Eclipse...........................................................................