|
Izolyatsiya va kirishni boshqarish
|
bet | 8/9 | Sana | 29.01.2024 | Hajmi | 1,07 Mb. | | #147865 |
Bog'liq sjkdhsIzolyatsiya va kirishni boshqarish: Ilova izolyatsiyasini va donador kirish nazoratini kuchaytirish uchun eksperimental texnologiyalar amalga oshirilmoqda. Bunga malloc ning xususiy ilovasidan foydalanish, xotira buzilishidan himoyalangan libc ning o'zgartirilgan versiyasi va jarayon manzillar maydonini yanada qattiqroq taqsimlash kiradi.
AOT va JIT bo'lmagan kompilyatsiya: Android Runtime JIT (just-in-time) o'rniga faqat AOT (vaqtdan oldin) kompilyatsiyasidan foydalanadi.
Himoyalangan Linux yadrosi: Linux yadrosi ko'plab qo'shimcha himoya mexanizmlarini o'z ichiga oladi, masalan, bufer toshib ketishini blokirovka qilish uchun kanareyka teglari. Ilova izolyatsiyasini yaxshilash uchun SELinux va seccomp-bpf ishlatiladi.
Maxsus ruxsat nazorati: Tarmoq operatsiyalari, sensorlar, manzillar kitobi va periferik qurilmalarga kirishga faqat tanlangan ilovalarga ruxsat beriladi. Buferdan o'qish faqat kirish fokusli ilovalar uchun ruxsat etiladi.
Identifikator maxfiyligi: Odatiy bo'lib, IMEI, MAC manzili, SIM karta seriya raqami va boshqa apparat identifikatorlari haqida ma'lumot olish taqiqlanadi.
Xavfsizlik: Wi-Fi va Bluetooth bilan bog'liq jarayonlarni izolyatsiya qilish va simsiz faollikni oldini olish uchun qo'shimcha chora-tadbirlar amalga oshirilmoqda.
rivojlangan shifrlash: Yuklash komponentlarini kriptografik tekshirish va ext4 va f2fs fayl tizimi darajasida ilg‘or shifrlashdan foydalanadi (ma’lumotlar AES-256-XTS yordamida shifrlangan va fayl nomlari HKDF-SHA256 yordamida AES-512-CTS, har bir fayl uchun alohida kalit yaratish uchun) , blok qurilma o'rniga
Googlesiz:Asosan, u Google ilovalari va xizmatlarini oʻz ichiga olmaydi, lekin Google Play xizmatlarini alohida muhitda oʻrnatish imkonini beradi.
O'z ilovalarini ishlab chiqish: Loyiha Chromium (Vanadium) asosidagi brauzer, xavfsiz PDF koʻruvchi, xavfsizlik devori, qurilmalarni tekshirish va tajovuzni aniqlash uchun Auditor ilovasi, maxfiylikka yoʻnaltirilgan kamera ilovasi va shifrlangan dastur kabi xavfsizlik va maxfiylikka yoʻnaltirilgan bir nechta xususiy ilovalarni ishlab chiqadi. Seedvault deb nomlangan zaxira tizimi.
II BOB
Android Studio, Android ilovalarini ishlab chiqish uchun qo'llaniladigan ofitsial IDE (Integrlangan O'qituvchi Muhit)dir. Grafik interfeysni yaratish uchun Android Studio-da ko'plab vositalar mavjud, lekin asosiy qismlar Android XML fayllari orqali yaratiladi. Bu fayllar ko'pincha "res/layout" papkasi ichida saqlanadi.
Grafik interfeysini yaratish uchun quyidagi qadamlarni bajarishingiz mumkin:
1.Layout faylini yaratish:"res/layout" papkasida yangi XML fayl yaratishingiz kerak. Masalan, "activity_main.xml" deb nomlangan fayl:
2.Interfeys elemntlarini qo’shish:XML faylida "RelativeLayout" yoki boshqa layout elementlaridan foydalanib, u yerda ko'rsatilayotgan interfeysni yaratish mumkin. Misol uchun, bir "TextView" qo'shish:
Bu misolda, "TextView" elementi "myTextView" identifikatoriga ega bo'lgan yangi matnni o'z ichiga oladi va markazga joylashtiriladi.
3.Java koddagi foydalanuvchi interfeysiga o’xshash elementni tanlash:"MainActivity.java" yoki boshqa faqat XML faylida yaratilgan interfeysni ishlatish uchun Java koddagi ilovalarga ulanish. Misol uchun, "myTextView" elementini tanlash:
Ushbu koddan so'ng, ilova ishga tushirilganda, "Salom, Android!" matni "myTextView" elementiga yoziladi va ekranda ko'rsatiladi.
Bu qadam-qadam "Android Studio"da grafik interfeysini yaratishning umumiy usuli. O'rganish jarayonida ko'p xil elementlar va xususiyatlarga ega bo'lgan boshqa interfeys komponentlari qo'shishingiz mumkin.
"Android Studio"da grafik interfeysini yaratishning boshqa usullari quyidagilar o'z ichiga oladi:
1. **Layout Editor (XML muhiti):** Yukoridagi misolda keltirilgan XML tili orqali interfeys yaratish. Lekin, Android Studio Layout Editor muhiti orqali ham grafik interfeysini o'zgartirish va yaratish mumkin. Muayyan qismlar ko'rsatilgan, ularni surish va tashlash, yangi komponentlarni qo'shish, qo'shilgan komponentlarni tahrirlash, va boshqa interfeys amallarini bajarish mumkin.
- **XML va Design View:** Layout Editor, faylni XML kodini ko'rsatish yoki Visual Design Viewda ko'rsatish imkoniyatiga ega. Bu, faylning kodini ko'rib turingan holda va interfeysni ko'rishni osonlashtiradi.
2. **Palette Paneli:** Android Studio'da "Palette" panelini ochib, interfeys elementlarini to'plam va ulardan tanlash mumkin. Bu panel orqali qo'shish, tahrirlash va o'chirish imkoniyatiga ega bo'lgan qismlarga erishish mumkin.
3. **Code View va Split View:** XML faylini tahrir qilish uchun "Code View"ni ishlatish mumkin. Bu, faylni kodlash uchun matn muhiti tashkil etadi. "Split View" esa "Design" va "Code"ni bir vaqtda ko'rish uchun ishlatiladi.
4. **Resource Manager:** Android Studio "Resource Manager" orqali tasvirlar, matnlar, ranglar va boshqa resurslarni boshqarishga imkon beradi. Bu orqali resurslarni qo'shish, o'zgartirish va boshqa amallarni bajarishingiz mumkin.
5. **ConstraintLayout:** "ConstraintLayout" Android Studio-da interfeys yaratish uchun tavsiya etiladigan boshqa bir usuldir. Bu, elementlarni boshqa elementlar bilan bog'lashda aniq o'lchov va joylashuvni ta'minlaydigan kuchli va oson interfeys yaratish uchun ishlatiladi.
6. **Data Binding:** "Data Binding" orqali interfeys elementlarini ma'lumotlar bilan bog'lash imkoniyati mavjud. Bu, Java yoki Kotlin koddagi ma'lumotlarni o'zgartirishda va interfeysni dinamik qilishda foydalaniladi.
Android Studio'da grafik interfeysini yaratishning boshqa usullari va tafsilotlari quyidagicha:
1. **Activity ve Fragment Templates:** Android Studio, yangi "Activity" va "Fragment" lar yaratish uchun ma'lumotlar bilan to'ldirilgan templatlarga ega. Bu templatlar ishlatilgan holatda avtomatik ravishda XML fayllarini va Java (yoki Kotlin) koddagi ma'lumotlarni yaratadi. Yangi faoliyat yoki fragment yaratish uchun:
- Yangi faoliyat yaratish: `File -> New -> Activity -> Basic Activity`
- Yangi fragment yaratish: `File -> New -> Fragment -> Fragment (Blank)`
2. **Drag-and-Drop Visual Editor:** Android Studio Layout Editor muhiti orqali drag-and-drop usuli orqali interfeys elementlarini qo'shish va joylashtirish mumkin. Faylni oching, "Design" tugmasini bosib, "Palette" panel orqali kerakli elementlarni tanlang va interfeysni o'zingiz yaratib olasiz.
3. **Vector Asset Studio:** "Vector Asset Studio" orqali Android ilovangiz uchun vektoral tasvirlarni yaratishingiz mumkin. Bu, "Drawable" fayllarini yaratish uchun kerakli bo'lgan interfeys komponentlarini o'z ichiga oladi. Menyu ichidan "File -> New -> Vector Asset" ni tanlash orqali ishlatiladi.
4. **Material Design Components:** "Material Design" komponentlari Android Studio'da yaratish uchun oson imkoniyatlar ta'minlaydi. Bu, kichik elementlardan boshlab, bo'ylab yangi dizaynlar qurish uchun mo'ljallangan. "Palette" panelda "Material Components" qismi mavjud.
5. **ConstraintLayout Editor:** "ConstraintLayout" - bu Android Studio'da standart layout hisoblanadi, chunki bu layout elementlarini boshqa elementlar bilan bog'lash uchun aniq joylashuv va o'lchovni ta'minlaydi. "Design" muhitida "ConstraintLayout" bilan ishlash oson va samarali.
6. **Data Binding:** "Data Binding" orqali ma'lumotlarni interfeys elementlari bilan bog'lash mumkin. Buning uchun "build.gradle" faylida data binding ni qo'shing va XML faylda ma'lumotlarni o'zgartirish uchun "data" teglaridan foydalaning.
7. **Resource Manager:** "Resource Manager" orqali resurslarni boshqarish va ulardan foydalanish imkoniyati mavjud. Bu qo'llanma, tasvirlar, animatsiyalar, matnlar va boshqa resurslar bilan ishlashda yordam beradi.
8. **Gradle Scripts:** Ma'lumotlarni boshqarish uchun Gradle skriptlari orqali qo'shimcha resurslarni, konfiguratsiyalarni va o'zgartirishlarni bajarish mumkin. "build.gradle" fayllarida ilova sozlamalari va dependensiyalarni o'zgartirish uchun foydalaniladi.
Afsuski, men rasm qo'llash imkoniyatiga ega emasman, lekin men sizga Android Studio-da grafik interfeysini yaratishni tavsif qilishga davom etaman. Siz o'zingizning Android ilovangiz uchun foydalanadigan kodlarni yaratishni boshqarish uchun quyidagi qadam-qadam usullardan birini tanlab, keyinroq tafsilotlarga kirmoq uchun baho bering.
Usul 1: **Layout Editor orqali yangi XML fayl yaratish:**
1. Android Studio'da "res/layout" papkasida yangi XML fayli yaratish.
2. Faylni "Design" qismida oching.
3. "Palette" panel orqali interfeys elementlarini tanlang va joylashtiring.
4. Har bir elementning xususiyatlarini, o'lcham va joylashuvi bo'yicha kerakli sozlamalarni qo'shing.
5. "Code" qismida XML kodini ko'ring.
Usul 2: **Drag-and-Drop orqali Visual Design View ishlatish:**
1. Faylni "Design" qismida oching.
2. "Palette" panel orqali elementlarni tanlang va "Component Tree" panelida joylashtiring.
3. Har bir elementga kerakli xususiyatlar va o'lcham sozlamalarini qo'shing.
4. "Code" va "Design" ni bir vaqtda ko'rish uchun "Split" qismida ishlang.https://developer.android.com/studio/write/layout-editor#drag-drop)
Usul 3: **ConstraintLayout orqali ishlatish:**
1. "ConstraintLayout" tanlash orqali yangi XML fayl yaratish.
2. Faylni "Design" qismida oching.
3. "Palette" panel orqali elementlarni tanlang va joylashtiring.
4. Elementlarni boshqa elementlar bilan bog'lash uchun "Constraint" qo'shing.
5. Har bir elementga kerakli xususiyatlar va o'lcham sozlamalarini qo'shing.
Usul 4: **Material Design komponentlari orqali yaratish:**
1. "Palette" panelda "Material Components" qismidan komponentlarni tanlang.
2. "Design" qismida interfeysni yaratish uchun kerakli elementlarni tanlang.
3. Har bir elementga kerakli xususiyatlar va o'lcham sozlamalarini qo'shing.
Usul 5: **Vector Asset Studio orqali tasvir qo'shish:**
1. "res/drawable" papkasida yangi vektor tasvirlar yaratish uchun Vector Asset Studio ni oching.
2. Tanlangan vektor tasvirlarni yaratish yoki tanlash.
3. "Finish" tugmasini bosing va vektor tasvirlar XML kodini yaratadi.
Usul 6: **Data Binding orqali ma'lumotlarni bog'lash:**
1. "build.gradle" faylida `dataBinding.enabled true` so'zlamasini qo'shing.
2. XML faylda "data" tegi orqali ma'lumotlarni ishlatish uchun kerakli elementlarni qo'shing.
3. Java (yoki Kotlin) koddagi "DataBinding" qismida ma'lumotlarni o'zgartirish.
Android Studio'da foydalanuvchi interfeysi (user interface) yaratish uchun sizga kerak bo'lgan kodlarni quyidagi misol orqali taqdim etaman. Bu misol, to'liq foydalanuvchi interfeysini yaratishga oid:
|
| |