Laboratoriya ishi №16 Mavzu: Voqealar (intents)


Download 1.54 Mb.
bet6/6
Sana05.01.2023
Hajmi1.54 Mb.
#1079842
1   2   3   4   5   6
Bog'liq
V4Z-xNaOmQAahUwVDNttZzzoKCT-FHY0

Laboratoriya ishi №20
Kontent provayderlari ilovaga o'zi tomonidan saqlangan, boshqa ilovalar tomonidan saqlanadigan ma'lumotlarga kirishni boshqarishda yordam berishi va ma'lumotlarni boshqa ilovalar bilan almashish usulini taqdim etishi mumkin. Ular ma'lumotlarni qamrab oladi va ma'lumotlar xavfsizligini aniqlash mexanizmlarini taqdim etadi. Kontent provayderlari bir jarayondagi ma'lumotlarni boshqa jarayonda ishlaydigan kod bilan bog'laydigan standart interfeysdir. Kontent provayderini amalga oshirish juda ko'p afzalliklarga ega. Eng muhimi, 1-rasmda ko'rsatilganidek, boshqa ilovalarga ilova ma'lumotlaringizga xavfsiz kirish va o'zgartirish imkonini beradigan kontent provayderini sozlashingiz mumkin.



1-rasm Kontent provayderlari saqlashga kirishni qanday boshqarishining umumiy diagrammasi.


Agar siz ma'lumot almashishni rejalashtirmoqchi bo'lsangiz, kontent provayderlaridan foydalaning. Agar siz ma'lumot almashishni rejalashtirmasangiz, siz hali ham ulardan foydalanishingiz mumkin, chunki ular yaxshi mavhumlikni ta'minlaydi, ammo kerak emas. Ushbu abstraktsiya ma'lumotlaringizga kirishga tayanadigan boshqa mavjud ilovalarga ta'sir qilmasdan, ilova ma'lumotlarini saqlashni amalga oshirishga o'zgartirishlar kiritish imkonini beradi. Bu stsenariyda faqat sizning kontent provayderingiz ta'sir qiladi, unga kiradigan ilovalar emas. Masalan, 2-rasmda ko'rsatilganidek, SQLite ma'lumotlar bazasini muqobil saqlash uchun almashtirishingiz mumkin.





2 - rasm Migratsiya qiluvchi kontent provayderi xotirasi tasviri.

Bir qator boshqa sinflar ContentProvider sinfiga tayanadi:


AbstractThreadedSyncAdapter


CursorAdapter
CursorLoader

Agar siz ushbu sinflardan birortasidan foydalanayotgan bo'lsangiz, ilovangizda kontent provayderini ham qo'llashingiz kerak. Sinxronlash adapteri ramkasi bilan ishlaganda muqobil sifatida stub kontent provayderini ham yaratishingiz mumkinligini unutmang. Ushbu mavzu bo'yicha qo'shimcha ma'lumot olish uchun stub kontent provayderini yaratish bo'limiga qarang. Bundan tashqari, sizga quyidagi hollarda o'z kontent provayderingiz kerak bo'ladi:


1.Ilovangizda maxsus qidiruv takliflarini amalga oshirmoqchisiz


2.Ilova maʼlumotlaringizni vidjetlarga koʻrsatish uchun kontent provayderidan foydalanishingiz kerak
3.Ilovangizdagi murakkab ma'lumotlar yoki fayllarni boshqa ilovalarga nusxalash va joylashtirishni xohlaysiz

Android tizimi audio, video, tasvirlar va shaxsiy aloqa ma'lumotlari kabi ma'lumotlarni boshqaradigan kontent provayderlarini o'z ichiga oladi. Ulardan ba'zilarini android.provider to'plami uchun ma'lumotnoma hujjatlarida ko'rishingiz mumkin. Ba'zi cheklovlar bilan ushbu provayderlar har qanday Android ilovasiga kirishlari mumkin. Kontent provayderi turli xil ma'lumotlarni saqlash manbalariga, jumladan SQLite relyatsion ma'lumotlar bazasi kabi tuzilgan ma'lumotlarga yoki tasvir fayllari kabi tuzilmagan ma'lumotlarga kirishni boshqarish uchun ishlatilishi mumkin. Android-da mavjud bo'lgan saqlash turlari haqida qo'shimcha ma'lumot olish uchun Saqlash opsiyalari, shuningdek, Ma'lumotlarni saqlashni loyihalash bo'limlariga qarang.


Kontent provayderlarining afzalliklari
Kontent provayderlari ma'lumotlarga kirish uchun ruxsatlar ustidan batafsil nazoratni taklif qiladi. Siz kontent provayderiga kirishni faqat ilovangiz ichidan cheklashni tanlashingiz, boshqa ilovalardagi maʼlumotlarga kirish uchun umumiy ruxsatnoma berishingiz yoki maʼlumotlarni oʻqish va yozish uchun turli ruxsatlarni sozlashingiz mumkin. Kontent provayderlaridan xavfsiz foydalanish boʻyicha qoʻshimcha maʼlumot olish uchun maʼlumotlarni saqlash boʻyicha xavfsizlik boʻyicha maslahatlar hamda Kontent provayderi ruxsatnomalariga qarang. Ilovangizdagi turli maʼlumotlar manbalariga kirish tafsilotlarini oʻchirib tashlash uchun kontent provayderidan foydalanishingiz mumkin. Masalan, ilovangiz tuzilgan yozuvlarni SQLite ma'lumotlar bazasida, shuningdek, video va audio fayllarda saqlashi mumkin. Agar ilovangizda ushbu ishlab chiqish namunasini qo'llasangiz, ushbu ma'lumotlarning barchasiga kirish uchun kontent provayderidan foydalanishingiz mumkin.
Shuni ham yodda tutingki, CursorLoader ob'ektlari asinxron so'rovlarni bajarish uchun kontent provayderlariga tayanadi va natijalarni ilovangizdagi UI qatlamiga qaytaradi. Ma'lumotlarni fonda yuklash uchun CursorLoader-dan foydalanish haqida qo'shimcha ma'lumot olish uchun CursorLoader bilan so'rovni ishga tushirish-ga qarang.
Quyidagi mavzular kontent provayderlarini batafsilroq tavsiflaydi:


Kontent provayderi asoslari
Mavjud kontent provayderi yordamida ma'lumotlarga qanday kirish va yangilash.


Kontent provayderini yaratish
O'z kontent provayderingizni qanday loyihalash va amalga oshirish.


Kalendar provayderi
Android platformasining bir qismi bo'lgan Taqvim provayderiga qanday kirish mumkin.


Kontaktlar provayderi
Android platformasining bir qismi bo'lgan Kontaktlar provayderiga qanday kirish mumkin.
Download 1.54 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling