فهرست عناوین.....................................................................
3
مقدمه مترجم....................................................................................
17
مقدمه مؤلف......................................................................................
19
این کتاب مورد استفاده چه کسانی است؟.....................................
20
فصل 1...............................................................................
21
سیستمعامل
اندروید.........................................................................
21
زیربنای معماری اندروید................................................................. 21
گنجاندن اندروید در لینوکس...........................................................................
23
سیستمِ فایلی..................................................................................................
26
کتابخانههای بومی.....................................................................
27
حیناجراهای اندروید..................................................................
27
ART.............................................................................................................
27
برنامههای اندرویدی ترجمه شده.....................................................................
28
برنامههای قرنطینه شده..............................................................
29
زیگوت...........................................................................................................
29
چهارچوب برنامه........................................................................
30
برنامهها.....................................................................................
30
نسخههای
اندروید.........................................................................
31
شماره گذاری پلاتفرم...............................................................
31
اسم رمز پلاتفرم......................................................................
31
سطح
API.................................................................................
32
آمار پراکندگی نسخههای مختلف اندروید.....................................
33
کتابخانه پشتیبان اندروید............................................................
34
خلاصه..........................................................................................
35
فصل 2...............................................................................
36
محیط توسعه
برنامه.........................................................................
36
زنجیره
ابزارهای اندروید.................................................................
36
کیت توسعه نرمافزار اندروید (SDK)............................................
36
کیت توسعه نرمافزارِ بومی اندروید (NDK)...................................
37
ابزارهای توسعه اندروید برای اکلیپس..........................................
38
اندروید استودیو.........................................................................
38
تنظیمات مربوط
به محیط توسعه.....................................................
38
نصب بر روی ویندوز مایکروسافت...............................................
39
دانلود و نصب
JDK در ویندوز.........................................................................
39
دانلود و نصب اندروید استودیو بر روی ویندوز...................................................
40
نصب بر روی مک او اِس اپِل.......................................................
40
دانلود و نصب
JDK بر روی
Mac OS X.........................................................
40
دانلود و نصب اندروید استودیو بر روی
Mac OS X..........................................
41
نصب روی لینوکسِ اوبونتو..........................................................
41
دانلود و نصب
JDK بر روی
Linux................................................................
42
دانلود و نصب اندروید استودیو بر روی لینوکسِ ابونتو........................................
42
یک برنامه
ساده Hello
Android..................................................... 43
ایجاد یک پروژه جدید اندروید.....................................................
43
ساخت برنامه اندروید.................................................................
47
اجرای برنامه اندروید..................................................................
47
فعال کردن حالت
USB debuge
در دستگاه اندرویدی..................................... 48
اجرای برنامه بر روی دستگاه اندرویدی...........................................................
49
خلاصه..........................................................................................
50
فصل 3...............................................................................
51
اجزاء مختلف
یک برنامه اندروید........................................................
51
اکتیویتی
(فعالیت).........................................................................
51
ایجاد یک اکتیویتی....................................................................
52
اعلان یک اکتیویتی...................................................................
52
چرخهِ حیات یک اکتیویتی..........................................................
53
هدفها..........................................................................................
56
تفکیک هدف (Intent
Resolution)................................................
57
فیلترهای هدف (Intent Filters)...................................................
58
گرفتن و بیرون کشیدن هدف.......................................................
59
هدفهای مُعوق (Pending Intent)................................................
60
ایجاد یک هدف معوق....................................................................................
60
سرویسها....................................................................................
61
ایجاد یک سرویس.....................................................................
62
اعلان یک سرویس....................................................................
62
محدود کردن دسترسی به یک سرویس.......................................
63
چرخه حیات یک سرویس...........................................................
64
روند شروع دوباره یک سرویس...................................................
65
شروع یک سرویس....................................................................
66
شروع یک سرویس با یک هدف..................................................
66
سرویسِ هدف................................................................................................
67
متصل شدن به یک سرویس.......................................................
67
سرویس محلی...............................................................................................
68
سرویس دور...................................................................................................
69
سرویسهای سیستمی...............................................................
74
فراهم
کنندههای محتوا...................................................................
76
ایجاد یک فراهم کننده محتوا.......................................................
77
قرارداد مربوط به فراهمکنندههای محتوا.......................................
79
اعلان یک فراهم کننده محتوا.......................................................
80
امنیت فراهم کنندههای محتوا......................................................
81
دسترسی به یک فراهم کننده محتوا.............................................
81
فراهم کنندههای محتوای سیستمی..............................................
82
پیامهای
منتشر شونده...................................................................
83
فرستادن یک پیام منتشر شونده.................................................
84
دریافت پیامهای منتشر شونده....................................................
84
ثبت پیامهای منتشر شونده از طریق فایل اعلانیه............................................
85
ثبت پیامهای منتشر شونده از طریق کُدِ برنامه................................................
85
چرخه حیات گیرنده پیام.............................................................
86
امنیت گیرنده پیام......................................................................
86
کانتکس برنامه..............................................................................
86
برنامه...........................................................................................
87
خلاصه..........................................................................................
88
فصل 4...............................................................................
89
منابع برنامه......................................................................................
89
ساختار منابع.................................................................................
90
گروهبندی منابع مختلف..............................................................
91
منابع انیمیشنهای نوع
property...............................................
92
منابع انیمیشنهای نوع
Tween....................................................
93
منابع فهرستِ رنگِ حالت.........................................................
94
منابع قابلنمایش.......................................................................
94
فایلهای
Bitmap..........................................................................................
95
فایلهای 9- تکه (Nine-Patch)......................................................................
95
اشکال قابلنمایش.....................................................................
97
وضعیتهای قابلنمایش.............................................................
97
منابع الگویی..............................................................................
98
منابع مِنو...................................................................................
99
منابع خام..................................................................................
99
منابع مقداری..........................................................................
100
منابع مقداری رشتهای...................................................................................
101
منابع مقداری بولی........................................................................................
103
منابع مقداری رنگ.......................................................................................
104
منابع بُعد......................................................................................................
105
منابع اعداد صحیح........................................................................................
106
منابع آرایههای گونه دار................................................................................
107
منابع
XML.............................................................................
108
منابع جایگزین
و پیشفرض.........................................................
109
تعریف منابع جایگزین..............................................................
109
کلمههای توصیفکنندهِ پیکرهبندی که از آنها پشتیبانی میشود.... 110
رسیدگی به تغییرات زماناجراء......................................................................
113
داراییها.....................................................................................
114
استفاده از داراییها در
WebView................................................................
115
گسترش
فایلهای APK............................................................... 115
خلاصه........................................................................................
116
فصل 5.............................................................................
117
الگوها و
نماها.................................................................................
117
الگوها.........................................................................................
117
اعلان الگوها............................................................................
117
الزامات یک الگو.......................................................................
118
الگوهای معمول........................................................................
119
الگوی خطی.................................................................................................
119
الگوهای نسبی.............................................................................................
122
الگوهای پویا...............................................................................
125
وفق دهنده..............................................................................
126
وفقدهندههای آرایه.....................................................................................
126
وفقدهندههای
Cursor ساده........................................................................
126
وفقدهندههای سفارشی...............................................................................
127
اطلاع رسانی درباره تغییرات در
Data set......................................................
129
وفقدهنده الگوی نما....................................................................................
130
رسیدگی به رویدادهای انتخاب آیتمها...........................................................
135
بارگذاری منابع الگوی
XML.....................................................
136
دستیابی انفرادی به هر یک از نماها در یک الگو.......................... 136
اختصاص یک شناسه (ID) منحصربفرد به یکی از اعضای نما....................... 137
پیدا کردن یک نما با استفاده از
ID
آن.......................................................... 137
نماها..........................................................................................
138
کنترلهای خروجی...................................................................
138
TextView..................................................................................................
138
ImageView................................................................................................
140
ProgressBar..............................................................................................
141
Space.........................................................................................................
143
کنترلهای ورودی.....................................................................
144
EditText....................................................................................................
144
Button.......................................................................................................
145
ImageButton.............................................................................................
147
ToggleButton،
Switch، و
CheckBox.....................................................
147
دکمههای رادیویی (Radio
Button).............................................................
151
قطعهها.......................................................................................
153
ایجاد یک قطعه.......................................................................
153
اضافه کردن یک قطعه به یک اکتیویتی.....................................
155
اضافه کردن یک قطعه به یک اکتیویتی از طریق فایل الگو........................ 155
اضافه کردن یک قطعه به یک اکتیویتی از طریق برنامه............................. 156
جاگزینی یک قطعه...................................................................
157
مدیریت پُشته
Back.....................................................................................
157
اضافه کردن یک رابط کاربری به یک قطعه................................
158
فرستادن آرگومانها به یک قطعه..............................................
159
استفاده از آرگومانها در یک قطعه................................................................
159
ارتباط بین اکتیویتی و یک قطعه...............................................
160
دسترسی به آکتیویتی از داخل یک قطعه.....................................................
160
دسترسی به قطعه از داخل یک آکتیویتی.....................................................
160
خلاصه........................................................................................
161
فصل 6.............................................................................
162
رابط کاربر......................................................................................
162
نوار فعالیت.................................................................................
162
افزودن یک نوار فعالیت............................................................
163
برداشتن نوار فعالیت................................................................
164
افزودن فعالیتها به نوار فعالیت................................................
164
تعریف فعالیتها برای نوار فعالیت.................................................................
164
کنترل نمایش فعالیتها در نوار فعالیت..........................................................
165
نمایش فعالیتها در نوارِ فعالیت....................................................................
166
رسیدگی به رویداد کلیکِ فعالیتها................................................................
166
نماهای فعالیت.........................................................................
168
افزودن نمای فعالیت به نوار فعالیت...............................................................
168
دسترسی به نمونهای
از نمای فعالیت.............................................................
169
جمع شدن نمای فعالیت برای حفظ جا..........................................................
169
فراهمکنندهگان فعالیت.............................................................
170
افزودن فراهمکننده فعالیت به نوار فعالیت.....................................................
171
مقداردهیه اولیه به فراهمکنندهگان فعالیت.....................................................
171
پنجرههای
زودگذر.......................................................................
172
دیالوگها....................................................................................
173
انواع دیالوگ............................................................................
173
دیالوگهای هشداردهنده..............................................................................
174
دیالوگهای انتخاب تاریخ.............................................................................
182
دیالوگهای انتخاب زمان.............................................................................
183
دیالوگهای نشاندهنده پیشرفت..................................................................
185
نمایش یک دیالوگ..................................................................
186
اخطار
دهندهها.............................................................................
187
دسترسی به سرویس پیامهای اخطار دهنده...............................
188
فرستادن یک پیام اخطار دهنده.................................................
188
اضافه کردن فعالیت به یک اخطار دهنده....................................
189
پُشته
Back..................................................................................................
189
اضافه کردن دکمههای فعالیت به یک اخطار دهنده...................... 191
آپدیت کردن اخطار دهندهها......................................................
192
باطل کردن یک اخطار دهنده.....................................................
193
خلاصه........................................................................................
193
فصل 7.............................................................................
195
ذخیرهسازی
دادهها.........................................................................
195
فایلهای ساده.............................................................................
195
استفاده از ذخیرهساز داخلی......................................................
195
استفاده از ذخیره کنندههای خارجی............................................
197
دستیابی به ذخیره کنندههای خارجی.............................................................
197
بررسی اینکه آیا ذخیره کننده خارجی موجود است یا نه.................................. 198
گرفتن مسیر ذخیره کننده خارجی..................................................................
199
کَش کردن دادهها با استفاده از ذخیره کنندهها............................ 201
سازماندهی دادهها بوسیله
JSON...............................................
202
نوشتن دادهها با استفاد از
JSON...................................................................
202
اولویتهای
مشترک.....................................................................
204
بازکردن اولویتهای مشترک....................................................
204
باز کردن اولویتهای مشترک اکتیویتی......................................................
204
باز کردن اولویتهای مشترکِ پیشفرض.....................................................
205
باز کردن اولویتهای مشترک عمومی..........................................................
205
اضافه کردن و ویرایش اولویتهای مشترک...............................
205
خواندن اولویتهای مشترک......................................................
206
گوشدادن به تغییراتی که در اولویتهای مشترک پدید میآید..... 206
صفحه اولویتها.......................................................................
207
پیکرهبندی صفحه اولویتها..........................................................................
207
نمایش صفحه اولویتها...............................................................................
208
پایگاه
دادهای رابطهای SQLite..................................................... 209
ایجاد یک پایگاه داده و باز کردن آن..........................................
209
ایجاد جداول............................................................................
211
ارتقاء پایگاههای داده موجود.....................................................
212
نوشتن در یک پایگاه دادهای.....................................................
212
درج دادهها در یک پایگاه دادهای..................................................................
212
آپدِیت دادههای موجود در یک پایگاه دادهای.................................................
213
خواندن از یک پایگاه داده.........................................................
214
خواندن سطرها از یک پایگاهداده..................................................................
215
حذف دادهها از یک پایگاه داده..................................................
216
حذف کلیه دادههای موجود در یک پایگاهداده..............................
216
سرویس
پشتیبانگیر اندروید.......................................................
217
ثبتنام برای سرویس پشتیبانگیر اندروید................................
217
اضافه کردن کلید پشتیبانگیر به فایل اعلانیه برنامه.................... 218
پیادهسازی عامل پشتیبانگیر....................................................
218
اعلان عامل پشتیبانگیر در فایل اعلانیه برنامه........................... 220
درخواست پشتیبانی گیری........................................................
220
آزمایش پیادهسازی عاملِ پشتیبانگیرِ.......................................
220
خلاصه........................................................................................
221
فصل 8.............................................................................
223
حسگرها و
موقعیتیابها...............................................................
223
حسگرها.....................................................................................
223
مدیریت حسگر........................................................................
223
انواع حسگرها...............................................................................................
224
گرفتن حسگر پیشفرض برای انواع حسگرها................................................
225
گرفتن لیست کلیه حسگرها برای نوع خاصی از حسگر.................................. 225
دریافت رویدادهای مربوط به حسگرها.......................................
226
گرفتن حالتِ گزارشِ حسگر..........................................................................
226
گرفتن رویدادهای حسگر در حال-پیوسته و درحال-تغییر............................... 227
دریافت رویدادهای یکبار-گزارش.................................................................
229
تفسیر رویدادهای حسگر..........................................................
230
مقادیر رویدادها بر اساس نوع حسگر.............................................................
231
موقعیتیابی................................................................................
233
مجوزهای موقعیت....................................................................
233
مدیریت مکان.........................................................................
234
فراهم آورندگان موقعیت...........................................................
234
بررسی برای دردسترس بودن فراهم آورنده موقعیت......................................
234
گوشدادن برای تغییر وضعیت فراهم آورنده محتوا.........................................
235
بههنگام سازی موقعیت............................................................
236
بههنگام سازی موقعیت پیوسته.....................................................................
236
درخواست دریافت یک بههنگامرسانی موقعیت تَکی......................................
238
هشداردهندههای نزدیکی به یک مکان مشخص..........................................
238
تثبیت موقعیت با استفاده از آخرین موقعیتِ معلوم...........................................
239
بههنگام رسانیهای موقعیت.........................................................................
239
خلاصه........................................................................................
240
فصل 9.............................................................................
241
رسانهها و
دوربین...........................................................................
241
مدیریت صُوت.............................................................................
241
دستگاههای صوتی...................................................................
241
میکروفون....................................................................................................
242
بلندگو...........................................................................................................
242
جریانهای صوتی....................................................................
243
تنظیم بلندی صدای جریانهای صوتی.........................................................
244
صامت کردن یک جریان صوتی...................................................................
246
تَک نوازی یک جریان صوتی........................................................................
246
بررسی اینکه آیا موسیقی فعال است یا نه......................................................
247
پخش صداها...........................................................................
247
MediaPlayer.........................................................................
247
AsyncPlayer.............................................................................................
250
مخزنِ صوت (SoundPool).........................................................................
250
ایجاد یک مخزنِ صوت................................................................................
251
بارگذاری اصوات نمونه به داخل
SoundPool................................................
252
پخش اصوات نمونه از
SoundPool..............................................................
253
خارج کردن یک نمونه صوتی از
SoundPool...............................................
254
آزاد سازی
SoundPool................................................................................
254
ضبط صدا................................................................................
254
درخواست مجوز برای ضبط صدا...................................................................
254
پیکرهبندی منبعِ صدا برای ضبط...................................................................
255
پیکرهبندی خروجی صدا برای ضبط..............................................................
255
شروع ضبط صدا...........................................................................................
257
متوقف کردن ضبط صدا...............................................................................
257
آزادسازی
MediaRecorder.........................................................................
257
پخش ویدئو................................................................................
257
ایجاد یک سطح برای پخش ویدئوها.........................................
258
شروع پخش ویدئو..................................................................
259
متوقف کردن پخش ویدئو.........................................................
260
ضبط ویدئو..................................................................................
260
ایجاد یک سطح برای پیشنمایش ویدئوی درحال ضبط.............. 260
پیکرهبندی سطح برای ضبط ویدئو............................................
261
پیکرهبندی رمزگذار برای ضبط ویدئو.........................................
261
دوربین.......................................................................................
261
درخواست مجوز برای دسترسی به دوربین.................................
262
مدیریت دوربین.......................................................................
262
گرفتن ID دوربینها.....................................................................................
263
گرفتن ویژگی دوربینها................................................................................
263
بازکردن دوربین.......................................................................
264
ضبط از طریق دوربین...............................................................
266
گرفتن اندازه خروجی پشتیبانی شده توسط دوربین..........................................
266
تنظیم اندازه سطح پیشنمایش دوربین...........................................................
266
ایجاد یک جلسه ضبط با دوربین................................................
267
درخواست ضبط با دوربین.............................................................................
268
فرستادن
CameraCaptureRequest...................................................
270
خلاصه........................................................................................
271
فهرستها.........................................................................
273
فهرست انگلیسی........................................................................
273
فهرست فارسی 278