Pafwa gen moun ki vle wè, ak ki kalite ranpli nan yon pwogram espesifik yo? Lè sa a, li te gen yo sèvi ak yon ranvèse-jeni. Ki sa ki sa li ye? Ki jan li travay? Kouman se pwosesis sa a? Tout bagay sa a ou pral aprann nan atik sa a.
Ki sa ki se yon pwogram ranvèse-jeni?
Sa yo rele analiz pwosesis aplikasyon nan lòd yo konprann ki jan li fonksyone, se konsa ke nan lavni nan rkree pwosesis sa a pa fè chanjman ki nesesè yo. Anjeneral itilize pou sa a debugjeur objektif ak Asanble. Tou depan de bon jan kalite a nan lojisyèl an itilize ap diferan ak rezilta a se kantite tan ki ta dwe te pase sou li nan pote nan yon fòm nòmal. Eksplike ranvèse-jeni pou débutan egzanp lan pi byen. Kòm ladan l 'fè yon aplikasyon ekri pou android. Koulye a, kite a dwe chèche konnen kisa ak ki jan.
Travay ak android ki aplikasyon pou
Premye nou bezwen klarifye kèk pwen. Aplikasyon an sèvi ak bitèkod a ak logcat. Sa a tokay lokal deja mansyone debugjeur ak Asanble. Li se tou nesesè yo konprann estrikti a nan aplikasyon yo tèt yo. Se konsa, chak pwogram se yon dosye ak APK a ekstansyon. Li chaje zip'om. Nou enterese nan sa li yo - resous aplikasyon an, classes.dex ak AndroidManifest.xml. Si ou fè sa pwogram sou android, pwoblèm yo ak ansyen an ak lèt la pa ta dwe. Men, classes.dex - sa a Kòd multiple pwogram ki se konpile espesyalman pou machin nan vityèl. Ekstrè soti nan java l 'kòd sous disponib sou entènèt la pa jwenn lajan yo. Men, se li posib jwenn opcodes Dalvik - yon seri espesyal nan kòmandman ke yo te itilize pou machin nan vityèl. Pou yon analoji nou ka di ke sa a tout pèp nan inondasyon lokal yo. Classes.dex tou yo ka konvèti nan yon dosye ak bokal la. Menm nan ka sa a, ou kapab jwenn yon java-Kòd apre dekonpilasyon, ki pral plis oswa mwens lizib. Sa se chemen an nou ale.
dekonpilasyon
pral Pwosesis sa a dwe te pote soti lè l sèvi avèk pwogram APK manger. Anvan ou jwenn te kòmanse, asire w ke gen chofè ki kòrèk la pou devaysa ak fonksyone mòd USB-debogaj. Okòmansman, nou pral bezwen pou avanse pou pi dosye a ke yo pral parcouru nan yon apk_manager direktiv \ plas-APK-isit la-pou-modin. Apre sa, ou ta dwe kouri Script.bat. Si pa gen okenn pwoblèm, lè sa a kòmanse konsole a, ki pral vèt écritures. Chwazi nimewo a pwen nèf - "dekonpilasyon". Yon fwa se pwosesis la te kòmanse, li nesesè pa yo fèmen konsole. Lè sa a, enterè louvri APK-dosye lè l sèvi avèk archivaj a ak ekstrè soti nan li classes.dex, yo dwe trete dex2jar pwogram nan. Pou nou rezilta yo egzije li nesesè pou avanse pou pi yon objè ki gen .bat nan ekstansyon. Ou gen pou wè dosye a, ki pral fini nan bokal. Se konsa, lwen, fenèt la pa fèmen.
nou analize done
Pou jwenn enfòmasyon sou aplikasyon an, ou dwe louvri li manifeste. Dapre li, nou detèmine ki aji kòm aktivite prensipal la. Li te li ki kounye a prezante enpòtans ki genyen pi gran yo ban nou. Li se tou dezirab fè yon gade nan pati anba a nan pwogram nan. Si anba a se enfòmasyon sou manadjè a lisans, li se siyifikativman difisil pote soti nan jeni ranvèse. Si ou chanje a JD-entèfas ak elaji pye bwa a, nou ka wè plizyè namèspas. Sipoze ke twa a nan yo. Nan premye a yo se dosye ki asosye ak piblisite. Dezyèm lan pral klas yo manadjè lisans. Nan twazyèm lan, nou yo se done ki nesesè yo. Li nan lè nou ale. Li pral bezwen jwenn epi retire kle a, ak Lè sa a rès la nan liy ki ki tcheke si gen lisans k ap travay vèsyon. Tout moun sa yo bezwen yo dwe netwaye. Lè sa a, nan Manadjè APK nou an kap chèche yon plas kote plas espesifye bitèkod. Koulye a, kite nou fè yon parantèz ti ak kòmantè soti ekip la, sa ki ka potansyèlman lakòz pwoblèm. Apre sa, nou jis gen nan konpile pwogram nan.
Bati aplikasyon
Sa ap ede nou tout menm bagay Manadjè a APK. Nan konsole a, nou pa t 'fèmen, chwazi atik la №14. Next Trick. Si aplikasyon an se pito konplike, lè ou kòmanse, li ka pasyèlman oswa konplètman pèdi efikasite li yo. pa enkyete, li vle di ke nou yo, se sèlman mwatye gen ak yon lòt kote yo ale. Nou kontinye pote soti nan do-jeni ki gen tout apps android. Di, sa yo dwe fè nan yon ka an patikilye, an tèm jeneral, Ay, se enposib. Se poutèt sa, gade pou kote ki gen pwoblèm ap gen pwòp yo. Pou egzanp, si se yon fenèt aplikasyon bloke fenèt pop-up, ou ta dwe wè kòd a epi retire pati a ki responsab pou dyalòg sa a. Moun ede ou avèk sa a ka JD-entèfas. Kòm ou ka wè, jeni an ranvèse se pa yon biznis fasil, epi li mande yon magazen konsiderab nan konesans. Menm si tout bagay se kouri san yo pa nenpòt pwoblèm, li pral nesesè li teste pèfòmans nan aplikasyon yo. Ki se, se ranvèse-jeni a se pi plis tan konsome aktivite. Nou kontinye travay jouk tout pwoblèm sa yo yo idantifye.
sekirite
E si nou bezwen pwoteksyon tout android ki aplikasyon soti nan jeni ranvèse? Nan ka sa a, gen de opsyon: itilize nan pwogram espesifik oswa kreyasyon an nan yon estrikti kòd ki pral entèfere fè analyse ekri. Opsyon nan lèt se apwopriye pwofesyonèl sèlman ki gen eksperyans, se konsa nou pral egzamine sèlman metòd an premye nan pwoteksyon. Kòm yon espesyalize ProGuard itilize lojisyèl. Aplikasyon sa a, ki te itilize diminye, obfuscation ak kòd optimize. Si pwogram "kouri dèyè a" nan li, nou jwenn yon dosye ak ekstansyon an * apk pi piti pase li te ye. Nan ka sa a li ta pi difisil yo demont. Apre sa, avantaj nan pwogram sa a se ke li te menm te prezante nan bati android aplikasyon yo ak dènye R9. Se poutèt sa, pran avantaj de li se nenpòt pwomotè ki gen zouti estanda nan kreyasyon ak devlopman.
konklizyon
Nou pa ka di ki ka ranvèse-jeni a dwe reprezante kòm yon bagay egzakteman menm jan bon oubyen move. Natirèlman, ki soti nan pwen an de vi nan devlopè, ki moun ki te kreye yon aplikasyon, li se pa yon evènman kè kontan. Men, sou lòt men an, nan anpil ka ki gen eksperyans pwogramasyon ekri dosye ki nesesè yo kapab yon tan mwens chè pase itilize nan zouti sa yo. Malgre ke pou devlopè inisyasyon ranvèse-jeni ka rann yon sèvis bon si pa gen okenn lide sou ki jan yo aplike yon bagay, menm egzanplè, epi yo pa byen deskripsyon klè ka ede ak sa elèv yo reyalize objektif sa a.