ક્યારેક એક જોવા માંગે છે, અને ચોક્કસ કાર્યક્રમ ભરીને કેવા પ્રકારની? પછી તેણે એક ઉલ્ટા ઈજનેરી વાપરવા માટે છે. તે શું છે? તે કેવી રીતે કામ કરે છે? કેવી રીતે આ પ્રક્રિયા શું છે? આ બધા તમે આ લેખ પરથી શીખશે.
એક ઉલ્ટા એન્જિનિયરીંગ કાર્યક્રમો શું છે?
તેથી ક્રમમાં પ્રક્રિયા અરજી વિશ્લેષણ કહેવામાં આવે છે તે સમજવા માટે, તે કેવી રીતે કામ કરે છે, કે જેથી ભવિષ્યમાં જરૂરી ફેરફારો કરીને આ પ્રક્રિયા ફરીથી. સામાન્ય રીતે આ હેતુ ડીબગર અને એસેમ્બ્લર માટે વપરાય છે. વપરાય અલગ હશે સોફ્ટવેર ગુણવત્તા અને પરિણામ પર આધાર રાખીને સમય જથ્થો છે કે તે પર ખર્ચવામાં જોઇએ એક સામાન્ય સ્વરૂપ લાવવાની છે. નવા નિશાળીયા માટે શ્રેષ્ઠ ઉદાહરણ સમજાવો ઉલ્ટા ઈજનેરી. કારણ કે તેના Android માટે લેખિત અરજી કરે છે. હવે શું અને કેવી રીતે બહાર શોધવા માટે બનાવવા માટે બનાવી દો.
સાથે Android કાર્યક્રમો કામ
પ્રથમ અમે કેટલાક મુદ્દાઓને સ્પષ્ટ કરવાની જરૂર છે. અરજી bytecode અને લૉગકેટ ઉપયોગ કરે છે. આ સ્થાનિક સહયોગીઓની અગાઉ ડીબગર અને એસેમ્બલર ઉલ્લેખ કર્યો છે. તે પણ કાર્યક્રમો પોતાને માળખું સમજવા માટે જરૂરી છે. આમ, દરેક કાર્યક્રમ વિસ્તરણ apk સાથે ફાઇલ છે. તેમણે zip'om ઘેરાયેલું હતું. અરજી સ્રોતો, classes.dex અને AndroidManifest.xml - અમે તેની સામગ્રીઓ માં રસ હોય છે. તમે Android પર પ્રોગ્રામિંગ કરો છો, તો ભૂતપૂર્વ અને બાદમાં સાથે ઉભા થયેલા મુદ્દાઓ ન હોવી જોઈએ. પરંતુ classes.dex - આ કાર્યક્રમ બાઇટ કોડના વર્ચ્યુઅલ મશીન માટે ખાસ સંકલિત કરવામાં આવે છે. તેના Java સૉર્સ ઇન્ટરનેટ પર ઉપલબ્ધ કોડ માંથી કાઢો ભંડોળ મળી નથી. આદેશો વર્ચ્યુઅલ મશીન માટે વપરાય છે એક ખાસ સમૂહ - પરંતુ તે શક્ય Dalvik opcodes મેળવવા પડે છે. એક એનલોજી માટે અમે સ્થાનિક પૂર આ વિધાનસભા કે કહી શકો છો. Classes.dex પણ જાર સાથે ફાઇલને રૂપાંતરિત કરી શકાય છે. પણ આવા કિસ્સામાં, તમે જે વધુ અથવા ઓછા વાંચી શકાય હશે decompilation પછી જાવા કોડ મેળવી શકો છો. તે પથ અમે જાઓ છે.
decompilation
આ પ્રક્રિયા Apk ગમાણ પ્રોગ્રામનો ઉપયોગ હાથ ધરવામાં આવશે. પહેલાં તમે શરૂ કરો, તો ખાતરી કરો devaysa અને કામ યુએસબી-ડિબગીંગ સ્થિતિ માટે યોગ્ય ડ્રાઇવર છે કે ત્યાં છે. શરૂઆતમાં, અમે ફાઇલ છે કે જે નિર્દેશ apk_manager \ સ્થળ apk-અહીં માટે મોડિંગ કે વિશ્લેષણ કરવામાં આવશે ખસેડવા જરૂર પડશે. કે પછી તમે Script.bat ચલાવવા જોઈએ. જો ત્યાં કોઈ સમસ્યા હોય, તો પછી કન્સોલ, કે જે ગ્રીન લેટરીંગ હશે શરૂ કરો. "ડીકંપાઇલ" - બિંદુ નંબર નવ પસંદ કરો. એકવાર પ્રક્રિયા શરૂ થાય છે, તે કન્સોલ બંધ કરવા જરૂરી નથી છે. પછી, ઓપન ઇન્ટરેસ્ટ apk ફાઇલ archiver અને અર્ક તેને classes.dex ઉપયોગ કાર્યક્રમ dex2jar પ્રક્રિયા કરી શકાય છે. અમને જરૂરી પરિણામ માટે તે વિસ્તરણ .બેટ સાથે એક પદાર્થ ખસેડવા માટે જરૂરી છે. તમે ફાઇલ, જે જાર માં સમાપ્ત થશે જોશો. અત્યાર સુધી, વિન્ડો બંધ કરતું નથી.
અમે ડેટા વિશ્લેષણ
એપ્લિકેશન વિશે માહિતી મેળવવા માટે, તો તમે તેને પ્રગટ ખોલવા જ જોઈએ. તે અનુસાર, અમે નિર્ધારિત કરો કે મુખ્ય પ્રવૃત્તિ તરીકે કામ કરે છે. તે હતી જેઓ હવે અમને મહાન મહત્વ રજૂ કરે છે. તે પણ કાર્યક્રમ તળિયે જોવા ઇચ્છનીય છે. નીચે લાયસન્સ મેનેજર વિશે જાણકારી હોય, તો તે રિવર્સ એન્જિનિયરિંગ હાથ ધરવા માટે નોંધપાત્ર મુશ્કેલ છે. તમે જેડી-GUI નથી અને વૃક્ષ વિસ્તૃત સ્વિચ, તો અમે કેટલાક નેમસ્પેસેસ જોઈ શકો છો. ધારી તેમને ત્રણ છે. પ્રથમ જાહેરાત સાથે સંકળાયેલ ફાઈલો છે. બીજા લાયસન્સ મેનેજર વર્ગો હશે. તૃતીય, આપણે જરૂરી માહિતી હોય છે. તે જ્યારે અમે જાઓ છે. ત્યાં શોધી અને કી, અને પછી લીટીઓ કે કેમ તેની તપાસ કામ આવૃત્તિ લાઇસન્સ બાકીના દૂર કરવાની જરૂર પડશે. આ તમામ સાફ કરવાની જરૂર છે. પછી અમારી Apk મેનેજરમાં એવું સ્થળ છે જ્યાં સ્થળ સ્પષ્ટ bytecode શોધી. હવે અમને એક નાની વિષયાંતર બનાવવા અને ટીમ, જે સંભવિત સમસ્યાઓ સર્જી શકે છે બહાર ટિપ્પણી દો. તે પછી, અમે ફક્ત કાર્યક્રમ કમ્પાઇલ હોય છે.
કાર્યક્રમો બનાવો
આ અમને બધા જ Apk વ્યવસ્થાપક મદદ કરશે. કન્સોલ, જે અમે લૉક કરવામાં આવ્યું ન હોય, આઇટમ №14 પસંદ કરો. આગળ યુક્તિ. જો અરજી બદલે જટિલ છે જ્યારે તમે શરૂ કરો, તે આંશિક રીતે અથવા સંપૂર્ણપણે તેના કાર્યક્ષમતા ગુમાવી શકે છે. ચિંતા કરશો નહીં, તો એનો અર્થ એ કે અમે માત્ર હાફવે ત્યાં જવા માટે બીજે ક્યાંય છે અને. અમે ઉલ્ટા ઈજનેરી-ઑલ Android એપ્લિકેશન્સ હાથ ધરવા માટે ચાલુ રાખો. કહો, શું ખાસ કિસ્સામાં કરવું, સામાન્ય અર્થમાં, અરે, અશક્ય છે. તેથી, જુઓ સમસ્યા વિસ્તારો માટે પોતાના પડશે. ઉદાહરણ તરીકે, જો એક એપ્લિકેશન વિન્ડો અવરોધિત છે પૉપ-અપ વિંડો, તમે કોડ જોવા અને ભાગ છે કે આ સંવાદ માટે જવાબદાર છે દૂર કરવી જોઈએ. આ સાથે મદદ કરવા માટે જેડી-GUI કરી શકો છો. તમે જોઈ શકો છો તરીકે, ઉલટો ઈજનેરી એક સરળ વ્યવસાય નથી, અને તે જ્ઞાન એક નોંધપાત્ર સ્ટોર માટે જરૂરી છે. પણ જો બધું કોઇ સમસ્યા વિના ચાલે છે, તે કાર્યક્રમો કામગીરી ચકાસવા માટે જરૂરી હશે. એટલે કે, ઉલ્ટા ઈજનેરી વધુ સમય માંગી લે તેવી પ્રવૃત્તિ છે. અમે ત્યાં સુધી બધા સમસ્યાઓ ઓળખવામાં આવે છે કામ કરવા માટે ચાલુ રાખો.
સલામતી
આપણે રક્ષણ રિવર્સ એન્જિનિયરિંગ બધા, Android એપ્લિકેશન જરૂર હોય તો? ચોક્કસ કાર્યક્રમો ઉપયોગ અથવા એક કોડ માળખું બનાવટ કે વિશ્લેષિત લખવામાં બનાવવા માટે દખલ કરશે: આ કિસ્સામાં, ત્યાં બે વિકલ્પો છે. બાદમાં વિકલ્પ યોગ્ય માત્ર અનુભવી વ્યાવસાયિકો છે, તેથી અમે રક્ષણ માત્ર પ્રથમ પદ્ધતિ વિચારણા કરશે. એક વિશિષ્ટ સોફ્ટવેર ઉપયોગ ProGuard છે. આ એપ્લિકેશન, જે ઘટાડવા માટે નિયંત્રણ અને કોડ ઓપ્ટિમાઇઝેશન માટે વપરાય છે. જો તે મારફતે કાર્યક્રમ "પીછો", અમે * એક્સ્ટેન્શન સાથેની ફાઇલ સમાવાયેલ apk કરતા નાની તેમણે મળે છે. આવા કિસ્સામાં તે વધુ મુશ્કેલ ડિસએસેમ્બલ હશે. અને આ કાર્યક્રમ લાભ એ છે કે તે મોડેલના સ્થાને આર -9 અપડેટ્સ બિલ્ડ Android એપ્લિકેશન્સ માં રજૂ કરવામાં આવ્યું છે. તે કોઈપણ વિકાસકર્તા રચના અને વિકાસ પ્રમાણભૂત સાધનો ધરાવે છે તેથી, લાભ લે છે.
નિષ્કર્ષ
અમે કહી શકીએ કે ઉલ્ટા એન્જિનિયરિંગ કંઈક એકસરખી સારી કે ખરાબ તરીકે રજૂ કરી શકાય છે. અલબત્ત, વિકાસકર્તાઓ, જે અરજી બનાવી છે દૃષ્ટિકોણ પ્રમાણે, તે નથી એક સુખી પ્રસંગ છે. પરંતુ બીજી બાજુ, ઘણા કિસ્સાઓમાં જરૂરી ફાઈલો લખી સમય જેમ સાધનો ઉપયોગ કરતાં ઓછી ખર્ચાળ હોઇ શકે છે પ્રોગ્રામરો અનુભવ કર્યો હતો. શિખાઉ વિકાસકર્તાઓ માટે ઉલ્ટા ઈજનેરી સારી સેવા રેન્ડર કરી શકો છો તેમ છતાં જો ત્યાં કેવી રીતે કંઈક અમલ કરવા, પણ આદર્શનીય કોઈ વિચાર છે, અને તદ્દન સ્પષ્ટ રૂપરેખા આ ધ્યેય સિદ્ધિની સાથે મદદ કરી શકે.