Haqiqiy qo'shimcha binoda Android studiyasi. Haqiqiy qo'shimcha binoda sinov. Dasturiy ta'minot paketidan tashqi matnlarni olib tashlash

Android qo'shimchalarini yaratish bilan chakana sotuvchilarning aksariyati turli emulyatorlar bilan qoplangan. Bu juda qulay, stolning tortmachalaridan bir nechta turli xil qurilmalarni saqlashingiz shart emas, kompyuterga ulangan qo'shimchalar bilan bosh og'rig'i yo'q, stolda dart sotib olmaysiz. Klatsaemo ayiq va bachimo robotga o'z dasturlarini kompyuter ekranida. Shunchaki nafis. Tim mensch emas, emulyator telefon emas. Vín obmezheniya y svoyh imkoniyatlar. Sizning dasturingiz ba'zi o'ziga xos apparat funktsiyalariga ega bo'lganligi sababli, masalan, kamera robotiga, Bluetooth yoki USB ulanishiga, telefon qo'ng'irog'ini qabul qilish uchun bir soat davomida robotga ulanganligi sababli, katta moslashuvchanlik bilan aytishimiz mumkinki, haqiqiy soliqqa tortilmasdan qila olmaysiz. ilova. Yaxshiyamki, Eclipse bu vazifani bajarish uchun zarur bo'lgan hamma narsani qiladi.

Telefon aloqasi va dasturni ishga tushirish

Birinchidan, qo'shimcha USB ma'lumot kabeli uchun telefonni kompyuterga ulang, tayyorgarlik ishchisini ulash kerak. O'ng tomonda, Eclipse robotga emulyator bilan qulflangan va biz sozlash rejimini sozlashimiz kerak. Tse oddiy. Biz menyu bandini Run > Debug Configuration, so'ngra DroidDebug ni tanlaymiz. Maqsad yorlig'ida, Joylashtirish maqsadini tanlash rejimida siz jumperni Manual holatiga o'rnatishingiz kerak va "Ilova" tugmasini bosing. Ushbu darajada platforma tanlashning qo'lda rejimi belgilangan. Endi, dasturning boshida, dialog oynasi paydo bo'ladi, unda siz emulyatorni yoki ulangan telefonlardan birini tanlashingiz mumkin.

Telefonni darhol zaryadlash rejimiga o'tkazish uchun uni to'g'ri tartibda tuzatish ham kerak. Bosh ekranda qayta ishga tushiring, shunchaki Menyu tugmasini bosing va "Sozlamalar" dasturini biling. Ushbu dastur uchun men "Dasturlar" (Ilovalar), keyin esa - "Rivojlanish" (ishlab chiqish) ni qo'shdim. Ekranda "USB disk raskadrovka" (USD disk raskadrovka) bandi uchun katakchani belgilashingiz kerak. Bu ketma-ketlik ko'pgina telefonlarda qo'llaniladi, lekin sizning kengaytmangizda UBS zaryadlash rejimi boshqa joyda yoqilgan bo'lishi mumkin.

Telefonni kompyuterga ulang va Eclipse-dagi Debug tugmasini bosing. Muloqot oynasida ikkita ro'yxatni ko'rasiz: "Ishlayotgan Android qurilmasini tanlang" va "Yangi Android virtual qurilmasini ishga tushirish". Birinchisida kompyuterga telefon aloqasi, ikkinchisida emulyatorlar mavjud. Birinchi ro'yxatdan telefon raqamingizni tanlang. Eclipse telefonga o'rnatilgan dasturlarni o'rnatadi va yoga bilan shug'ullanadi. Siz dasturni o'zgartirishingiz mumkin.

Monitoring telefon DDMS (Dalvik Debug Monitor Service) ga aylanadi.

Telefon haqidagi barcha ma'lumotlar DDMS (Dalvik Debug Monitor Service) monitoring xizmati deb ataladigan maxsus vosita orqali mavjud. Uni ishga tushirish uchun Eclipse-ning yuqori o'ng burchagidagi android tasviridagi tugmani bosing.

DDMS oynasi bir qator panellardan yig'ilgan. Qurilmalar paneli mavjud emulyatorlar va ulangan telefonlar ro'yxatini ko'rsatadi. Darhol, hozirgi vaqtda ishlaydigan jarayonlar ro'yxati yo'naltiriladi. Teri jarayoni xost virtual mashinasida ishga tushiriladi. Mavzular keyingi mavzular yorlig'ida ko'rsatiladi. Fayl Explorer yorlig'i telefonning fayl tizimi bilan ishlash uchun tan olingan. Yordam bilan siz fayllarni kompyuteringizdan telefoningizga qayta nusxalashingiz mumkin. Screen Capture tugmasi yordamida siz telefonning skrinshotini olishingiz mumkin. Yashil qo'ng'izli tugma tanlangan jarayonga egasini kiritish imkonini beradi. vykoristannya tsíêí̈ mozhlivostí uchun jarayonning chiqish kodining onasi bo'lishi kerak.

Shuningdek, u LogCat logging yordam dasturini va ko'rinadigan panelni bildiradi, chunki kechirim so'rash uchun u bir soat davomida yanada jigarrangroq ko'rinishi mumkin. Jurnaldan robot android.util.Log maxsus klassi orqali yaratilgan. Quyidagi usullar eng ko'p qo'llaniladi:

Log.e() - kechirim jurnali uchun,
Log.w() - erta kirish uchun,
Log.i() - axborot ogohlantirishlarini qayd qilish uchun,
Log.d() - jurnalni yaxshilash uchun,
Log.v() - jurnal hisobotlari uchun,

Parametrik usullar sifatida ikkita qatorni o'tkazish kerak. Birinchidan - logCat-da qidiruv va filtrlash uchun tanlanishi mumkin bo'lgan teg. Ikkinchisi aniq ma'lumotdir, chunki u jurnalga kiritilishi kerak.

Qo'shimchalarni yaratishni sinab ko'rish uchun Android emulyatorining asosiy bosqichlarini ko'rsatdik. Shubhasiz, emulyatorni tugatish osonroq, lekin bu holatda bundan ham yomoni, chunki siz qattiq kompyuterni va emulyatorning e'tiborini tugatishingiz kerak, shuningdek, robot ko'p vaqtni almashtirmaydi. Ammo bunday yirtqich hayvonning onasiga rahm-shafqat qilish hamma uchun emas, shuning uchun ushbu maqolada men sizga Android Studio-da robotlaringizni haqiqiy plagin plaginlari yordamida sinab ko'rishning qo'shimcha usuli haqida gapirib beraman. .

Tsya maqolasi pídyyde sizda 2 ta asosiy fikr bor:

1) Sizning kompyuteringiz shved robot emulyatori uchun etarlicha kuchli emas (Android Studio yoki Eclipce-da);

2) Sizda eskisi yotibdi Android-smartfon va siz qaerda yogo bola (grant / wikidat shkoda) bilmayman.

Varto, shuningdek, bu usul samarali kompyuterlar ustalariga o'xshash bo'lishi mumkinligini anglatadi, hatto emulyatorda test qilish boshqa narsa va to'g'ri smartfonda qo'shimcha uchun posterlash boshqa narsa.

Bundan tashqari, smartfoningizni Android Studio-ga ulash uchun avvalo kerakli drayverlar to'plamini o'rnatishingiz kerak bo'ladi. Qoida tariqasida, standart drayverlar to'plamiga ega un ko'pincha hech narsaga olib kelmaydi, men darhol faylning o'qini yuklab olishingizni maslahat beraman (qo'rqmang - bu virus emas, siz antivirusni xohlaysiz va qila olasiz" t) va oldingi eski drayverlarni olib tashlaganingizdan so'ng, faylni joylashtiring (bir soat davomida telefon o'rnatilgan bo'lsa, ulanmaslik yaxshiroqdir).

Drayvlarni o'rnatgandan so'ng, USB qurilmasini kompyuterga ulang. Kerakli sozlamalar ishga tushirilishi va avtomatik ravishda o'rnatilishi kerak.

Keyin Android Studio-ni ishga tushiring. Asboblarda Idemo --- Android va "OTB integratsiyasini yoqish" (ADB - Android Debug Bridge) yonidagi katakchani belgilang. Agar shunday bo'lsa, siz Android Studio'ni shunday sozlashingiz kerakki, yashil "Ishga tushirish" tugmachasini bosganingizda, plaginingiz darhol ulangan smartfonga o'rnatiladi va ishga tushadi. Idemo Run --- Konfiguratsiyalarni tahrirlash. Tez orada keladi:

Va "Maqsadli qurilma" blokida "USB qurilmasi" katagiga belgi qo'ying va OK tugmasini bosing.

Hammasi, menimcha, xuddi hamma narsa to'g'ri bajarilgandek, drayverlar sizning biriktirmangizni tayinladilar, keyin tugmani bosganingizda dastur boshlanadi (chervonim ko'rindi):

Dasturni o'rnating va ulangan qurilmada ishga tushiring.

Agar sizda etarli bo'lmasa, qurilmaning ulanishlarini oling va dasturchining televizorini qo'lingizda sinab ko'ring.

Varto shuni anglatadiki, agar dastur o'rnatilgan bo'lsa, u avtomatik ravishda ishga tushmagan bo'lsa, unda hamma narsa yaxshiroq, demak bu erda qo'shimchada kechirim bor (agar xohlasangiz, u Android Studio'da yoqilmagan bo'lishi mumkin, masalan, faqat koddagi muhim narsalarni o'tkazib yuborish).

Umid qilamanki, sizga maqola kerak. Mashg'ulotlarga omad!

Oldinroq yozdim. Muammoni tubdan hal qilishingiz mumkin, emulyatorni mag'lub qilmang, balki uni android uchun mobil qurilmada sinab ko'ring. Menda HTC mo''jizasi bor, u yangi va men uni oldim. Bundan tashqari, jismoniy qurilmada dasturlarni ishga tushirish uchun sizga kerak bo'ladi:

  1. USB zaryadlash funksiyasini yoqing. Buni O'rnatish menyusi -> Dasturlar -> Build bo'limiga o'tish va "USB sozlamalari" katagiga belgi qo'yish orqali qilishingiz mumkin.
  2. Haydovchi o'rnatish yuklab olish
  3. Uni rozetkaga ulang va telefonni kompyuterga qayta ulang.

Telefon kompyuterda ishlayotganligini tekshirish uchun oyoqqa qadam qo'yish kerak:

Agar bu sizga tegishli bo'lsa, unda siz maxsus dasturdan foydalanishingiz mumkin: PdaNet. () Kompyuterdan telefon orqali Internetni zabt etish uchun g'alaba qozondi, ammo bu siz telefonlar uchun ko'p sonli haydovchilardan qasos olishingiz uchun sodir bo'ldi. Men uni o'rnatganimdan so'ng, men modelni yoqdim va haydovchi sinab ko'rmagan narsalar haqida old tomondan sakrash uchun qizil rangli balun berdim va hamma narsa jirkanch teri bilan yuvilishi mumkin edi, lekin emas - hammasi yaxshi, u tiklandi. . Shundan so'ng, men yana tekshirishni o'tkazdim (buyruq vishcha) va mening telefonim qo'shimchalar ro'yxatida paydo bo'ldi.

Eclipse bilan qanday mashq qilish kerak? Aslida, hamma narsa allaqachon buzilgan - faqat loyihani boshlang va uni telefonda yutib oling.

Android qo'shimchalarini dekompilyatsiya qilish va sozlash

Aleksandr Antipov

Maqolada sizga drayverni Android plaginiga qanday ulash va dasturni dekompilyatsiya qilishdan keyin olib tashlangan g'alabali ma'lumotlar deb ataladigan usullarni ko'rib chiqish haqida gap boradi.


Maqolada sizga drayverni Android plaginiga qanday ulash va dasturni dekompilyatsiya qilishdan keyin olib tashlangan g'alabali ma'lumotlar deb ataladigan usullarni ko'rib chiqish haqida gap boradi. Yaxshi xabar shundaki, sizga pul to'lash uchun o'ta korroziyali odamning imtiyozlari kerak emas. Texnikaning tavsiflari mobil qo'shimchalarni sinovdan o'tkazish uchun yanada qadimiyroq bo'lishi mumkin, biz robot dasturlari soati uchun kodga "kirishimiz", ma'lumotni olishimiz va yozib olishimiz mumkin, toki biz unga kirish imkoniga ega bo'lmaymiz. Masalan, siz shifrlashdan oldin trafikni uzatishingiz va kalitlar, parollar va boshqa qimmatli ma'lumotlarni olib qo'yishingiz mumkin. Maqola pentesters va mobil ilovalarning sotuvchilari uchun foydali bo'ladi, chunki ular Android platformasida mumkin bo'lgan hujumlar haqida ko'proq ma'lumotga ega bo'lishni xohlashadi.

Vimogi sinov muhitiga:

  • Operatsion tizim: Windows/Mac OS X/Linux
  • Java (1.7 versiyasi tavsiya etiladi)
  • IDE (Eclipse, IntelliJ IDEA, Android Studio)
  • Android SDK (https://developer.android.com/sdk/index.html?hl=i)
  • APKTool (https://code.google.com/p/android-apktool/)/APK Studio (http://apkstudio.codeplex.com)
  • Android asosidagi biriktirma / emulyator

Maqola quyidagi konfiguratsiyaga ega bo'ladi: Windows 8, Android Studio va IntelliJ IDEA. Qurilma: Android 4.4.4 versiyasiga ega Nexus 4. Men ushbu vositalarga kirishni osonlashtirish va tezlashtirish uchun PATHni o'zgartirish uchun yordamchi dasturni qo'shishni tavsiya qilaman.

Android ilovalar paketi (APK) .

Men quraman

Quyidagi ko'rsatmalar tajribalar uchun qo'shimchalarni tayyorlashga yordam beradi.

Developer Options taqsimotini faollashtirish

Android qurilmasida USB orqali zaryadlashni yoqish mumkin (USB disk raskadrovka opsiyasi), bu sizga Android SDK-dan qo'shimcha vositalar uchun qurilma bilan "suhbatlashish" imkonini beradi. Biroq, bundan oldin Tuzuvchi variantlari bo'limini faollashtirish kerak. Kengaytmada tarqatish sozlamalari > Telefon haqida-ga o'ting va Qurilish raqami bandiga bir necha marta bosing, shundan so'ng siz Tuzuvchi variantlari taqsimoti faollashtirilgani haqida ma'lumotni ko'rishingiz mumkin.

1-rasm: Ishlab chiquvchi variantlari bo'limini faollashtirish uchun siz Qurilish raqamini bir necha marta bosishingiz kerak

USB orqali Dozvil nagodzhennya

USB disk raskadrovkani disk raskadrovka qilish uchun Sozlamalar > Tuzuvchi parametrlariga o'ting va USB orqali nosozliklarni tuzatish huquqini o'rnating.

2-rasm: USB orqali nosozliklarni tuzatish opsiyasi yoqilgan

Ulanish orqali men ADB ishga tushirilishini qo'shaman

Agar kompyuterga USB port orqali ulansam, "USB disk raskadrovka qurilmaga ulangan" xabari paydo bo'ladi. Shuningdek, Android SDK omboriga (Android SDK Platformasi vositalari toʻplami) kirish uchun Android Debug Bridge (ADB) plaginiga ulanishingiz mumkinligini tekshiring. Buyruqlar qatorida quyidagi buyruqni kiriting:

Qo'shimcha ro'yxatda paydo bo'lishi mumkin.

3-rasm: Ulangan qurilmalar ro'yxati

Agar qo'shimcha ro'yxatda ko'rinmasa, unda eng katta sabab noto'g'ri o'rnatilgan drayverlar (Windows). Siz drayverni plaginning zaxira versiyasida yoki Android SDK da yoki quruvchining saytida topishingiz mumkin.

Dasturlarni imtiyozlar uchun qayta tekshirish

Android dasturlarini yangilashdan oldin, uni tekshirish kerak, nima mumkin. Perevyrku dekylkom yo'llarini vikonati mumkin.

Birinchi usul - ishga tushirish Android qurilma monitori, Android SDK omboriga o'tish uchun (asboblar qutisida). Windows uchun fayl monitor.bat deb ataladi. Android Device Monitor paydo bo'lganda, biriktirma Qurilmalar tarqatilishida paydo bo'ladi.

4-rasm: Android qurilma monitori

Kengaytmadagi dastur o'rnatilishi bilanoq dastur ham ro'yxatda paydo bo'ladi. Sinov dasturini yaratganingizdan so'ng, lekin ro'yxat bo'sh, dasturni qayta tiklash mumkin emas.

Dasturning yangilanishini tekshirishning yana bir usuli - Android ilovalar paketidan (APK) AndroidManifest.xml faylini tekshirish. APK - bu Android qurilmasida dasturni ishga tushirish uchun zarur bo'lgan barcha ma'lumotlarni o'z ichiga olgan zip-arxiv.

Agar dastur Google Play do'konida mavjud bo'lsa, u holda dasturiy ta'minot to'plami ham mavjud. Barcha qiziqqan APK fayllari /data/app papkasidagi plaginda saqlanadi. Sizda o'ta to'g'ri huquqlar yo'qligi sababli, /data/app katalogidan fayllar ro'yxatini ololmaydi. Agar siz APK faylining nomini bilmoqchi bo'lsangiz, Yogo-ni boshqa yordamchi dastur uchun nusxalashingiz mumkin adb. APK fayli nomini bilish uchun quyidagi buyruqni kiriting:

Men ko'rsatish uchun buyruq qatorini qo'shaman. Quyidagi buyruqni kiritamiz:

pm ro'yxati paketlari -f

Kengaytmada barcha paketlar ro'yxati paydo bo'ladi.

5-rasm: Paketlarni qo'shimcha binoga o'tkazish

Ro'yxatga qarang, biz test qo'shimchasini bilamiz.

6-chaqaloq: yaratilgan test qo'shimchasining to'plami (oq rangda)

Endi siz paket faylini nusxalashingiz kerak. Qobiqni oching va buyruqni kiriting:

adb pull /data/app/[.apk fayli]

Chaqaloq 7: APK faylidan nusxa oling va uni tizimga qo'shing

Endi siz paket faylini ochishingiz va uni AndroidManifest.xml ga qo'shishingiz kerak. Afsuski, biz ikkilik formatdagi kodlashlarning APK fayli kabi arxivlarni ocholmaymiz. Atirgulni puflash uchun yordamchi dastur ko'pincha ishlatiladi apk vositasi Men vikoristni xohlayman APK Studio, oskílki tsíêí dasturlari do'stona grafik interfeysga ega. APK Studio haqida Dali statti razpovidatim.

APK Studio-da kichik yashil belgini bosing, loyiha nomini o'rnating va APK fayliga yo'lni ko'rsating. Loyihani saqlash uchun sizga xabar beramiz.

8-rasm: APK Studio'da yangi loyiha yaratish

APK-ni ochganingizdan so'ng, AndroidManifest.xml faylini tanlang va dastur tegining parametrlariga qarang. Agar android:debuggable bayrog'i mavjud bo'lsa (yoki mavjud bo'lsa, aks holda qiymat "false" ga o'rnatilgan bo'lsa), bu dasturni tuzatish mumkin emasligini anglatadi.

9-chi bola: AndroidManifest.xml fayliga

AndroidManifest.xml faylini o'zgartirish

Apktool yordam dasturi yoki APK Studio yordami uchun biz fayllarni o'zgartirishimiz va ularni paketga joylashtirishimiz mumkin. Dasturni sozlash uchun AndroidManifest.xml faylini darhol o'zgartiramiz. Ilova tegining o'rtasiga android:debuggable="true" qatorini qo'shing.

10-rasm: Ilova yorlig'i o'rniga o'zgartirish

Prashyorni qo'shgandan so'ng, "bolg'a" belgisini bosing va paketni yana oling. Qayta tiklangan paket build/apk katalogida bo'ladi.

11-rasm: Paket muvaffaqiyatli tiklandi

Qayta qadoqlangandan so'ng paket imzolanadi va uni kengaytmada qayta o'rnatish mumkin (barcha Android dasturlari imzolangan bo'lishi kerak). Ko'pgina dasturlar sertifikatni qayta ko'rib chiqmaydi, buning uchun imzo talab qilinadi. Aks holda, kodni o'zgartirish kerak, bu sizni qayta tekshirishga imkon beradi.

Endi siz qayta tanlangan paketni o'rnatishingiz kerak. Orqa tomonda biz hujum buyrug'ining yordami uchun eski dasturni ko'rishimiz mumkin:

adb pm o'chirish

Keling, yangi paketni o'rnatamiz:

adb install [.apk fayli]

Shuningdek, paketni bitta buyruq bilan o'chirishingiz va o'rnatishingiz mumkin:

adb install -r [.apk fayli]

12-rasm: Paketni o'rnatish

Teskari, dastur qayta o'rnatildi va kengaytmada to'g'ri ishladi. Har bir narsa ishlayotgan bo'lsa, keling, Android Device Monitor-ga qaytaylik, u erda test qo'shimchasi paydo bo'lishi mumkin.

13-rasm: Qayta tanlangan dastur endi yangilanishi mumkin

Kengaytirishning o'rtasini tugatish (IDE)

Endi, dasturni qayta tanlashdan oldin, siz soliq to'lovchiga ro'yxatdan o'tishingiz mumkin, lekin ba'zida siz rivojlanishning o'rtasida loyiha yaratishingiz kerak bo'ladi (IntelliJ IDEA maqolaning yuqori qismida). Biz yangi loyiha yaratmoqdamiz. Ilova nomi maydonida bir nechta nomni belgilang. "Paket nomi" maydonida siz qayta tanlangan paketning papkalari qanday tartiblanganligini ko'rsatishingiz mumkin.

14-rasm: IntelliJ IDEA da yangi loyiha yaratish

APK fayliga papka tuzilishi bilan nom bering, agar xohlamasangiz, APK Studio-da katalog ierarxiyasini dastur fayllari joylashgan papkaga aylantiring. Menimcha, bu papka tuzilishi juda to'g'ri (com.netspi.egruber.test).

15-rasm: Test dasturi katalog ierarxiyasi

"Salom dunyo faoliyatini yaratish" bayrog'ini ko'taring va loyihani yakunlang (barcha boshqa parametrlar ortda qoladi). Yangi loyiha quyidagicha ko'rinishi mumkin:

16-rasm: Yangi loyihada papka va fayl ierarxiyasi

Loyiha yaratilgandan so'ng, belgilar, usullar, o'zgarishlar va hokazolarning nomlarini "bilish" uchun APK fayliga kod qo'shish kerak. asl nusxasi bilan). Dekompilyatsiyadan so'ng, chiqish matni IDE dan import qilinadi.

Dasturiy ta'minot paketidan tashqi matnlarni olib tashlash

Boshlash uchun APK faylini jar fayliga aylantirishingiz kerak. Keling, dasturning asl matnini olib tashlash uchun java-dekompilyator bilan yordam beraylik. Biz qo'shimcha yordam uchun jarga aylantirish ustida ishlaymiz dex2jar. dex2jar-da d2j-dex2jar.bat fayli mavjud, bu APK-ni jarga aylantirish uchun hiyla-nayrang. Buyruq sintaksisi

d2j-dex2jar.bat [.apk fayli]

17-rasm: APK-ni jarga aylantirish

Keling, uni o'chirib qo'yamiz yoki JD-GUI faylini (java dekompilyatori) tortamiz.

Chaqaloq 18: jar faylining tuzilishi

Jar fayli ierarxik tuzilishga o'xshab ko'rinishida aybdor, uning o'rtasida o'qilishi mumkin bo'lgan chiqish kodi bo'lgan java fayllari mavjud. Barcha asl matnlarni zip-arxivlarga to'plash uchun Fayl > Barcha manbalarni saqlash-ga o'ting.

19-rasm: Dekompilyatsiya qilingan faylda chiqish matnlarini saqlash

Dam olish kunlari matnlarini saqlaganingizdan so'ng, arxivlar boshqa katalogga ochiladi.

Chaqaloq 20: Arxivlarni ochish

Endi IDE-da ilgari yaratilgan loyihaga tegishli kataloglarni import qilish kerak. IntelliJ-da src jildiga o'ting va paketdan chiqarilgan arxiv (ikkita katalog) o'rniga uni nusxalang.

21-rasm: Ko'chirilgan papkani src katalogiga tahrirlash

Intellij-ga murojaat qilib, bachimo loyihani yangilaydi.

Malyunok 22: Loyiha matnlarni chiqardi

Agar biz ro'yxatdagi ma'lum bir elementni bossak, u holda matnni tark etishimiz mumkin. Quyidagi skrinshotda ko'rib turganingizdek (LoginActivity sinfi uchun matnni chiqarish), ProGuard yordam kodi uchun chiqish kodi.

23-rasm: Chiqish matnini LoginActivity sinfi bilan birlashtirish

Egasi aloqasi

Endi, agar loyihada yangi matnlar mavjud bo'lsa, biz ushbu o'zgarishlarning usullari bo'yicha chirp nuqtalarini o'rnatishni boshlashimiz mumkin. Zupinka nuqtasiga etib, dastur zupinyatisya bo'ladi. Misol sifatida, matn maydoniga kiritilgan ma'lumotlarni qayta ishlash uchun ishlatiladigan usulga (to'g'ridan-to'g'ri tushunarsiz kodda) nuqta qo'yaman.

Malyunok 24: Obfuscation usuli bo'yicha uchli tishlar

Tish nuqtasi paydo bo'lishi bilan biz ekranning yuqori o'ng burchagidagi belgini bosish orqali rostlagichni kengaytmadagi jarayonga ulaymiz (belgini IDE-da tekshirish mumkin).

25-rasm: O'rnatuvchini jarayonga ulash

26-rasm: Egasini ulash uchun kommutatsiya jarayonlari

Nalashtovuvach jarayonini tanlashdan keyin ilovaga keladi.

27-rasm: Nalagojuvach qo'shimchada ishlaydigan jarayonga ulangan

Matn maydoniga men 42 raqamini kiritaman (esda tuting, ikkinchi usulda tish nuqtasi bor).

28-rasm: Matn maydoniga 42 raqamini kiriting

"Kodni kiriting" tugmasini bosgandan so'ng, dastur kengaytmada qo'llaniladigan "ta'riflar" ning tish nuqtalari, parchalari buziladi. Java Debug Wire Protocol (JDWP) bilan tanish bo'lgan har qanday kechikish hakami uchun mavjud bo'lgan kechikish ma'lumotlarini (masalan, o'zgartirilganlarning nomlarini) qaytarish uchun Android qo'shimchalarini kompilyatsiya qilish. Dasturda bo'lgani kabi, JDWP-ni zaryadlash, o'rnatish va saqlashga ruxsat beriladi (ushbu turkumda siz Java uchun o'rta dastur tarqatish omboriga boradigan ko'proq soliqlardan foydalanasiz), Android-dastur virtual mashinasiga o'tishingiz mumkin va keyin buyruqni o'qing.

29-rasm: Tish nuqtasi to'g'ri edi

Quyidagi skrinshotda biz matn maydoniga kiritgan raqam ko'rsatilgan.

30-rasm: O'zgartirilgan oqim namunasini sinfga o'tkazish

Visnovok

Biz nafaqat qo'shimchadan ma'lumotlarni o'qishimiz, balki rasmiylarni ham kiritishimiz mumkin. Tse mozhe buti korisno, akscho mi, masalan, vikonannya kodining oqimini to'xtatish va deyaki delyanki algoritmini chetlab o'tishni xohlaydi. Ustaning yordami bilan biz robotlar va dasturlarning mantig'ini yaxshiroq tushunishimiz va ajoyib koristuvachevga kirish imkoni bo'lmagan narsalarni tahlil qilishimiz mumkin. Misol uchun, biz shifrlash funktsiyalarini ham ko'rib chiqishimiz mumkin, ular g'olib va ​​dinamik kalitlar. Bunga qo'shimcha ravishda, ba'zan sizdan zaryadlanganda, ma'lumot dastur tomonidan qanday to'planganligini tushunish uchun funktsiyalarning fayl tizimi yoki ma'lumotlar bazasi bilan qanday o'zaro ta'sirini bilasiz. Shunga o'xshash manipulyatsiyalar superkorrozivlik imtiyozlarisiz har qanday Android plaginida mavjud.

Pisochnitsa

server xudosi 2011 yil 18-bahor, 15:55

Android-da dasturlarni ishga tushirish va sozlashning afzalliklari haqida umumiy ma'lumot

  • Yog'och xonasi *

Android uchun birinchi dasturimni o'rganar ekanman, dasturni qayta tekshirish va sozlash uchun ishga tushirish muammosiga duch keldim. Tsya statya to'g'ri emulyatsiyani tanlashni boshlashga yordam berishda aybdor.

Android virtual qurilmasi (AVD)
Oʻrnatilgan:
Android SDK da Tsey zasíb emylyatsíí vbudovaniya.

Nalashtuvannya:
(Eclipsedagi vikoristannya misolida)
Oyna > Android SDK va AVD menejeri > Yangi
Virtual plagin nomini, platformani, xotira kartasi hajmini, displey turini kiriting.
Tisnemo AVD yaratish.

Ishga tushirish:
Emulyatorning birinchi ishga tushirilishi uzoq vaqt talab etadi, ayniqsa zaif binolarda. Misol uchun, men netbukimda birinchi ishga tushirishni ololmadim, lekin kompyuterda birinchi marta ishga tushirganimda, emulyator abadiy tsiklda emasligiga aminman.
Emulyatorning keyingi ishga tushirilishi juda qiyin bo'ladi.
"Ishga tushirish" tugmasini bosish va emulyatorda sinov dasturining asosiy faollashuvining paydo bo'lishi o'rtasidagi bir soat o'rtacha 11 soniyani tashkil qiladi. Vimiryuvannya dosit samarali kompyuterda o'tkazdi.

Afzalliklar va kamchiliklar:
+ Android operatsion tizimining turli versiyalarida, har xil turdagi displeyli qo'shimchalarda dasturga norozilik bildirish imkoniyati.
+ Sinov uchun zarur bo'lgan turli xil sozlamalar, masalan, ekran yo'nalishini o'zgartirish
+ SD karta emulyatsiyasi
- "Ishga tushirish" tugmasini bosish va emulyatorda dasturni ishga tushirish o'rtasidagi katta bo'shliq
- emulyator yanada to'g'ri ishlaydi, masalan, telefonni 1-2 soniyada tugatganlar, emulyator 8-10 soniyada buzildi

VirtualBox+Android x86
O'rnatilgan va sozlangan:
  1. Zavantazhuemo va VirtualBox-ni o'rnating.
  2. Biz tasvirni olamiz.
  3. “Linux 2.6/Boshqa Linux virtual mashinasini yaratish, 512 Mb RAM, Bridged Network, HD 2 Gb, Sichqoncha integratsiyasini o‘chirish. ISO faylini ulash va LiveCD opsiyalaridan birini ishlatish (HDPI va MDPI opsiyalari) ”yoki ko'rsatmalar talab qilinadi.
  4. Konsolga chiqish uchun Alt-F1 tugmasini bosing va netcfg yozing va emulyatorning IP manzilini eslang. GUI-ga aylantirish uchun Alt-F7-ni bosing.
  5. adb ulanish

Ishga tushirish:
"Ishga tushirish" tugmasini bosish va emulyatorda sinov dasturining asosiy faollashuvining paydo bo'lishi o'rtasidagi bir soatlik vaqt aniqlanmadi, ammo sub'ektiv his-tuyg'ular uchun bu mittevo bo'lishi mumkin.

Afzalliklar va kamchiliklar:
+ "Ishga tushirish" tugmachasini bosish va emulyatorda dasturni ishga tushirish o'rtasidagi kichik bo'shliq
+ spritna robot missiyalari
- Dosit trival va inodí o'rnatish muammoli
- emulyator to'g'ri ishlaydi, tasvirlar bilan bog'liq muammolar mavjud (ayniqsa MDPI da)
- SD karta emulyatsiyasi, ekran yo'nalishini o'zgartirish bilan bog'liq muammolar, ...
- ikki (uch) dan kam Android OS versiyalari va ikkitadan kamroq mavjud displey turlari

USB orqali ulangan Android telefon
O'rnatilgan va sozlangan:
  1. Telefonda zaryadlash rejimini yoqing. (Sozlash > Dasturlar > Yuklab olish > USB sozlamalari).
  2. Telefoningiz uchun haydovchi yuklab olish.
  3. Telefonni kompyuterga ulaymiz.
  4. Keling, drayverlarni o'rnatamiz. ADB Interface Distributor qurilmaning dispetcherida paydo bo'lishi mumkin.
  5. adb qurilmalari. Agar telefoningiz ro'yxatda ko'rinmasa, ADB drayveri o'rnatiladi.

Ishga tushirish:
"Ishga tushirish" tugmachasini bosgandan so'ng va telefonda test dasturining asosiy faollashuvi paydo bo'ladi, bu taxminan 5 soniya davom etadi.

Afzalliklar va kamchiliklar:
+ Dasturni Bachitime Koristuvach kabi ishlatish imkoniyati (muhim nuqta, ayniqsa interfeys va dastur dizaynini yaratishda)
+ multi-touch (telefonlarda bo'lgani kabi)
+ Ekran yo'nalishini, akselerometrni o'zgartirish (telefonlarda ham)
- faqat bitta OS versiyasi va bitta turdagi displey
- jismoniy ish stolida yana bitta ob'ekt paydo bo'ladi

Visnovki:
Men terini ushbu emulyatsiya usullari bilan davolashga harakat qildim va ushbu variantga qaror qildim:
1. yozish va test dasturlari, vikoristovuyuchi telefon;
2. OS versiyasi va displey turining turli kombinatsiyalariga ega raqamli Android virtual qurilmasida dastur sinovi.
Men o'quvchi emulyatorni tanlashni tanlagan yoki yangi narsalarni o'rgangan deb o'ylayman.
Sinovda omad tilaymiz! Dasturlar