Indraindray ny iray te hahita, ary inona no mameno ao amin'ny fandaharana manokana? Avy eo izy dia tsy maintsy mampiasa ny mifamadika-injeniera. Inona moa izany? Ahoana no miasa? Ahoana no dingana izany? Izany rehetra izany dia mianatra avy amin'ity lahatsoratra ity.
Inona no atao hoe mifanohitra-injeniera fandaharana?
Dingana fampiharana antsoina hoe fanadihadiana, mba hahatakatra ny fomba fiasan'izy, ka amin'ny ho avy mahary ity dingana ity amin'ny alalan'ny fanaovana ny fanovana ilaina. Matetika ampiasaina ho an'ny tanjona izany debugger sy ny assembler. Arakaraka ny hatsaran'ny ny rindrambaiko nampiasaina ho samy hafa, ary ny vokany dia ny fotoana izay tokony ho lany eo amboniny mba hampiditra endrika ara-dalàna. Hazavao mifanohitra-injeniera ny tsara indrindra ho an'ny beginners ohatra. Rehefa manao fangatahana azy nosoratana ho Android. Aoka ny ho mba hahitana ny zavatra sy ny fomba.
Niara-niasa tamin'ny fampiharana Android-
Voalohany tokony hanazavana hevitra sasany. Ny fampiharana dia mampiasa ny bytecode sy LogCat. Io voalaza eo an-toerana aloha debugger mitovy sy ny assembler. Tena ilaina ny mahatakatra ihany koa ny firafitry ny fampiharana ny tenany. Noho izany, isaky ny fandaharana dia misy rakitra iray mitondra ny fanitarana apk. Zip'om no nentiny. Isika liana amin'ny anatiny - fampiharana loharanon-karena, sy AndroidManifest.xml classes.dex. Raha manao fandaharana ao amin'ny Android, ny olana sy ny teo aloha sy ny farany tsy tokony ho. Fa classes.dex - fandaharana io fehezan-dalàna byte izay nanangona manokana ho an'ny milina virtoaly. Hanesorana amin'ny mari-tomboky ny Java hita ao amin'ny Internet dia tsy mahazo ny vola. Anefa no azo atao mba hahazoana dalvik opcodes - manokana napetraka ny didy izay ampiasaina amin'ny milina ny virtoaly. Fa ny fampitahana afaka milaza isika fa io fiangonana, dia ny tondra-drano ao an-toerana. Classes.dex ihany koa dia afaka hiova fo ho misy rakitra iray mitondra ny tavoara. Na dia tahaka izany, dia afaka mahazo ny Java-fehezan-dalàna aorian'ny decompilation, izay ho mora kokoa ny na latsaka vakiana. Izany no lalana izahay.
decompilation
Ity dingana ity dia ho entina mivoaka mampiasa fandaharana apk pihinanam-bilona. Alohan'ny hanomboka, ho azo antoka fa misy ny marina sy ny mpamily ny devaysa miasa USB-debugging fomba. Tamin'ny voalohany isika, dia mila manetsika ny rakitra izay ho parsed ho toromarika apk_manager \ toerana-apk-eto-for-modding. Rehefa afaka izany, tokony mihazakazaka Script.bat. Raha tsy misy olana, dia manomboka ny hampionona, izay ho maitso soratra. Fanteno ny hevitra isa sivy - "Decompile". Raha vao nanomboka ny dingana dia, dia tsy ilaina ny hanakatona hampionona. Avy eo, misokatra tombontsoa apk-rakitra mampiasa ny Archiver sy nalaina avy aminy classes.dex, mba ho ampiasaina dex2jar fandaharana. Ho antsika ny vokatra takiana dia ilaina ny mifindra zavatra amin'ny fanitarana .bat. Ho hitanao ny antontan-taratasy, izay hifarana amin'ny .jar. Hatramin'izao aloha, ny varavarankely tsy hanidy.
mandinika isika tahirin-kevitra
Mba hahazoana fanazavana momba ny fangatahana, dia tsy maintsy manokatra azy miharihary. Araka izany, dia mamaritra izay miasa ho toy ny tena asa. Tamin'ny izy Ankehitriny dia maneho ny maha zava-dehibe lehibe indrindra ho antsika. Tsara ihany koa ny mijery eo amin'ny farany ambany ny fandaharana. Raha ny ambany dia ny vaovao mikasika ny fahazoan-dàlana mpitantana, dia sarotra be ny hanatanteraka mivadika injeniera. Raha mifamadika ny jd-Gui sy hanitatra ny hazo isika, dia afaka mahita maro anaran-tsehatra. Mieritreritra fa ny telo tamin'izy ireo. Ao amin'ny voalohany, dia ny antontan-taratasy mifandray amin'ny dokam-barotra. Ny faharoa dia ny fahazoan-dàlana kilasy mpitantana. Tamin'ny fahatelo, isika no ilaina angona. Izany rehefa mandeha. Tsy dia mila mahita, ary manala ny fanalahidy izy ireo ka avy eo ny sisa amin'ny tsipika izay hahitana raha dikan-fahazoan-dalana miasa. Ireo rehetra ireo mila diovina. Ary ao amin'ny apk Manager mitady toerana izay voalaza bytecode toerana. Ary aoka izahay hanao digression kely sy fanehoan-kevitra avy ny ekipa, izay mety hiteraka olana. Ary rehefa afaka izany, dia tsy maintsy manangona fotsiny ny fandaharana.
Manaova fampiharana
Izany dia hanampy antsika izany rehetra apk Manager. Ao amin'ny hampionona, izay efa tsy mihidy, mifidy ny zavatra №14. Next fika. Raha ny fampiharana izany fa sarotra atao, rehefa manomboka, dia mety ho very tanteraka ny ampahany na ny fahaiza-miasa mahomby. Aza manahy, dia midika fa isika dia misy ihany ary antsasa-toeran-kafa mba handeha. Manohy ny hanatanteraka mifamadika-injeniera-Android fampiharana rehetra. Lazao, izay tokony hatao amin'ny raharaha manokana, amin'ny ankapobeny teny, indrisy, misy azo atao. Noho izany, dia tadiavo ny olana faritra dia hanana ny. Ohatra, raha misy fangatahana varavarankely dia voasakana pop-ny varavarankely, dia tokony hahita ny fehezan-dalàna, ary hanala ny ampahany izay tompon'andraikitra fifanakalozan-kevitra ity. Mba hanampiana izany dia afaka jd-Gui. Araka ny hitanao, ny injeniera dia tsy mivadika mora raharaham-barotra, ary mitaky be fivarotana ny fahalalana. Na dia ny zavatra rehetra dia nihazakazaka tsy misy olana, dia ho ilaina mba hizaha toetra ny fanatanterahana ny fampiharana. Izany hoe, ny mifanohitra-injeniera dia mandany fotoana kokoa ny asa. Tsy manohy ny asany mandra-pahatongan'ny ny olana rehetra no amantarana.
fiarovana
Ahoana raha mila fiarovana rehetra avy amin'ny fampiharana Android-mifanohitra injeniera? Amin'ity tranga ity, dia misy safidy roa: ny fampiasana ny fandaharana manokana, na ny fananganana ny fehezan-dalàna rafitra izay hisakana hanao parsing voasoratra. Ny safidy farany no mety matihanina ihany no za-draharaha, ka Hodinihintsika voalohany ihany ny fomba fiarovana. Amin'ny maha-manokana ny fampiasana rindrambaiko ProGuard. Io fangatahana, izay ampiasaina mba hampihenana, obfuscation sy ny fehezan-dalàna Optimization. Raha ny fandaharana "hividy" ny alalan 'izany, dia mahazo misy rakitra iray mitondra ny fanitarana * .apk kely noho izy. Tahaka izany dia mety ho sarotra kokoa ny disassemble. Ary ny mahatsara ny fandaharana io fa dia misy mihitsy aza nampidirina tao amin'ny manaova fampiharana amin'ny Android r9 vaovao farany. Noho izany, manararaotra ny dia misy developer manana fitsipika fitaovana famoronana sy ny fampandrosoana.
famaranana
Tsy afaka milaza fa ny mifanohitra-injeniera dia azo aseho ho toy ny zavatra mitovy ny tsara na ratsy. Mazava ho azy, avy amin'ny fomba fijery ny mpandraharaha, izay namorona ny fangatahana, dia tsy ho sambatra hetsika. Fa amin'ny lafiny iray hafa, amin'ny toe-javatra maro niaina rindrambaiko ny fanoratana ny antontan-taratasy ilaina dia afaka ny ho fotoana lafo kokoa noho ny fampiasana ny fitaovana toy izany. Na ho an'ny mpandraharaha fahaizana mifamadika-injeniera mahavaly tsara ny fanompoana raha tsy misy hevitra ny fomba hampiharana zavatra, na dia fakan-tahaka, fa tsy tena mazava drafitra dia afaka manampy amin'ny zava-bitany izany tanjona.