Author(s): M. Murphy
Publisher: CommonsWare
Year: 2009-2011
Language: English
Pages: 334
Android Programming Tutorials
......Page 2
Prerequisites......Page 16
Using the Tutorials......Page 17
What's New......Page 19
Errata and Book Bug Bounty......Page 20
Source Code License......Page 21
Lifecycle of a CommonsWare Book......Page 22
Roster of Tutorials......Page 23
Step #1: Create the New Project......Page 28
Step #1: Eclipse......Page 29
Step #2: Command Line......Page 32
Step #1: Eclipse......Page 33
Step #2: Command Line......Page 34
Step #1: Generate the Application Skeleton......Page 38
Step #2: Modify the Layout......Page 39
Step #3: Support All Screen Sizes......Page 41
Step #5: Run the Application in the Emulator......Page 42
Step #7: Save the Form to the Model......Page 43
Further Reading......Page 45
Step #1: Switch to a TableLayout......Page 46
Step #2: Add a RadioGroup......Page 48
Step #3: Update the Model......Page 50
Step #4: Save the Type to the Model......Page 51
Extra Credit......Page 53
Further Reading......Page 54
Step #1: Hold a List of Restaurants......Page 56
Step #2: Save Adds to List......Page 57
Step #4: Add a ListView Widget......Page 58
Step #5: Build and Attach the Adapter......Page 60
Extra Credit......Page 62
Further Reading......Page 63
Step-By-Step Instructions......Page 64
Step #2: Design Our Row......Page 65
Step #3: Override getView(): The Simple Way......Page 67
Step #4: Create a RestaurantHolder......Page 68
Step #5: Recycle Rows via RestaurantHolder......Page 69
Further Reading......Page 72
Step #1: Rework the Layout......Page 74
Step #2: Wire In the Tabs......Page 76
Step #4: Update Our Restaurant Form On Clicks......Page 78
Step #5: Switch Tabs On Clicks......Page 79
Further Reading......Page 83
Step #1: Add Notes to the Restaurant......Page 84
Step #2: Add Notes to the Detail Form......Page 85
Step #3: Define the Option Menu......Page 87
Step #4: Show the Notes as a Toast......Page 88
Further Reading......Page 94
Step #1: Initialize the Progress Bar......Page 96
Step #2: Create the Work Method......Page 97
Step #3: Fork the Thread from the Menu......Page 98
Step #4: Manage the Progress Bar......Page 100
Extra Credit......Page 102
Further Reading......Page 103
Step #1: Lengthen the Background Work......Page 104
Step #2: Pause in onPause()......Page 105
Step #3: Resume in onResume()......Page 106
Further Reading......Page 113
Step #1: Review our Current Resources......Page 114
Step #2: Create a Landscape Layout......Page 115
Extra Credit......Page 118
Further Reading......Page 119
Step #1: Create a Stub SQLiteOpenHelper......Page 120
Step #2: Manage our Schema......Page 121
Step #4: Get Access to the Helper......Page 122
Step #5: Save a Restaurant to the Database......Page 123
Step #6: Get the List of Restaurants from the Database......Page 124
Step #7: Change our Adapter and Wrapper......Page 125
Step #8: Clean Up Lingering ArrayList References......Page 127
Step #9: Refresh Our List......Page 128
Extra Credit......Page 133
Further Reading......Page 134
Step #1: Create a Stub Activity......Page 136
Step #2: Launch the Stub Activity on List Click......Page 137
Step #3: Move the Detail Form UI......Page 138
Step #4: Clean Up the Original UI......Page 142
Step #5: Pass the Restaurant _ID......Page 143
Step #6: Load the Restaurant Into the Form......Page 144
Step #7: Add an "Add" Menu Option......Page 145
Step #8: Detail Form Supports Add and Edit......Page 146
Extra Credit......Page 159
Further Reading......Page 160
Step #1: Define the Preference XML......Page 162
Step #2: Create the Preference Activity......Page 163
Step #3: Connect the Preference Activity to the Option Menu......Page 164
Step #4: Apply the Sort Order on Startup......Page 168
Step #5: Listen for Preference Changes......Page 169
Step #6: Re-Apply the Sort Order on Changes......Page 170
Extra Credit......Page 171
Further Reading......Page 172
Step #1: Add a Stub onSaveInstanceState()......Page 174
Step #4: Fix Up the Landscape Detail Form......Page 175
Extra Credit......Page 177
Further Reading......Page 178
Step #1: Add a Feed URL to the Data Model......Page 180
Step #2: Update the Detail Form......Page 184
Step #3: Add a Feed Options Menu Item......Page 188
Step #4: Add Permissions and Check Connectivity......Page 189
Step #5: Install the RSS Library......Page 193
Step #6: Fetch and Parse the Feed......Page 194
Step #7: Display the Feed Items......Page 197
Extra Credit......Page 206
Further Reading......Page 207
Step #1: Create an Register a Stub IntentService......Page 208
Step #2: Move Feed Fetching and Parsing to the Service......Page 210
Step #3: Send the Feed to the Activity......Page 211
Step #4: Display the Feed Items, Redux......Page 213
Extra Credit......Page 219
Further Reading......Page 220
Step #1: Add Latitude and Longitude to the Data Model......Page 222
Step #2: Save the Restaurant in onPause()......Page 227
Step #3: Add a TextView and Options Menu Item for Location......Page 228
Step #4: Update the Permissions......Page 232
Step #5: Find Our Location Using GPS......Page 233
Step #6: Only Enable Options Menu Item If Saved......Page 236
Extra Credit......Page 242
Further Reading......Page 243
Step-By-Step Instructions......Page 244
Step #2: Create and Use a MapActivity......Page 245
Step #3: Create an ItemizedOverlay......Page 248
Step #4: Handle Marker Taps......Page 257
Extra Credit......Page 262
Further Reading......Page 263
Step-By-Step Instructions......Page 264
Step #1: Create a TimePreference......Page 265
Step #2: Collect Alarm Preferences......Page 268
Step #3: Set Up a Boot-Time Receiver......Page 269
Step #4: Manage Preference Changes......Page 271
Step #5: Display the Alarm......Page 278
Extra Credit......Page 284
Further Reading......Page 285
Step-By-Step Instructions......Page 286
Step #2: Display the Alarm, Redux......Page 287
Further Reading......Page 295
How To Get Started......Page 296
Step #2: Learn Java......Page 297
Step #1: Install the Base Tools......Page 298
Step #2: Install the SDKs and Add-Ons......Page 299
Install the ADT for Eclipse......Page 303
Install Apache Ant......Page 305
Set Up the Emulator......Page 306
Set Up the Device......Page 313
Step #1: Windows......Page 314
Step #2: OS X and Linux......Page 315
How to Import a Non-Eclipse Project......Page 318
How to Get To DDMS......Page 323
How to Create an Emulator......Page 325
How to Run a Project......Page 326
How to Get Past Eclipse......Page 327