Андройд програмыг хэрхэн засварлах вэ. Android дээр системийн APK файлуудыг хэрхэн солих вэ? APK файл гэж юу вэ

Заримдаа Android дээрх зарим програмууд ямар нэгэн байдлаар хэрэглэгчдэд тохирохгүй байдаг. Жишээ нь интрузив зар сурталчилгаа юм. Мөн энэ програм нь хүн бүрт сайн байдаг ч орчуулга нь муруй эсвэл огт байхгүй байдаг. Эсвэл жишээ нь, програм нь туршилтын хувилбар боловч бүрэн хувилбарыг нь авах боломжгүй юм. Нөхцөл байдлыг хэрхэн өөрчлөх вэ?

Оршил

Энэ нийтлэлд бид APK багцыг програмын тусламжтайгаар хэрхэн задлах, дотоод бүтцийг нь харах, байт кодыг задлах, задлах, мөн бидэнд нэг юм уу өөр ашиг тус авчрах програмуудад хэд хэдэн өөрчлөлт хийхийг оролдох болно.

Энэ бүгдийг өөрөө хийхийн тулд танд Android програмууд бичигдсэн Java хэл, Android-д хаа сайгүй хэрэглэгддэг XML хэлний тухай наад зах нь анхан шатны мэдлэг хэрэгтэй болно. дэлгэц дээр гарч ирнэ. Мөн танд тусгай консол програм хангамж ашиглах чадвар хэрэгтэй болно.

Тэгэхээр, бүх Android програм хангамжийг түгээдэг APK багц гэж юу вэ?

Аппликешн задлах

Энэ нийтлэлд бид зөвхөн задалсан програмын кодтой ажилласан, гэхдээ том програмуудад илүү ноцтой өөрчлөлт хийвэл smali кодыг ойлгоход илүү хэцүү байх болно. Аз болоход, бид dex кодыг Java код болгон задлах боломжтой бөгөөд энэ нь эх биш, буцааж хөрвүүлээгүй ч програмын логикийг уншиж, ойлгоход илүү хялбар байдаг. Үүнийг хийхийн тулд бидэнд хоёр хэрэгсэл хэрэгтэй болно:

  • dex2jar бол Dalvik байт кодыг JVM байт код руу орчуулагч бөгөөд үүний үндсэн дээр бид Java хэл дээрх кодыг авах боломжтой;
  • jd-gui нь өөрөө задлагч бөгөөд JVM байт кодоос унших боломжтой Java кодыг авах боломжийг олгодог. Өөр хувилбар болгон та Jad (www.varaneckas.com/jad) ашиглаж болно; Хэдийгээр энэ нь нэлээд хуучирсан ч зарим тохиолдолд Jd-gui-ээс илүү унших боломжтой код үүсгэдэг.

Тэднийг ингэж ашиглах ёстой. Эхлээд бид apk багц руу хүрэх замыг аргумент болгон зааж өгсөн dex2jar-г эхлүүлнэ.

% dex2jar.sh mail.apk

Үүний үр дүнд Java кодыг үзэхийн тулд jd-gui дээр аль хэдийн нээгдэх боломжтой одоогийн лавлахад mail.jar Java багц гарч ирэх болно.

APK багцуудыг зохион байгуулах, хүлээн авах

Android програмын багц нь үндсэндээ энгийн ZIP файл бөгөөд агуулгыг нь үзэх, задлахад ямар нэгэн тусгай хэрэгсэл шаарддаггүй. Архивлагчтай байх нь хангалттай юм - Windows-д зориулсан 7zip эсвэл Linux дээр консол задлах. Гэхдээ энэ нь боодлын тухай юм. Дотор нь юу байна? Ерөнхийдөө бид дараах бүтэцтэй байна.

  • META-INF/- програмын дижитал гэрчилгээ, түүнийг үүсгэгчийг тодорхойлсон, багц файлуудын хяналтын нийлбэр агуулсан;
  • res/ - зураг, интерфэйсийн тунхаглал, түүнчлэн бусад өгөгдөл гэх мэт програмын ажилд ашигладаг төрөл бүрийн нөөцүүд;
  • AndroidManifest.xml- хэрэглээний тодорхойлолт. Үүнд, жишээлбэл, шаардлагатай зөвшөөрлийн жагсаалт, шаардлагатай Android хувилбар, шаардлагатай дэлгэцийн нягтрал зэрэг орно;
  • ангиуд.dex- Dalvik виртуал машинд зориулсан програмын байт кодыг эмхэтгэсэн;
  • нөөц.arsc- мөн нөөцүүд, гэхдээ өөр төрлийн - тухайлбал, мөрүүд (тиймээ, энэ файлыг оросжуулахад ашиглаж болно!).

Жагсаалтад орсон файлууд болон лавлахууд нь бүхэлдээ биш юмаа гэхэд APK-ийн дийлэнх хэсэгт байгаа байх. Гэсэн хэдий ч, энд дурьдах нь зүйтэй хэд хэдэн тийм нийтлэг биш файлууд/лавлахууд байдаг:

  • хөрөнгө- нөөцийн аналог. Гол ялгаа нь нөөцөд хандахын тулд түүний танигчийг мэдэх шаардлагатай боловч хөрөнгийн жагсаалтыг програмын код дахь AssetManager.list() аргыг ашиглан динамик байдлаар авч болно;
  • либ- NDK (Native Development Kit) ашиглан бичсэн Линуксийн уугуул сангууд.

Энэ лавлахыг C/C++ хэл дээр бичигдсэн тоглоомын хөдөлгүүрээ тэнд байрлуулсан тоглоом үйлдвэрлэгчид, мөн өндөр гүйцэтгэлтэй програм бүтээгчид (жишээлбэл, Google Chrome) ашигладаг. Бид төхөөрөмжийг олж мэдсэн. Харин сонирхож буй програмынхаа багц файлыг яаж авах вэ? APK файлуудыг root-гүй төхөөрөмжөөс авах боломжгүй (тэдгээр нь /data/app лавлах санд байдаг) ба root хийх нь үргэлж зөвлөдөггүй тул програмын файлыг компьютерт оруулах дор хаяж гурван арга бий.

  • Chrome-д зориулсан APK Downloader өргөтгөл;
  • Жинхэнэ APK Leecher програм;
  • төрөл бүрийн файл байршуулах болон Varezniks.

Аль нь хэрэглэх нь амтанд хамаарах асуудал юм; Бид тусдаа програм ашиглахыг илүүд үздэг тул бид Real APK Leecher-ийн хэрэглээг тайлбарлах болно, ялангуяа энэ нь Java дээр бичигдсэн тул Windows эсвэл Nix дээр ажиллах болно.

Хөтөлбөрийг эхлүүлсний дараа та имэйл, нууц үг, төхөөрөмжийн ID гэсэн гурван талбарыг бөглөж, хэлээ сонгох хэрэгтэй. Эхний хоёр нь таны төхөөрөмж дээр ашигладаг Google акаунтын имэйл болон нууц үг юм. Гурав дахь нь төхөөрөмжийн таниулбар бөгөөд залгагч дээрх кодыг бичиж авах боломжтой # #8255## дараа нь Төхөөрөмжийн ID мөрийг олно. Бөглөхдөө та зөвхөн ID-г android- угтваргүйгээр оруулах хэрэгтэй.

Бөглөж, хадгалсны дараа "Сервертэй холбогдоход алдаа гарлаа" гэсэн мессеж ихэвчлэн гарч ирдэг. Энэ нь Google Play-тэй ямар ч холбоогүй тул үүнийг үл тоомсорлож, өөрийн сонирхсон багцуудыг хайж олоорой.

Харах, өөрчлөх

Та өөрийн сонирхсон багцыг олоод, татаж аваад задлаад... XML файлыг үзэх гэж оролдохдоо тэр файл нь текст биш байсныг мэдээд гайхсан гэж бодъё. Үүнийг хэрхэн задлах, ерөнхийдөө багцуудтай хэрхэн ажиллах вэ? SDK суулгах үнэхээр шаардлагатай юу? Үгүй ээ, SDK суулгах шаардлагагүй. Үнэн хэрэгтээ APK багцуудыг задлах, өөрчлөх, багцлах бүх алхмууд нь дараах хэрэгслүүдийг шаарддаг:

  • ZIP архивлагчзадлах, савлах зориулалттай;
  • смали- Dalvik виртуал машины байт код ассемблер/зассемблер (code.google.com/p/smali);
  • aapt- нөөцийг савлах хэрэгсэл (анхдагчаар програмын гүйцэтгэлийг оновчтой болгохын тулд нөөцийг хоёртын хэлбэрээр хадгалдаг). Android SDK-д багтсан боловч тусад нь авах боломжтой;
  • гарын үсэг зурсан- өөрчилсөн багцад дижитал гарын үсэг зурах хэрэгсэл (bit.ly/Rmrv4M).

Та эдгээр бүх хэрэгслийг тусад нь ашиглаж болно, гэхдээ энэ нь тохиромжгүй тул тэдгээрийн үндсэн дээр бүтээгдсэн дээд түвшний програм хангамжийг ашиглах нь дээр. Хэрэв та Linux эсвэл Mac OS X дээр ажилладаг бол apktool гэж нэрлэгддэг хэрэгсэл байдаг. Энэ нь нөөцийг анхны хэлбэрээр нь задлах (хоёртын XML болон arsc файлуудыг оруулаад), өөрчлөгдсөн нөөцөөр багцыг дахин бүтээх боломжийг олгодог боловч багцад хэрхэн гарын үсэг зурахаа мэдэхгүй тул гарын үсэг зурах хэрэгслийг гараар ажиллуулах шаардлагатай болно. Энэ хэрэгсэл нь Java хэл дээр бичигдсэн хэдий ч түүний суурилуулалт нь стандарт бус юм. Эхлээд та jar файлыг өөрөө авах хэрэгтэй:

$ cd /tmp $ wget http://bit.ly/WC3OCz $ tar -xjf apktool1.5.1.tar.bz2

$ wget http://bit.ly/WRjEc7 $ tar -xjf apktool-install-linux-r05-ibot.tar.bz2

$ mv apktool.jar ~/bin $ mv apktool-install-linux-r05-ibot/* ~/bin $ экспортын PATH=~/bin:$PATH

Хэрэв та Windows дээр ажилладаг бол Virtuous Ten Studio хэмээх маш сайн хэрэгсэл байдаг бөгөөд энэ нь эдгээр бүх хэрэгслийг (apktool-г оруулаад) хуримтлуулдаг боловч CLI интерфейсийн оронд хэрэглэгчдэд ойлгомжтой график интерфэйсийг өгдөг. задлах, задлах, задлах үйлдлийг хэдхэн товшилтоор гүйцэтгэнэ. Энэ хэрэгсэл нь Donation-ware, өөрөөр хэлбэл заримдаа лиценз авахыг хүссэн цонх гарч ирдэг ч эцэст нь үүнийг тэвчих боломжтой. Үүнийг тайлбарлах нь утгагүй юм, учир нь та интерфэйсийг хэдхэн минутын дотор ойлгох болно. Гэхдээ apktool нь консол шинж чанартай тул илүү нарийвчлан авч үзэх хэрэгтэй.


apktool сонголтуудыг харцгаая. Товчхондоо, гурван үндсэн тушаал байдаг: d (декод тайлах), b (бүтээх) болон if (суулгах хүрээ). Хэрэв эхний хоёр тушаалаар бүх зүйл тодорхой бол гурав дахь нөхцөлт мэдэгдэл юу хийдэг вэ? Энэ нь заасан UI хүрээг задалдаг бөгөөд энэ нь аливаа системийн багцыг задлах тохиолдолд шаардлагатай байдаг.

Эхний командын хамгийн сонирхолтой сонголтуудыг авч үзье.

  • -s- dex файлуудыг задалж болохгүй;
  • - нөөцийг задлахгүй байх;
  • - dex файлыг задлах үр дүнд дибаг хийх мэдээллийг оруулахгүй байх;
  • --хүрээний зам- apktool-д суулгагдсаны оронд заасан UI хүрээг ашиглана уу. Одоо b командын хэд хэдэн сонголтыг авч үзье:
  • -f- өөрчлөлтийг шалгахгүйгээр албадан угсрах;
  • - Хэрэв та ямар нэг шалтгааны улмаас өөр эх сурвалжаас ашиглахыг хүсвэл aapt руу (APK архив үүсгэх хэрэгсэл) хүрэх замыг зааж өгнө үү.

apktool-ийг ашиглах нь маш энгийн бөгөөд үүнийг хийхийн тулд тушаалуудын аль нэгийг болон APK руу хүрэх замыг зааж өгөхөд хангалттай, жишээлбэл:

$ apktool d mail.apk

Үүний дараа багцын задалсан болон задалсан бүх файлууд шуудангийн санд гарч ирнэ.

Бэлтгэл ажил. Зар сурталчилгааг идэвхгүй болгож байна

Онол нь мэдээж сайн, гэхдээ задалсан багцыг юу хийхээ мэдэхгүй байгаа бол яагаад хэрэгтэй байна вэ? Энэ онолыг өөрсдөдөө ашигтайгаар хэрэгжүүлэхийг хичээцгээе, тухайлбал зарим программ хангамжийг бидэнд сурталчилгаа харуулахгүйн тулд өөрчилье. Жишээлбэл, энэ нь виртуал бамбар - виртуал бамбар байг. Энэхүү програм хангамж нь бидний хувьд хамгийн тохиромжтой, учир нь энэ нь ядаргаатай зар сурталчилгаагаар дүүрэн бөгөөд үүнээс гадна кодын ширэнгэн ойд төөрөхгүй байх хангалттай хялбар юм.


Тиймээс дээрх аргуудын аль нэгийг ашиглан програмыг зах зээлээс татаж аваарай. Хэрэв та Virtuous Ten Studio-г ашиглахаар шийдсэн бол програмын APK файлыг нээж, задлаад төсөл үүсгээд (Файл -> Шинэ төсөл), дараа нь төслийн контекст цэснээс Импорт файлыг сонгоно уу. Хэрэв таны сонголт apktool дээр унасан бол нэг командыг ажиллуулна уу:

$ apktool d com.kauf.particle.virtualtorch.apk

Үүний дараа com.kauf.particle.virtualtorch санд өмнөх хэсэгт тайлбарласантай төстэй файлын мод гарч ирэх боловч dex файл болон apktool.yml файлын оронд нэмэлт smali лавлах байх болно. Эхнийх нь програмын гүйцэтгэх боломжтой dex файлын задалсан кодыг агуулдаг бол хоёр дахь нь apktool-д багцыг буцааж цуглуулахад шаардлагатай үйлчилгээний мэдээллийг агуулдаг.

Бидний хайх ёстой хамгийн эхний газар бол мэдээж AndroidManifest.xml. Энд бид нэн даруй дараах мөртэй тулгардаг.

Энэ нь програмд ​​интернет холболт ашиглах зөвшөөрлийг өгөх үүрэгтэй гэдгийг таахад хэцүү биш юм. Үнэн хэрэгтээ, хэрэв бид сурталчилгаанаас ангижрахыг хүсч байвал програмыг интернетээс хаах хэрэгтэй болно. Үүнийг хийхийг хичээцгээе. Бид заасан мөрийг устгаад apktool ашиглан програм хангамжийг бүтээхийг оролдоно.

$ apktool b com.kauf.particle.virtualtorch

Үүссэн APK файл com.kauf.particle.virtualtorch/build/ директорт гарч ирнэ. Гэсэн хэдий ч тоон гарын үсэг, файл шалгах нийлбэр байхгүй (энэ нь зүгээр л META-INF/ лавлахгүй) тул үүнийг суулгах боломжгүй болно. Бид apk-signer хэрэгслийг ашиглан багцад гарын үсэг зурах ёстой. Эхэлсэн. Интерфэйс нь хоёр табаас бүрдэнэ - эхний (Түлхүүр үүсгэгч) дээр бид түлхүүрүүдийг үүсгэдэг, хоёр дахь дээр (APK Signer) гарын үсэг зурдаг. Манай хувийн түлхүүрийг үүсгэхийн тулд дараах талбаруудыг бөглөнө үү.

  • Зорилтот файл- түлхүүр хадгалах гаралтын файл; энэ нь ихэвчлэн нэг хос түлхүүр хадгалдаг;
  • Нууц үгТэгээд Баталгаажуулах- хадгалах нууц үг;
  • Алиа нэр- хадгалах сан дахь түлхүүрийн нэр;
  • Нууц үгТэгээд Баталгаажуулах- нууц түлхүүрийн нууц үг;
  • Хүчин төгөлдөр байх- хүчинтэй байх хугацаа (жилээр). Анхдагч утга нь оновчтой байна.

Үлдсэн талбарууд нь ерөнхийдөө сонголттой боловч дор хаяж нэг талбарыг бөглөх ёстой.


АНХААРУУЛГА

Apk-signer ашиглан програмд ​​гарын үсэг зурахын тулд та Android SDK суулгаж, програмын тохиргоонд түүнд хүрэх замыг бүрэн зааж өгөх ёстой.

Бүх мэдээллийг зөвхөн мэдээллийн зорилгоор өгсөн болно. Энэ нийтлэлийн материалаас учирч болзошгүй хохирлыг редактор, зохиогч аль аль нь хариуцахгүй.

Одоо та энэ түлхүүрээр APK-д гарын үсэг зурах боломжтой. APK Signer таб дээрээс шинээр үүсгэсэн файлыг сонгоод, нууц үг, түлхүүрийн нэр, нууц үгээ оруулаад APK файлыг олоод "Гарын үсэг зурах" товчийг зоригтой дарна уу. Хэрэв бүх зүйл сайн болвол багцад гарын үсэг зурна.

МЭДЭЭЛЭЛ

Бид багцад өөрийн түлхүүрээр гарын үсэг зурсан тул энэ нь анхны програмтай зөрчилдөх бөгөөд энэ нь програм хангамжийг зах зээлээр шинэчлэх гэж оролдох үед алдаа гарах болно гэсэн үг юм.

Дижитал гарын үсэг нь зөвхөн гуравдагч талын программ хангамжид шаардлагатай тул хэрэв та суулгасан системийн програмуудыг /system/app/ директор руу хуулж өөрчлөх гэж байгаа бол гарын үсэг зурах шаардлагагүй.

Үүний дараа багцаа ухаалаг утсандаа татаж аваад суулгаад ажиллуулна уу. Voila, зар алга болсон! Харин үүний оронд бидэнд интернет байхгүй эсвэл зохих зөвшөөрөл байхгүй гэсэн мессеж гарч ирэв. Онолын хувьд энэ нь хангалттай байж болох ч мессеж нь ядаргаатай харагдаж байгаа бөгөөд үнэнийг хэлэхэд бид тэнэг програмаар азтай болсон. Ердийн бичигдсэн программ хангамж нь итгэмжлэлээ тодруулж эсвэл интернет холболт байгаа эсэхийг шалгах бөгөөд өөрөөр хэлбэл зүгээр л эхлүүлэхээс татгалздаг. Энэ тохиолдолд яаж байх вэ? Мэдээжийн хэрэг, кодыг засах хэрэгтэй.

Ихэвчлэн програм зохиогчид нь програм эсвэл түүний "үйл ажиллагаа"-н аль нэгийг (энгийн үгээр хэлбэл, програмын дэлгэц) эхлүүлэх үед зар сурталчилгааг харуулах тусгай анги, эдгээр ангиудын дуудлагын аргыг бий болгодог. Эдгээр ангиудыг олохыг хичээцгээе. Бид smali лавлах руу очно, дараа нь com (org нь зөвхөн cocos2d нээлттэй график номын санг агуулдаг), дараа нь kauf (энэ бол хөгжүүлэгчийн нэр бөгөөд түүний бүх код тэнд байгаа) - тэгээд энд байна, маркетингийн лавлах. Дотор нь бид smali өргөтгөлтэй олон тооны файлуудыг олдог. Эдгээр нь ангиуд бөгөөд тэдгээрийн хамгийн алдартай нь Ad.smali анги бөгөөд нэрнээс нь харахад энэ нь зар сурталчилгаа үзүүлдэг анги гэдгийг таахад хялбар байдаг.

Бид түүний үйлдлийн логикийг өөрчилж болох боловч програмын аль нэг арга руу залгах дуудлагыг арилгах нь илүү хялбар байх болно. Тиймээс бид маркетингийн лавлахаас гарч, зэргэлдээ бөөмийн лавлах руу, дараа нь виртуал бамбар руу очно. MainActivity.smali файл энд онцгой анхаарал хандуулах ёстой. Энэ бол Android SDK-ээр үүсгэгдсэн, програмын нэвтрэх цэг болгон суулгасан стандарт Android анги юм (C хэл дээрх үндсэн функцтэй адил). Файлыг засварлахын тулд нээнэ үү.

Дотор нь smali код (орон нутгийн ассемблер) байдаг. Энэ нь бага түвшний шинж чанартай тул уншихад нэлээд төөрөгдөлтэй тул бид үүнийг судлахгүй, харин зар сурталчилгааны ангийн бүх лавлагааг кодноос олж, тайлбар өгөх болно. Бид хайлтанд "Зар" гэсэн мөрийг оруулаад 25-р мөрөнд очно.

Талбайн хувийн зар: Lcom/kauf/marketing/Ad;

Энд зарын ангиллын объектыг хадгалах зар сурталчилгааны талбар үүсгэгдсэн. Шугамын өмнө ### тэмдэг тавьж тайлбар бичнэ. Бид хайлтаа үргэлжлүүлж байна. 423-р мөр:

Шинэ жишээ v3, Lcom/kauf/marketing/Ad;

Энэ нь объект үүсгэх үйл явц юм. Сэтгэгдэл бичье. Бид хайлтаа үргэлжлүүлж, 433, 435, 466, 468, 738, 740, 800, 802 дугаар мөрөнд зар сурталчилгааны ангиллын аргуудын дуудлагуудыг олдог. Сэтгэгдэл бичье. Ийм л юм шиг байна. Хадгалах. Одоо багцыг дахин нэгтгэж, ажиллагаа, сурталчилгаа байгаа эсэхийг шалгах хэрэгтэй. Туршилтын цэвэр байдлын үүднээс бид AndroidManifest.xml-ээс хасагдсан мөрийг буцааж, багцыг угсарч, гарын үсэг зурж, суулгана.

Манай далайн гахай. Зар сурталчилгаа харагдаж байна

Өө! Зар сурталчилгаа нь зөвхөн програмыг ажиллуулж байх үед алга болсон боловч үндсэн цэсэнд үлдсэн бөгөөд бид програм хангамжийг эхлүүлэх үед хардаг. Тэгэхээр түр хүлээнэ үү, гэхдээ нэвтрэх цэг нь MainActivity анги бөгөөд програм ажиллаж байх үед сурталчилгаа алга болсон ч үндсэн цэсэнд үлдсэн тул нэвтрэх цэг өөр байна уу? Жинхэнэ нэвтрэх цэгийг тодорхойлохын тулд AndroidManifest.xml файлыг дахин нээнэ үү. Тийм ээ, энэ нь дараах мөрүүдийг агуулна.

Тэд бидэнд (мөн хамгийн чухал нь Android) android.intent.category.LAUNCHER ангилалаас android.intent.action.MAIN зорилготой (үйл явдал) үүсгэхийн тулд Start нэртэй үйл ажиллагааг эхлүүлэх ёстойг хэлж байна. Энэ үйл явдал нь эхлүүлэгч дээрх програмын дүрс дээр товших үед үүсдэг тул энэ нь нэвтрэх цэгийг, тухайлбал Start классыг тодорхойлдог. Программист эхлээд үндсэн цэсгүй програм бичиж, орох цэг нь стандарт MainActivity анги байсан бөгөөд дараа нь Start ангилалд тайлбарласан цэсийг агуулсан шинэ цонх (үйл ажиллагаа) нэмж, гараар оруулга хийсэн байх магадлалтай. цэг.

Start.smali файлыг нээж, "Зар" гэсэн мөрийг дахин хайж олоорой, бид 153, 155-р мөрөнд FirstAd ангийн тухай дурдсаныг олно. Энэ нь мөн эх кодонд байгаа бөгөөд нэрнээс нь харахад үндсэн дэлгэц дээр зар харуулах үүрэгтэй. Цаашид харцгаая, FirstAd ангийн жишээг үүсгэсэн бөгөөд контекстийн дагуу энэ инстанстай холбоотой зорилго, дараа нь cond_10 шошго, нөхцөлт шилжилтийг яг жишээ үүсгэхээс өмнө хийдэг. ангийн:

If-ne p1, v0, :cond_10 .line 74 new-instance v0, Landroid/content/Intent; ... :cond_10

Програм нь зар сурталчилгааг үндсэн дэлгэц дээр харуулах эсэхийг санамсаргүй байдлаар тооцоолж, хэрэв үгүй ​​бол cond_10 руу шууд очдог. За, түүний даалгаврыг хялбарчилж, нөхцөлт шилжилтийг болзолгүй шилжилтээр солицгооё:

#if-ne p1, v0, :cond_10 goto:cond_10

Код дотор FirstAd-ийн талаар дурдагдах зүйл байхгүй тул бид файлыг хааж, apktool ашиглан виртуал бамбараа дахин угсардаг. Үүнийг ухаалаг гар утсандаа хуулж, суулгаж, ажиллуул. Voila, бүх зар сурталчилгаа алга болсон тул бид бүгдэд нь баяр хүргэе.

Үр дүн

Энэ нийтлэл нь зөвхөн Android програмыг хакердах, өөрчлөх аргуудын товч танилцуулга юм. Хамгаалалтаа арилгах, ойлгомжгүй кодыг задлан шинжлэх, програмын нөөцийг орчуулах, солих, мөн Android NDK ашиглан бичсэн программуудыг өөрчлөх зэрэг олон асуудал хөшигний ард үлджээ. Гэсэн хэдий ч анхан шатны мэдлэгтэй бол энэ бүгдийг ойлгох нь зөвхөн цаг хугацааны асуудал юм.

Энэ нийтлэлээс та Android програм нь юунаас бүрдэх, APK файлыг хэрхэн нээх, ямар программ ашиглах талаар мэдэх болно.

APK файл гэж юу вэ?

APK нь архивлагдсан гүйцэтгэх боломжтой програмын файлуудад ашиглагддаг Android үйлдлийн системийн формат бөгөөд файлын нэр нь өөрөө юу ч байж болох ч өргөтгөл нь зөвхөн this.apk шиг харагдах ёстой. Бусад үйлдлийн системүүдийн APK аналогууд нь Windows-д .msi, Symbian-д .sis, Linux-д .rpm эсвэл .deb юм.

Дотор нь юу байгааг харцгаая
Үнэн хэрэгтээ, .apk нь ZIP архив тул та WinRAR эсвэл X-plore гар утасны програм гэх мэт ямар ч файлын менежер эсвэл архивлагч ашиглан дотоод төхөөрөмжийг үзэх боломжтой.





Та дотоод нөөцөд зөвхөн харааны хандалт авах боломжтой гэдгийг санах нь зүйтэй бөгөөд засварлах чадвар маш хязгаарлагдмал байдаг.
Бүтэцийг нь харцгаая
.apk дотор бид хэд хэдэн файл, фолдеруудыг харж байгаа бөгөөд тэдгээр нь юунд зориулагдсан болохыг олж мэдье:
  • AndroidManifest.xml нь програмын нэг төрлийн "паспорт" бөгөөд үүнээс та бүх гол зүйл, шаардлага, хувилбар, зөвшөөрөл гэх мэтийг олж мэдэх боломжтой.
  • META-INF энэ файл нь мета өгөгдөл, өөрөөр хэлбэл өгөгдөл, хяналтын нийлбэр, өгөгдөлд хүрэх зам, нөөцийн зам, хяналтын нийлбэр, гэрчилгээний тухай мэдээлэл агуулдаг. Та энэ файлыг дурын текст засварлагчаар нээж болох боловч Notepad++ ашиглахыг зөвлөж байна.
  • Res хавтас нь дүрс, зураг, текст, график интерфейсийн элементүүд гэх мэт програмын бүх нөөц, графикийг агуулдаг. Та мөн хавтас руу хялбархан хандах боломжтой.
  • classes.dex нь Dalvik VM виртуал машинаар гүйцэтгэдэг шууд хэрэглээний программын код бөгөөд та зөвхөн .apk-г задлах замаар энэ файл дотор юу байгааг харж болно, бид энэ тухай бусад нийтлэлд ярих болно. resources.arsc - эмхэтгэсэн XML файл, энэ файл нь хөтөлбөрт хамрагдсан бүх нөөцийн талаархи мэдээллийг агуулдаг.
  • lib - эх номын сан бүхий хавтас, нөөцөд зөвхөн тусгай програм ашиглах үед хандах боломжтой. APK нь com, org, udk гэх мэт файл, хавтас агуулж болох ч үргэлж биш.

Одоо дотоод бүтцийг илүү нарийвчлан авч үзье, үүний тулд бидэнд задлах програм, Java болон APK файл хэрэгтэй. .apk-г задлах гол хэрэгсэл нь Apktool боловч энэ програм нь зөвхөн шугаман дээр ажилладаг бөгөөд энэ нь тийм ч тохиромжтой биш юм. Илүү хурдан бөгөөд илүү хялбар дүн шинжилгээ хийхийн тулд та APKing ашиглаж болно, энэ нь Apktool хэвээр байгаа боловч контекст цэснээс ажиллах чадвартай.
Тиймээс бид APKing-ийг Windows-д зориулсан ямар ч програмын адил суулгаж, .apk-г сонгоод хулганы баруун товчийг дарж, Shift товчийг нэгэн зэрэг дарсны дараа бид дараахь зүйлийг харах болно.


Мөн шаардлагатай үйлдлийг сонго, жишээлбэл, бүрэн задлах, дараа нь програм нь үйлдлийг дуусгаж, ижил нэртэй хавтас үүсгэх болно.


Фолдерыг нээснээр бид APK файлын бүх нөөцөд хандах боломжтой болно.


Одоо бүх текст файлуудыг засварлах боломжтой бөгөөд үндсэн дүрмийг дагаж мөрдөхийн зэрэгцээ та алдартай Notepad++ програмыг ашиглаж болно, жишээлбэл AndroidManifest.xml-ийг авч үзэх боломжтой.

Манай вэбсайтаас Android-д зориулж татаж авах боломжтой Apk editor pro нь гар утасны төхөөрөмжид зориулсан дурын програмын файлын агуулгыг хакердах/өөрчлөх, өөрийн үзэмжээр өөрчлөх боломжийг танд олгоно.

Онцлог шинж чанарууд

Энэхүү програм нь дэвшилтэт хэрэглэгчдийн гарт Android-д зориулсан програмуудыг засварлах хүчирхэг хэрэгсэл болох мэргэжлийн хэрэгсэл юм. Үйл ажиллагаа нь хувийн компьютерт зориулсан ижил төстэй програм хангамжаас бараг ялгаатай биш юм.

Энэ хэрэгсэл юу хийж чадах вэ?

  1. Бусад програмын нэрийг өөрчлөх (орчуулах).
  2. Архитектурын бүтэц, өнгө, график тохиргооны загваруудыг өөрчлөх (жишээлбэл, дүрсний хэмжээ).
  3. Дууны дизайн, медиа файлуудыг өөрчлөх.
  4. Зар сурталчилгаа устгах.
  5. Төлбөртэй контентыг хориглохыг алгасах.
  6. Програмыг төхөөрөмжийн дотоод санах ойноос SD карт руу шилжүүлнэ үү.
  7. Нарийвчлалыг өөрчлөх гэх мэт.

Хэрэгслийг хэрхэн ашиглахыг ойлгохын тулд apk editor pro програмыг татаж аваад цэс рүү очих хэрэгтэй. Дараа нь Android дээр аль хэдийн суулгасан програм эсвэл түүний apk файлыг сонгоно уу. Үүний дараа хэрэглэгч өөрчлөх боломжтой үндсэн өгөгдөл нээгдэх болно.

  • нөөцийг засварлах;
  • файлуудыг солих;
  • ерөнхий засварлах;
  • өгөгдөл засварлах.

Хөтөлбөр нь өөрчлөгдсөн хувилбарыг суулгахыг санал болгоно. Энэ нь бүх тохиолдолд ажиллахгүй тул хуучин хувилбарыг гараар устгаж, шинэ хувилбарыг суулгах шаардлагатай. Устгасны дараа та Android дээрх програмуудын дотроос apk засварлагч хавтсыг (тохиромжтой болгохын тулд та ES Explorer ашиглаж болно) сонгоод өөрчилсөн програмын файлыг олж төхөөрөмж дээрээ суулгана уу.

Програм нь хэрэглэгчдэд ээлтэй интерфэйстэй. Навигаци нь маш энгийн боловч хэрэглэгч үүнийг ойлгохын тулд англи хэлний анхан шатны мэдлэгтэй байх шаардлагатай.

Давуу болон сул талууд

  1. Энэ програм нь хэрэглэгчдэд программуудыг тохируулах өргөн сонголтуудыг нээж өгдөг.
  2. Цэс нь Тусламжийн хэсгийг агуулдаг бөгөөд энэ нь засварлагч програмын олон тооны боломжуудыг энгийн бөгөөд дэлгэрэнгүй тайлбарладаг. Тиймээс програмчлалаас хол байгаа хэрэглэгчид гуравдагч талын эх сурвалжаас жишээ, засварлах заавар хайх шаардлагагүй болно.
  3. Та манай вэбсайтаас програмыг үнэгүй татаж авах боломжтой.

Энэ хэрэгслийг ашиглах нь тодорхой ур чадвар, мэдлэг шаарддаг. Туршлагагүй хэрэглэгчийн гарт засварлах нь файлын системийн бүрэн бүтэн байдлыг зөрчихөд хүргэдэг бөгөөд энэ нь эцсийн эцэст програмын алдаа гарахад хүргэдэг. Тусламжийн цэсэнд зураг бүхий хөрвүүлэх жишээнүүд, Android дээр apk editor pro програмыг хэрхэн зөв ашиглах тухай зөвлөмжүүд байдаг. Тиймээс, хэрэв та энэ програмыг ойлгохыг хүсвэл зааврыг дагаарай.

Редактор нь тохиромжгүй програмын интерфейстэй (орос хэл дутмаг, байнгын сурталчилгаа, баннер гэх мэт) тулгардаг хүмүүст маш хэрэгтэй хэрэгсэл юм. Хэрэв та энэ програмыг аль хэдийн ашиглаж байсан бол доорх сэтгэгдлээ сэтгэгдэл дээр хуваалцаарай.

Энэ үйлдлийн системээр удирддаг ухаалаг утас, таблет эсвэл бусад төхөөрөмжийн хэрэглэгч үйлдвэрлэгч эсвэл худалдагчийн төхөөрөмж дээр суулгасан програмуудын одоогийн дүр төрхөд сэтгэл хангалуун бус байх үед Android системийн програмуудыг засварлах нь ихэвчлэн хийгддэг. Өөр нэг шалтгаан нь зөвхөн Android програмуудын график дизайнд өөрчлөлт оруулахаас гадна янз бүрийн элементүүдийн байршил, үндсэн функцүүдийн гүйцэтгэлд нөлөөлж болзошгүй юм.

Кодод өөрчлөлт оруулахын тулд бараг бүх хэл дээр програмчлалын үндсэн ур чадвар шаардагдана (Java болон C++ хэлийг илүүд үздэг). Графикийг солихын тулд шулуун гар, график засварлагч дээр ажиллах чадвартай байх болно.

Юуны өмнө та зүгээр л Android програмууд дахь графикуудыг солих шаардлагатай эсэх, эсвэл систем дэх элементүүдийн зохион байгуулалтыг өөрчлөх, кодонд илүү гүнзгий өөрчлөлт оруулах шаардлагатай эсэхээ шийдэх хэрэгтэй. Цаашдын алхмууд нь үүнээс хамаарна, үүнд програмтай архив хэлбэрээр ажиллах эсвэл бүрэн задлах, засварлах зэрэг орно.

Андройд системийн програмуудын графикийг өөрчлөх

Анхны графикийг зүгээр л солих эсвэл өөрчлөхийн тулд (товчлуурын өнгийг өөрчлөх, зургийг дахин зурах гэх мэт) компьютер дээрээ стандарт WinRAR архивлагч байхад л хангалттай. Төхөөрөмж дээр хэрэглэгч "үндэс" эрхтэй байх ёстой (Windows дээрх администраторын акаунттай адил), мөн өөр сэргээх (CWM) болон root Explorer (Андройд файлын системд шууд нэвтрэхийн тулд төхөөрөмжид хандах) байхыг зөвлөж байна. өөрөө).

Юуны өмнө та төхөөрөмжид "USB дибаг хийх" функцийг идэвхжүүлж, USB кабель ашиглан компьютерт холбож, шаардлагатай драйверуудыг суулгах хэрэгтэй. Тэдгээр нь ихэвчлэн таны компьютерт холбогдох үед гарч ирэх виртуал диск дээр байрладаг.

Дараа нь та мөн файлын менежерт зориулсан ADB залгаасыг интернетээс татаж авах хэрэгтэй. Энэхүү залгаас нь танд Android системийг бүхэлд нь хавтастай холбогдсон диск хэлбэрээр харах боломжийг олгоно. Бүх системийн програмууд /system/app, түүнчлэн /system/framework-д байрладаг. Хэрэгтэй програмаа олсны дараа үүнийг компьютер дээрээ хуулж аваарай. Хэрэв залгаас суулгаагүй бол та root Explorer ашиглан apk өргөтгөлтэй програмыг зөөврийн SD карт руу хуулж, дараа нь компьютерт шилжүүлж болно.

Хүссэн програмаа хуулж авсны дараа та графикийг засварлаж эхлэх боломжтой. Дашрамд хэлэхэд, Android програмын бүх зургийг png форматаар хадгалдаг бөгөөд үүнийг ямар ч график засварлагчаар хялбархан нээх боломжтой. WinRAR ашиглан програмын файлыг нээхэд хэд хэдэн хавтас харагдах болно. Бид зөвхөн res хавтсыг сонирхож байгаа бөгөөд дотроос нь эргээд олон янзын хавтас олох болно. Эдгээрээс зөвхөн "зурах боломжтой" гэсэн үг хэрэгтэй.

Одоо төхөөрөмжийн төрөл, дэлгэцийн нягтралыг санацгаая. Хэрэв энэ нь ухаалаг гар утас бөгөөд нягтрал нь 240x320 бол бид зурах боломжтой, зурах боломжтой-ldpi хавтаснуудыг голчлон сонирхох болно. Хэрэв нягтрал нь 320x480 бол зурж болох ба зурах боломжтой mdpi фолдерууд, 480x800 нягтралтай бол зурж болох ба зурах боломжтой hdpi фолдерууд. Тэдгээрээс гадна ихэвчлэн "газар" гэсэн үгийг агуулсан хавтаснууд байдаг - эдгээр нь хөрөг горимд зориулсан графикууд юм. төхөөрөмж хазайсан үед.

Хэрэв таны гарт таблет байгаа бол бид зөвхөн ямар ч дэлгэцийн нягтралтай зурах боломжтой, зурах боломжтой mdpi фолдеруудыг сонирхох болно.

Сонгосон фолдеруудаа компьютер дээрээ хуулж авснаар анхны зургуудаа өөрт хэрэгтэй, нүдэнд таалагдах зургаар сольж, өнгөөр ​​будаж болно. Та 9.png-ийн нарийвчлалтай зургуудад онцгой анхаарал хандуулах хэрэгтэй. Баримт нь ийм зургийн периметрийн дагуу нэг пикселийн өргөнтэй тусгай тэмдэг бүхий тусгай хүрээ байдаг бөгөөд түүний бүрэн бүтэн байдлыг зөрчих нь програмын эвдрэлд хүргэдэг. Тиймээс ийм файлуудыг засварлахдаа маш болгоомжтой байх хэрэгтэй.

Фолдерыг засварласны дараа та үүнийг архивт буцааж байршуулах хэрэгтэй бөгөөд энэ нь apk өргөтгөлтэй програм юм. Энэ тохиолдолд WinRAR дахь "шахалтгүй" сонголтыг сонгох шаардлагатай.

Залруулсан програмыг root Explorer ашиглан төхөөрөмж рүү буцаан татаж авна (эхлээд файлыг SD карт руу хуулж, төхөөрөмж рүү хуулна), эсвэл сэргээх горимд гарсны дараа шууд компьютерээс /систем/апп эсвэл / руу татаж авна. систем/фрэймийн хавтас . Дараа нь та root Explorer эсвэл ADB залгаас дээрх тохирох сонголтуудыг ашиглан файлын зөвшөөрлийг тохируулах хэрэгтэй. Тэдгээр нь 644 форматтай байх ёстой. Төхөөрөмжийг дахин ачаалсны дараа та шинэчлэгдсэн програмын үр дүнг харж болно.

Системийн програмуудын эх кодыг засварлах

Системийн програмуудын эх кодыг засварлахад бага зэрэг хүчин чармайлт шаардагдана. Програмд ​​өөрчлөлт оруулсны дараа уг програмыг задалж, угсрахын тулд та дараах хэдэн алхмуудыг хийх шаардлагатай болно.

1) Компьютер дээрээ шаардлагатай програм хангамжийн багцыг хамгийн сүүлийн хувилбараар нь суулгаарай: Java SE Runtime Environment болон Android SDK Windows (програмууд болон тэдгээрийн бүрэлдэхүүн хэсгүүдтэй ажиллах програмууд), APKtool эсвэл APKManager эсвэл Firmware_tool (системийн програмуудыг задлах, задлах гурван програмын нэг) ), NotePad++ засварлагч (Андройд системийн програмуудын эх кодыг өөрчлөхөд зориулагдсан).

2) Төхөөрөмжийн "USB дибаг хийх" функцийг идэвхжүүлж, USB кабель ашиглан компьютерт холбож, төхөөрөмжтэй ажиллахад шаардлагатай драйверуудыг суулгана уу.

3) Дээр дурдсан программуудын аль нэгийг ашиглан програмын кодтой ажиллахын тулд утсан дээрх /system/app хавтаснаас /system/framework хавтас (бүхэл бүтэн) болон системийн программуудыг тохирох програмын хавтас руу гаргаж авах шаардлагатай. Жишээлбэл, Firmware_tool программын хувьд утсан дээрх файлуудыг зохих дэд хавтаснууд дахь C:Firmwaretoolfw_project1_source2_system.img_unpacked хавтас руу хуулах ёстой (програмууд - програмын хавтас руу, хүрээний файлууд - хүрээний хавтас руу). Энэ болон бусад програмуудыг ашиглахдаа тэдгээрийн зааврыг уншихаа мартуузай.

4) "Дэмжих хүрээ" -ийг суулгана, өөрөөр хэлбэл. програмуудыг задлах (жишээ нь, кодыг задлах) болон эмхэтгэлийг (жишээ нь угсрах код) хийх дүрмийн багц.

Энэ нь системийн програмуудтай ажиллах бэлтгэлийг дуусгана.

Төхөөрөмжөөс програмуудыг буулгаж, буцааж ачаалах нь "Андройд системийн програмууд дахь графикийг өөрчлөх" хэсэгт тайлбарласан процедурын нэгэн адил хийгддэг.

Android програмуудын кодыг засварлах нь ихэвчлэн NotePad++ засварлагчийг ашиглан хийгддэг - сонгосон програмчлалын хэлний синтаксийг тодотгох сонголттой хамгийн тохиромжтой текст засварлагчдын нэг. Дүрмээр бол засварлахдаа сонгосон график засварлагчийг ашиглан графикийг өөрчлөх боломжтой.

Засвар хийж дууссаны дараа өөрчлөгдсөн програмыг төхөөрөмжид буцааж татаж авах бөгөөд төхөөрөмж өөрөө дахин асах ёстой. Илүү дэвшилтэт засварлагчид янз бүрийн эмуляторуудыг ашигладаг, жишээлбэл Google-ийн Eclipse, програмуудыг төхөөрөмжид татаж авахаасаа өмнө дибаг хийх.

Android платформд зориулсан програмууд нь apk өргөтгөлтэй нэг файл бөгөөд энэ нь маш тохиромжтой. Үнэн хэрэгтээ ухаалаг гар утас эсвэл таблет дээр ямар ч програм суулгах нь үүнийг зүгээр л гаджет дээрээ хуулж авахад хүргэдэг. apk файл гэж юу вэ, дотор нь юу байгааг хэрхэн харах вэ?

APK файл гэж юу вэ?

APK товчлол нь Android Package Kit буюу Android програмуудад зориулагдсан файлуудын гүйцэтгэх багц гэсэн үг юм. Энэ бол эмхэтгэсэн, ажиллуулахад бэлэн код болон бусад эх сурвалжуудыг агуулсан архив юм. apk файлууд нь Google Play гэх мэт интернет сайтууд дээр хадгалагддаг бөгөөд тэндээс татан авч, гаджетдаа суулгах боломжтой. Тэд шифрлэгдээгүй байна.

Түүний бүтцийг Dalvik эсвэл ART виртуал машины орчинд ажиллуулахаар хөгжүүлэгч бэлтгэдэг. Эдгээр машинууд нь Android үйлдлийн системд суурилагдсан бөгөөд тэдгээр нь таны төхөөрөмж дээрх бүх програмуудыг ажиллуулдаг.

Apk файл нь өөрөө ердийн архив бөгөөд та Windows дээр ямар ч архивлагчаар нээх боломжтой. Жишээлбэл, WinRAR эсвэл ZIP архивыг нээдэг файлын менежер. Дотор нь юу байгааг харцгаая.

  • Dex өргөтгөлтэй гүйцэтгэх боломжтой файл (нэр нь дурын байж болно) бөгөөд энэ нь яг програмын код юм.
  • Хажууд нь resources.arsc байгаа бөгөөд энэ нь программ ашиглах ёстой нөөцийн бүртгэл юм. Энэ нь XML форматтай бүтэц юм.
  • AndroidManifest.xml нь аливаа програмын зайлшгүй шаардлагатай файл бөгөөд түүний талаарх үндсэн мэдээллийг агуулсан манифест юм. Жишээлбэл, програмын хувилбар, шаардлагатай Android хувилбар, хөгжүүлэгчийн тухай мэдээлэл, шаардлагатай дэлгэцийн нягтрал гэх мэтийг бичиж болно.
  • Res лавлах нь програмыг ажиллуулахад шаардлагатай дотоод нөөцүүдийг агуулдаг. Бүх зураг, дүрс, дүрс, газрын зураг гэх мэт энд байж болно.
  • lib лавлах нь програмыг ажиллуулах эх номын сангууд, жишээлбэл, C++ код. Хэрэв номын санг ашиглаагүй бол энэ лавлах байхгүй байж болно.
  • Хөрөнгийн лавлах нь програмын нэмэлт эх сурвалж бөгөөд заримдаа дутуу байж болно. Аль нөөцийг ашиглахыг resources.arsc файлд тайлбарласан болно.
  • META-INF лавлах - програмын мета өгөгдөл. Жишээлбэл, MANIFEST.MF файл нь өгөгдөлд хүрэх замууд болон тэдгээрийн хяналтын нийлбэрүүдийг агуулж болно. RSA сертификатын файлууд, Манифест-хувилбарын мэдээлэл болон ижил төстэй үйлчилгээний мэдээллийг энд хадгалах боломжтой.

Алдартай ARK файл засварлагчдын тойм

Өмнө дурьдсанчлан, та ямар ч ZIP архивлагч ашиглан apk файлыг задлах боломжтой. Үүний дараа та тэнд хадгалагдсан нөөцүүдийг харах боломжтой болно.

Зурган дээр ямар ч асуудал гарахгүй, тэдгээрийг ямар ч тохирох програмаар нээж болно. XML форматыг ямар ч текст засварлагчаар нээх боломжтой, жишээ нь Notepad++. Хэрэв та энэ формат хэрхэн ажилладагийг мэддэг бол тэдгээрийг засах боломжтой. Гэхдээ эмхэтгэсэн гүйцэтгэх файлуудын хувьд та тусгай хэрэгсэл ашиглах хэрэгтэй болно.

Eclipse редактор. Энэ бол програмист хүний ​​хувьд бүрэн хөндлөн платформ орчин юм. Та орчин үеийн ямар ч хэлээр хөгжүүлж, гүйцэтгэх боломжтой файлуудыг, тэр дундаа Android-д зориулж бэлтгэж болно. Олон тооны залгаасуудыг ашиглан орчинг уян хатан байдлаар өөрчилж болно.

Android SDK. Нэрнээс нь харахад энэ нь Android-д тусгайлан зориулсан гар утасны программуудыг хөгжүүлэх тусгай хэрэгсэл юм. Үүний тусламжтайгаар та хэн нэгний програмын гүйцэтгэх файлуудыг хялбархан задлах эсвэл эхнээс нь өөрөө бичих боломжтой. Энэ нь таны кодыг дибаг хийх, турших, программуудыг өөр өөр хэрэглүүрт нийцэж байгаа эсэхийг шалгах гэх мэт төрөл бүрийн модулиудыг сонголтоор холбодгоороо ялгаатай.

APK татаж авагч. Энэ нь Chrome хөтчийн залгаас бөгөөд apk програмыг дурын сайтаас татаж авах, бүтцийг нь үзэхэд маш хялбар болгодог. Үүнийг хийхийн тулд та Google Play дээр бүртгүүлэх шаардлагагүй.

APK засварлагч. apk багц доторх нөөцтэй ажиллах боломжийг олгодог засварлагч. Eclipse шиг хүчирхэг биш ч маш олон энгийн асуудлыг шийддэг. Жишээлбэл, та програмаас зар сурталчилгааны блокуудыг устгах, интерфэйсийг оросжуулах, дүрс эсвэл бүтэцийг өөрийн гараар солих гэх мэт олон зүйлийг хийх боломжтой.