می خواستم بدونم Context در برنامه نویسی اندروید چیست و چه کاربردی دارد؟ چون تقریبا در هر بخشی از برنامه نویسی اندروید که میبینم Context استفاده شده ولی دقیقا نمی دونم کجاها باید از این شی استفاده کنم.
الان مثلا در کد زیر
public static Context context;
context = getApplicationContext();
توی یکی از آموزشهای اندروید این کد رو دیدم. می خوام بدونم حالا دقیقا کاربردش چی هست ؟
در برنامه نویسی اندروید Context یکی از موضوعاتی هست که تقریبا میشه گفت بیشترین کاربرد رو داره. البته در ابتدا پیشنهاد می کنم زیاد درگیر مفاهیم نشید چون خیلی پیچیده میشه و بهتره که کاربرد دستورات رو یاد بگیرید و ببینید کجاها استفاده میشه.
Context چیست ؟
خب حالا مفهوم Context رو توضیح میدم. در واقع Context شالوده و زیرساخت یک برنامه اندرویدی هست. میشه گفت Context وضعیت برنامه رو شرح میده و توسط اون می تونید برنامه رو کنترل کنید.
از Context در اکتیویتی ها، سرویس ها، intent ها، دیتابیس و ... استفاده میشه. البته باید دقت کنید که استفاده اشتباه از Context باعث میشه منابع زیادی از هدر بره. در واقع میتوان گفت Context یک کلاس پایه برای Activity ها، Service ها و در مجموع کل برنامه نویسی اندروید می باشد. یعنی هر کدام از اجزای اندروید مثل اکتیویتی بعضی از خواص خود را از Context ارث برده است. یعنی میشه گفت Context یک تعریف کلی از نرم افزار یا اپلیکیشن شما می باشد.
به طور ساده شما هر عملیاتی که انجام میدید و با هر آبجکتی که کار می کنید بعضی از خواص خودش رو از کلاس Context ارث بری کرده. مثلا وقتی کلاس شما ارث بری میکنه از activity خود کلاس اکتیوتی هم ارث بری کرده از CotextTheme و این کلاس هم از Context ارث بری میکنه.
در Context بسیاری از امکانات لازم جهت هر کاری قرار داده شده مثلا شما می خواید یک ارتباط با دیتابیس برقرار کنید باید از متد زیر استفاده کنید
OpenOronCreateDatabase()....
که خود این متد از Context ارث بری کرده و در اونجا تعریف شده.
انواع Context در اندروید
در کل 2 نوع Context بر اساس نحوه استفاده از آنها وجود داره:
UI Context
هر جایی که با UI سر و کار داریم از این مدل Context استفاده میشه. مثلا در اکتیویتی ها. این نوع از Context ها برای عملیات کوتاه مدت استفاده میشن.
Non-UI Context
عملیاتی که در UI Context ها قابل انجام نیست جزو Non-UI Context ها می شود. البته این نوع از Context ها همه عملیات مربوط به UI Context ها را هم شامل می شود.
در لینکی که قرار میدم اطلاعات کامل تری در مورد Context In Android وجود داره.
در شکل زیر مفهوم بهتری از Context رو میتونید ببینید.
تاریخ :
1399/06/04
- ساعت :
02:25:00 PM
- بازدید :
4419
- پاسخ :
2
|
تاریخ :
1398/08/15
- ساعت :
01:40:00 PM
- بازدید :
3899
- پاسخ :
1
|
تاریخ :
1399/08/21
- ساعت :
09:16:00 PM
- بازدید :
3596
- پاسخ :
2
|
تاریخ :
1399/08/22
- ساعت :
07:24:00 PM
- بازدید :
3816
- پاسخ :
2
|
تاریخ :
1398/08/20
- ساعت :
02:43:00 AM
- بازدید :
6381
- پاسخ :
5
|
تاریخ :
1398/08/14
- ساعت :
12:03:00 AM
- بازدید :
3191
- پاسخ :
1
|
تاریخ :
1398/08/14
- ساعت :
12:10:00 AM
- بازدید :
4456
- پاسخ :
1
|
تاریخ :
1399/07/10
- ساعت :
01:11:00 AM
- بازدید :
2999
- پاسخ :
4
|
تاریخ :
1399/12/24
- ساعت :
09:34:00 PM
- بازدید :
2798
- پاسخ :
1
|
تاریخ :
1400/02/29
- ساعت :
09:58:00 AM
- بازدید :
3763
- پاسخ :
2
|
تاریخ :
1404/01/07
- ساعت :
05:02:00 AM
- بازدید :
89
- پاسخ :
1
|
تاریخ :
1402/04/28
- ساعت :
09:04:00 PM
- بازدید :
1314
- پاسخ :
0
|
تاریخ :
1403/12/30
- ساعت :
06:43:00 PM
- بازدید :
66
- پاسخ :
1
|
تاریخ :
1398/08/23
- ساعت :
09:16:00 PM
- بازدید :
9852
- پاسخ :
1
|
تاریخ :
1404/01/03
- ساعت :
12:18:00 PM
- بازدید :
38
- پاسخ :
1
|
تاریخ :
1404/01/03
- ساعت :
10:39:00 AM
- بازدید :
45
- پاسخ :
1
|
تاریخ :
1404/01/02
- ساعت :
05:05:00 PM
- بازدید :
60
- پاسخ :
1
|
تاریخ :
1403/12/30
- ساعت :
06:52:00 PM
- بازدید :
48
- پاسخ :
1
|
تاریخ :
1399/06/04
- ساعت :
02:25:00 PM
- بازدید :
4419
- پاسخ :
2
|
تاریخ :
1403/11/30
- ساعت :
10:36:00 AM
- بازدید :
202
- پاسخ :
2
|