ჩამოტვირთეთ პროგრამა Android-ისთვის თამაშის გასახსნელად. ფუნქციური zip და rar არქივები Android-ისთვის. აირჩიეთ კარგი ფაილების გამხსნელი. RAR Android-ისთვის RARLAB-ისგან - სრულფასოვანი WinRar Android-ისთვის

შეგიძლიათ ჩამოტვირთოთ ZIP არქივი Android-ისთვის Google-ის ონლაინ მაღაზიაში Play Store. ამჟამად ფაილის არქივიშეიძლება ჩაითვალოს მონაცემთა ერთ-ერთ ყველაზე პოპულარულ ტიპად. ეს დაახლოებითZIP გაფართოებები, RAR, 7Z, TAR და მრავალი სხვა. არქივების გამოყენების არსი არის მრავალი ფაილის განთავსება გარკვეული ადგილი, რომელიც ნაკლებ ფაილურ ადგილს იკავებს.

თუ სმარტფონზე ან ტაბლეტზე შეფუთული მონაცემების დამუშავების აუცილებლობის წინაშე დგახართ, შეგიძლიათ გამოიყენოთ აპლიკაციები, რომლებიც სპეციალურად შეიქმნა Android ოპერაციული სისტემისთვის.

ეს არის, როგორც წესი, უაღრესად სპეციალიზებული პროგრამები, რომლებიც ფოკუსირებულია მხოლოდ ფაილების შეფუთვაზე და გახსნაზე.

ფაილ მენეჯერების უმეტესობას ასევე აქვს ჩაშენებული არქივის ფუნქციები. ასეთი მენეჯერის ინსტალაციით მომხმარებელი იღებს არა მხოლოდ ფაილების მართვის ხელსაწყოს, არამედ Android-ის არქივერს. თუ თქვენ გაინტერესებთ ცალკე განლაგების აპლიკაცია, მაშინ უნდა გამოიყენოთ შემდეგი პროგრამები.

პოპულარული პროგრამები

AndroZip კარგი პროგრამაა უფასო ინსტრუმენტი, რომელიც ქმნის და ხსნის სხვადასხვა ტიპის არქივებს.

მას აქვს ZIP, RAR, TAR, GZIP, BZIP2 და ა.შ. ფორმატების მხარდაჭერა. AndroZip-ს ასევე აქვს ფაილების მენეჯერი, რომელიც დაგეხმარებათ გადაიტანოთ ზოგიერთი ფაილი საქაღალდეებს შორის ან გაგზავნოთ ისინი სხვა მოწყობილობებზე. ესმარტივი პროგრამა , რომელსაც არ აქვს მოდური ინტერფეისი, მაგრამ თავის საქმეს კარგად ასრულებს. ZIP ფაილების შექმნისას გათვალისწინებულია არქივებზე დაშიფვრისა და პაროლების დაყენების ვარიანტები. AndroZip შეიცავს რეკლამებს, მაგრამ ჩამოტვირთვა უფასოა.მობილური ვერსია

პროგრამა პირველად 2009 წელს გამოჩნდა. B1 Archiver არის ერთ-ერთისაუკეთესო იარაღები შექმნა და გახსნასხვადასხვა სახისარქივები. ის მუშაობს ყველაზე პოპულარულებთანდა RAR, მაგრამ ასევე მხარს უჭერს 37 სხვა გაფართოებას. პროგრამა შესანიშნავია მომხმარებლებისთვის, რომლებიც მიჩვეულნი არიან იმუშაონ უჩვეულო ან უნიკალური ტიპის არქივებთან, რომლებიც უბრალო ადამიანებისთვის უცნობია.

ის გთავაზობთ მრავალ გვერდის მხარდაჭერას RAR არქივებიდა B1, რომელიც შეიძლება სასარგებლო იყოს ზოგიერთ სიტუაციაში. ეს კარგი აპლიკაციათან მოსახერხებელი ინტერფეისი. ფასიანი ვერსიასაშუალებას გაძლევთ გამოიყენოთ ზოგიერთი დამატებითი ფუნქციებიდა თავი დაანებეთ რეკლამას. მაგრამ უფასო აშენებაც კი გამოიყურება წესიერად და შესაფერისია მომხმარებლების უმეტესობისთვის.

პროგრამა, სახელად RAR, ეკუთვნის კომპანია RARLAB-ს, რომელმაც შექმნა WinRAR. ეს არის ცნობილი კომპიუტერის ინსტრუმენტი, რომელიც პორტირებულია Android პლატფორმაზე. იგი მხარს უჭერს მრავალი ფაილის ტიპს, როგორიცაა RAR, ZIP, TAR, 7Z და ა.შ.

უზრუნველყოფილია სტანდარტული ნაკრებიდაშიფვრის პარამეტრები და პაროლის პარამეტრები. თან RAR-ის გამოყენებითშეგიძლიათ ჩაატაროთ ტესტები არქივის ეფექტურობის შესაფასებლად და დაზიანებული მონაცემების აღდგენისთვის. მაგრამ აღადგინე დაზიანებული ფაილებიყოველთვის არ არის შესაძლებელი. RAR აპლიკაცია არის ძლიერი ინსტრუმენტი, რომელიც შესაფერისია მომხმარებლების უმეტესობისთვის.

სხვა Zip პროგრამები

WinZip, რომელიც შეიძლება ჩაითვალოს ერთ-ერთ უძველეს არქივატორად, ახლა ასევე ხელმისაწვდომია Android პლატფორმისთვის.აპლიკაციამ შეინარჩუნა უძველესი ინტერფეისი, რომელიც შეიძლება არ მოგეწონოთ თანამედროვე მომხმარებლები. თუ გარეგნობაპროგრამა არ გაწუხებთ, მაგრამ ყველა სხვა თვალსაზრისით, როგორც ჩანს, ღირსეული აპლიკაციაა.

WinZip მხარს უჭერს ყველა გავრცელებულ და პოპულარულ არქივის ტიპს. მას აქვს უნიკალური ფუნქცია, რომელიც არის Dropbox-ის მხარდაჭერა და Google Drive. კონკურენტი აპები არ გვთავაზობენ ამ ფუნქციებს. საბოლოო ჯამში, WinZip-ის ნაკლოვანებები მხოლოდ მის ძველმოდურ დიზაინს უკავშირდება. ეს უფასო აპლიკაციარომლის გამოცდა ნამდვილად ღირს.

ZArchiver ინსტრუმენტი სრულიად უფასოა და მოდის Android პლატფორმაუკვე დიდი ხანია.ის გთავაზობთ მოსახერხებელ მომხმარებლის ინტერფეისიინტუიციური კონტროლით და მხარს უჭერს მრავალ საარქივო ფორმატს. უზრუნველყოფილია სხვადასხვა ვარიანტებიდაშიფვრა, პაროლით დაცვა და არქივის ნაწილებად დაყოფის შესაძლებლობა.

აპში განსაკუთრებული არაფერია, მაგრამ ეს ხელს არ უშლის მას თავისი საქმის კარგად შესრულებაში. ZArchiver მოერგება მომხმარებელს, რომელსაც უბრალოდ სურს შესვლა, რათა გაიხსნას ან შექმნას არქივი და შემდეგ გამოვიდეს. ჩამოტვირთეთ ეს აპლიკაცია, თუ არ გჭირდებათ დამატებითი ფუნქციები.

შეინახეთ დიდი რაოდენობა დიდი ფაილებიდა მიზანშეწონილია მათი გადატანა მთლიან საქაღალდეებში მხოლოდ მაშინ, როდესაც შესაძლებელია მათი შერწყმა და, თუ შესაძლებელია, შეკუმშვა ზომით. ამისათვის არსებობს სპეციალური პროგრამები, რომლის დამონტაჟებაც კი შესაძლებელია მობილური მოწყობილობა. რომელი არქივი აირჩიოს Android-ისთვის და რა ფუნქციები აქვს თითოეულს?

ეკრანის ანაბეჭდები

აღწერა

ეს აპლიკაცია არის არქივი, რომელიც საშუალებას გაძლევთ იმუშაოთ სხვადასხვა ფორმატის ნებისმიერ არქივთან, მათ შორის 7z. 7zip შეკუმშვა ჩვეულებრივ იძლევა შედეგს 4-25% უფრო მაღალი ვიდრე სხვები.თუმცა არის ახალი გაფართოებები, რომლებიც კიდევ უფრო დიდ შედეგებს იძლევა, მაგრამ ფაილების შეკუმშვას გაცილებით მეტი დრო სჭირდება.

თქვენ კი შეგიძლიათ ჩამოტვირთოთ 7Zipper Play Market-იდან. ინსტალაციის შემდეგ შეგიძლიათ ჩამოტვირთოთ rar ან zip ფაილიდა გახსენით სასურველ მისამართზე.

მთავარ ეკრანზე ამ პროგრამული უზრუნველყოფისყველა ინფორმაცია სისტემის საქაღალდე (შიდა მეხსიერებამოწყობილობები), სისტემის ინფორმაცია(ყველაფერი თქვენი ტელეფონის ან ტაბლეტის შესახებ), ასევე დავალების მენეჯერი, მეხსიერების ბარათის სტატისტიკა და Root Explorer. ბოლო ფაილის მენეჯერიშეუძლია მუშაობა მხოლოდ ჯეილბრეიკულ გაჯეტებზე.

მაგრამ მთავარი თვისება ამ არქივისეს არის მისი მენიუ, რომლის გახსნა შესაძლებელია თითის მარცხნიდან მარჯვნივ გადახვევით. იქ მომხმარებელი იპოვისნამდვილი ორგანიზატორი:

  • დრო და ამინდი;
  • ფოტო კალენდარი (მოწყობილობის კამერით გადაღებული ყველა ფოტო დალაგდება კალენდარში საქაღალდეების, თვეების ან თარიღების მიხედვით);
  • გამოსახულების რედაქტორი (ზომის შეცვლა);
  • კომიქსები;
  • ტექსტის ნახვა (გახსნა ტექსტური ფაილიმკითხველის გარეშე);
  • მედია სკანერი (დაგეხმარება იპოვოთ მედია, რომელიც არ არის ნაჩვენები გალერეაში);
  • მეხსიერების ბარათის ოპტიმიზატორი;
  • ქეშის გასუფთავება;
  • კომპიუტერთან დაკავშირება ლოკალური ქსელის საშუალებით;
  • მხატვარი;
  • ტექსტის რედაქტორი;
  • ფაილის გადაცემა (მხოლოდ ტელეფონებს შორის, მუშაობს Wi-Fi-ით);
  • კალკულატორი;
  • მალსახმობების ოსტატი;
  • კომპასი და მრავალი სხვა ფუნქცია.

თქვენ არ გჭირდებათ რაიმე სპეციალური ცოდნა, თუ როგორ უნდა გახსნათ ფაილი ამ აპლიკაციის გამოყენებით Android-ზე. თქვენ უბრალოდ უნდა იცოდეთ ზუსტად რომელ საქაღალდეშია. შემდეგ ის ან იხსნება ან უბრალოდ მუშაობს მიმაგრებულ ფაილებთან.

დადებითი და უარყოფითი მხარეები

აქ რამდენიმე უპირატესობაა:

  • შეგიძლიათ ჩამოტვირთოთ 7Zipper არქივი Android-ისთვის უფასოდ;
  • მთელი ინტერფეისი რუსულ ენაზეა;
  • პროგრამა შესაძლებელს ხდის Android-ზე არა მხოლოდ zip-ის გახსნას, არამედ 7z ფორმატში ფაილების უფრო ძლიერად შეკუმშვას;
  • აპლიკაციას შეუძლია შეცვალოს რამდენიმე სხვა ერთდროულად, რომლებსაც აქვთ სრულიად განსხვავებული ფუნქციები.

ჩამოტვირთვა

AndroZip

ეკრანის ანაბეჭდები

WinZip

ეკრანის ანაბეჭდები

შედეგები

აქ ჩვენ განვიხილეთ საუკეთესო არქივები Android-ისთვის, რომლებთანაც შეუძლია მუშაობა სხვადასხვა ფორმატშიარქივები და აქვს სხვადასხვა თვისებები. თუ სმარტფონის ან ტაბლეტის მფლობელს სურს მარტივი არქივი, ფაილების არ ჩამოტვირთვის შესაძლებლობით, მისთვის შესაფერისია WinZip. მარტივი დიზაინით სწრაფი წვდომა– AndroZip-ში. თუ მას სურს მიიღოს ბევრი პროგრამა ერთში, მაშინ მას დასჭირდება 7Zipper.

არქივის შედარებითი მახასიათებლები (ფაილის გახსნის შესაძლებლობები):

*** მთელი ცხრილის სანახავად გადაახვიეთ

7 ელვაAndroZipWinZip
RAR+
ZIP+ + +
TAR+ +
გზ+ +
BZ2+
XZ
7z+
B1

RAR Android-ისთვის- უფასო მრავალფუნქციური პროგრამაარქივი ფაილების შეკუმშვისა და დეკომპრესიისთვის თანამედროვე ტელეფონებიდა ტაბლეტები. როგორც RARLAB კომპანიის იდეა, ის ახორციელებს WinRAR აპლიკაციის ყველა ფუნქციას კომპიუტერისთვის. მუშაობს ნებისმიერი საარქივო ფორმატით, მათ შორის უახლესი RAR ვერსიები, PPMd, ZIPX და BZIP2. იყენებს სრული პოტენციალიპროცესორი მონაცემთა დამუშავებისთვის. არქივერს აქვს ტელეფონის მუშაობის განსაზღვრის ფუნქცია.

RAR ეკრანის ანაბეჭდები →

ამ გვერდზე შეგიძლიათ ჩამოტვირთოთ RAR Android-ისთვის უფასოდ. გთავაზობთ ორიგინალს უსაფრთხო ვერსიებიაპლიკაციები დეველოპერისგან. ინსტალაცია RAR არქივიშეგიძლიათ მიიღოთ ბევრი სასარგებლო ფუნქცია.

შესაძლებლობები

  • სწრაფი და ხარისხიანი სამუშაოყველაზე პოპულარული ტიპის არქივებით - RAR და ZIP.
  • არქივების გახსნა ARJ, GZ, XZ, 7z, ISO, BZ2 და TAR ფორმატებში.
  • მრავალტომიანი არქივების შექმნა.
  • მუშაობა სხვადასხვა ტიპის უწყვეტ არქივებთან.
  • საჭირო დაშიფრული არქივების შექმნა.
  • დაზიანებული ფაილების გამოვლენისა და აღდგენის ფუნქცია.
  • სერვისის მონაცემების არქივებში დამატების შესაძლებლობა, მათი აღდგენა ფიზიკური დაზიანების შემთხვევაში.
  • გაზრდილი შეკუმშვის სიჩქარე (რამდენიმე პროცესორის ბირთვის გამოყენებით ფაილების ერთდროულად დასამუშავებლად).
  • ინსტალაცია პაროლის დაცვამომსახურების ინფორმაციისთვის და RAR ფორმატის არქივების სარჩევისთვის.
  • არქივების აღჭურვა კომენტარებით.

RAR პროგრამა არის უნივერსალური მენეჯერი სამუშაოდ შეკუმშული ფაილები, საშუალებას გაძლევთ შექმნათ არქივები, რომლებიც შემდეგ იდეალურად იმუშავებენ თქვენს კომპიუტერზე. ეს აადვილებს წიგნების ჩამოტვირთვას, თამაშების გახსნას, ფოტოების და ვიდეოების შეკუმშვას. ეს დიდი პროგრამატელეფონებისთვის აქტიური მომხმარებლები მობილური აპლიკაციები. შეგიძლიათ ჩამოტვირთოთ RAR არქივი Android-ისთვის პირდაპირი ბმულის გამოყენებით.

ანდროიდის არქივები ბევრს სჭირდება, ვისთვისაც სმარტფონზე მუშაობა ხანდახან მატარებლით ან მეტროთი სახლის გზაზე აგრძელებს.
ბევრი ადამიანი მიჩვეულია WinRAR-ის გამოყენებას და მსგავსი პროგრამებიმონაცემების არქივებში დესკტოპის კომპიუტერის შესაფუთად, გარეგნულად და სწრაფად ანდროიდის ზრდა OS-ის ჩვევები რჩება და ზოგჯერ უბრალოდ საჭიროა მონაცემების დაარქივება ან მათი ამოღება არქივიდან პირდაპირ ტელეფონზე. ამიტომ დღეს ჩვენ ვირჩევთ საუკეთესო არქივატორი Android-ისთვის.

განმცხადებელთა სია:
1.
2.
3.
4.
5.

ასე რომ, ჩვენ გვაქვს ხუთი განსხვავებული არქივი საოპერაციო ოთახისთვის. ანდროიდის სისტემები, გავეცნოთ თითოეულ მათგანს და ავირჩიოთ საუკეთესო.

AndroZip Root ფაილების მენეჯერი

ერთ-ერთი პირველი არქივი, რომელიც გამოჩნდა Android OS-ზე, ჯერ კიდევ 2009 წელს აპლიკაციამ სწრაფად დაიწყო განვითარება და იმ დროს ათასობით გულშემატკივარიც კი არ იყო. AndroZip-ით შეგიძლიათ მარტივად დააკოპიროთ, გადაიტანოთ, წაშალოთ, გახსენით და დაარქივოთ ნებისმიერი ზომის ფაილი. ჩართულია მიმდინარე მომენტი AndroZip ფაილ მენეჯერს ჰყავს დაახლოებით 40 მილიონი აქტიური მომხმარებელი და მათი რიცხვი მუდმივად იზრდება.

ფორმატის მხარდაჭერა:

- Rar (ამონაწერი)


- BZip2 (ამონაწერი)
- 7Z (ამონაწერი)

ეკრანის ანაბეჭდები:

PowerGrasp


ელეგანტური და მოსახერხებელი არქივატორი ფაილების მენეჯერის ფუნქციით და არქივის ძირითადი გაფართოებების მხარდაჭერით. არსებობს Bluetooth-ის საშუალებით მონაცემთა გადაცემის მხარდაჭერა. ჩაშენებულ ფაილ მენეჯერს აქვს ყველა საჭირო სტანდარტული ფუნქცია, როგორიცაა კოპირება, ჩასმა, ამოჭრა, გადატანა და ა.შ. არსებობს რუსული ენის მხარდაჭერა.

ფორმატის მხარდაჭერა:
- Zip (არქივი\ ამონაწერი)
- Rar (ამონაწერი)
- tar (არქივირება/მოპოვება)
- 7Z (არქივი\ ამონაწერი)

ეკრანის ანაბეჭდები:

არქიდროიდი


მარტივი და ამავე დროს საკმაოდ ფუნქციონალური არქივი Android-ისთვის. ამ არქივის დადებითი თვისებაა მრავალარქივის მხარდაჭერა (რამდენიმე ნაწილის არქივები RAR ფორმატი). თქვენ ასევე შეგიძლიათ დააინსტალიროთ ArchiDroid, როგორც ნაგულისხმევი არქივი, რითაც დააჩქარებს ფაილების ამოხსნის პროცესს ინტერნეტიდან ჩამოტვირთვისას.

ფორმატის მხარდაჭერა:

- tar (არქივირება/მოპოვება)

- 7Z (ამონაწერი)
- GZip (ამონაწერი)
- BZip2 (ამონაწერი)

ეკრანის ანაბეჭდები:

Unrar Pro


მარტივი არქივი, რომელიც არ საჭიროებს რესურსების დიდ რაოდენობას, მაგრამ აპლიკაციის ფუნქციონირება განსაკუთრებით არ არის განვითარებული მის კონკურენტებთან შედარებით. არსებობს არქივების პაროლების ამოხსნის მხარდაჭერა და კოდი ოპტიმიზირებულია, რაც მნიშვნელოვნად ზრდის შესრულებას სტანდარტული ვერსია UnRar.

ფორმატის მხარდაჭერა:
- Zip (არქივი\ ამონაწერი\პაროლის მხარდაჭერა)
- Rar (ამონაწერი\პაროლის მხარდაჭერა)

ეკრანის ანაბეჭდები:

ზარჩივერი


თუმცა ZArchiver თურმე ბოლო არქივატორისიაში, მაგრამ ის ნამდვილად შეიძლება ჩაითვალოს საუკეთესოდ. აპლიკაციის მდიდარი ფუნქციონალობა უბრალოდ ანადგურებს კონკურენტებს, მუშაობის სიჩქარე ზოგჯერ უბრალოდ გასაოცარია და ის საუკეთესოა არქივის მრავალნაკადიანი მუშაობის წყალობით. კონკურენტებისგან განსხვავებით, ZArchiver-ს არ აქვს პრობლემა კირიულ ტექსტებთან, კარგად არის გააზრებული ერთდროულად რამდენიმე ფაილთან მუშაობისთვის, აქვს სწრაფი ხედიფაილის თვისებები (ტიპი, ზომა, md5, ცვლილების თარიღი... და ა.შ.). ZArchiver-ით შეგიძლიათ ნახოთ ფაილები არქივებში მათი ამოღების გარეშე, რაც ზოგჯერ სასარგებლოა. მშვენივრად მუშაობს 1.6 და უფრო მაღალი ოპერაციული სისტემებით.

ფორმატის მხარდაჭერა:
- Zip (არქივი\ ამონაწერი\პაროლის მხარდაჭერა)
- 7Z (არქივი\ ამონაწერი\პაროლის მხარდაჭერა)
- BZip2 (არქივი\ ამონაწერი)
- GZip (არქივი\ ამონაწერი)
- XZ (არქივი\ ამონაწერი)
- tar (არქივირება/მოპოვება)
- Rar (ამონაწერი)
- ISO (ამონაწერი)
- arj (ამონაწერი)
- LZH (ექსტრაქტი)
- LZMA (ექსტრაქტი)
- CAB (ექსტრაქტი)
- Xar (მოპოვება)
- Deb (ამონაწერი)
- RPM (აღდგენა)
- Tbz (ამონაწერი)
- Tgz (ამონაწერი)
- Apk (ნახვა\დაამატე არქივში\წაშლა არქივიდან)

ზოგჯერ ანდროიდზე არსებული ზოგიერთი აპლიკაცია მომხმარებლისთვის გარკვეულწილად არ ჯდება. ამის მაგალითია ინტრუზიული რეკლამა. ასევე ხდება, რომ პროგრამა ყველასთვის კარგია, მაგრამ მასში თარგმანი ან მრუდეა, ან საერთოდ არ არსებობს. ან, მაგალითად, პროგრამა არის საცდელი, მაგრამ მიიღეთ სრული ვერსიაარ არის შესაძლებლობა. როგორ შევცვალოთ სიტუაცია?

შესავალი

ამ სტატიაში ვისაუბრებთ იმაზე, თუ როგორ უნდა დაიშალოთ APK პაკეტი აპლიკაციით, განვიხილავთ მას შიდა სტრუქტურა, დაშალეთ და დაშალეთ ბაიტეკოდი და ასევე ეცადეთ განახორციელოთ რამდენიმე ცვლილება აპლიკაციებში, რამაც შეიძლება მოგვიტანოს ესა თუ ის სარგებელი.

ამ ყველაფრის დამოუკიდებლად გასაკეთებლად, სულ მცირე, დაგჭირდებათ ძირითადი ცოდნა ჯავის ენა, რომელშიც იწერება ანდროიდის აპლიკაციები და XML ენა, რომელიც ყველგან გამოიყენება Android-ში - თავად აპლიკაციისა და მისი წვდომის უფლებების აღწერიდან დაწყებული, ეკრანზე გამოსახული სტრიქონების შენახვამდე. თქვენ ასევე დაგჭირდებათ სპეციალიზებული კონსოლის პროგრამული უზრუნველყოფის გამოყენების შესაძლებლობა.

მაშ, რა არის APK პაკეტი, რომელშიც განაწილებულია აბსოლუტურად ყველა Android პროგრამა?

აპლიკაციის დეკომპილაცია

ამ სტატიაში ჩვენ მხოლოდ დაშლილი აპლიკაციის კოდით ვიმუშავეთ, მაგრამ თუ დიდი აპლიკაციებიუფრო სერიოზული ცვლილებების შეტანა, smali კოდის გაგება გაცილებით რთული იქნება. საბედნიეროდ, ჩვენ შეგვიძლია dex კოდის დეკომპილირება Java-ის კოდში, რომელიც, მართალია, ორიგინალი არ არის და არ არის შედგენილი, მაგრამ ბევრად უფრო ადვილია წაკითხვა და აპლიკაციის ლოგიკის გაგება. ამისათვის ჩვენ დაგვჭირდება ორი ინსტრუმენტი:

  • dex2jar არის Dalvik bytecode-ის თარჯიმანი JVM bytecode-ზე, რომლის საფუძველზეც შეგვიძლია მივიღოთ კოდი Java ენაზე;
  • jd-gui არის თავად დეკომპილერი, რომელიც საშუალებას გაძლევთ მიიღოთ იკითხებადი Java კოდი JVM bytecode-დან. როგორც ალტერნატივა, შეგიძლიათ გამოიყენოთ Jad (www.varaneckas.com/jad); მიუხედავად იმისა, რომ საკმაოდ ძველია, ზოგიერთ შემთხვევაში უფრო მეტს გამოიმუშავებს იკითხებადი კოდი, ვიდრე ჯდ-გუი.

ასე უნდა იქნას გამოყენებული. პირველ რიგში, ჩვენ ვიწყებთ dex2jar-ს, არგუმენტად აკონკრეტებთ გზას apk პაკეტისკენ:

% dex2jar.sh mail.apk

შედეგად, Java პაკეტი mail.jar გამოჩნდება მიმდინარე დირექტორიაში, რომელიც უკვე შეიძლება გაიხსნას jd-gui-ში Java კოდის სანახავად.

APK პაკეტების მოწყობა და მათი მიღება

პლასტიკური ჩანთა ანდროიდის აპლიკაციები, ფაქტობრივად, არის ჩვეულებრივი ZIP ფაილი, არ არის საჭირო სპეციალური ინსტრუმენტები შინაარსის სანახავად და ამოსაღებად. საკმარისია გქონდეთ არქივატორი - 7zip Windows-ისთვის ან კონსოლის unzip Linux-ზე. მაგრამ ეს ეხება შეფუთვას. რა არის შიგნით? შიგნით გვაქვს ზოგადი შემთხვევაეს სტრუქტურა:

  • META-INF/- შეიცავს ციფრული სერთიფიკატიაპლიკაცია, მისი შემქმნელის იდენტიფიცირება და პაკეტის ფაილების შემოწმება;
  • res/ - სხვადასხვა რესურსი, რომელსაც აპლიკაცია იყენებს თავის მუშაობაში, როგორიცაა სურათები, ინტერფეისის დეკლარაციული აღწერა, ასევე სხვა მონაცემები;
  • AndroidManifest.xml- განაცხადის აღწერა. ეს მოიცავს, მაგალითად, საჭირო ნებართვების ჩამონათვალს ანდროიდის ვერსიადა საჭირო ნებართვაეკრანი;
  • კლასები.dex- შედგენილი აპლიკაციის ბაიტიკოდი ვირტუალურისთვის დალვიკის მანქანები;
  • რესურსები.arsc- ასევე რესურსები, მაგრამ სხვა სახის - კერძოდ, სტრიქონები (დიახ, ეს ფაილი შეიძლება გამოყენებულ იქნას რუსიფიკაციისთვის!).

ჩამოთვლილი ფაილები და დირექტორიები არის, თუ არა ყველა, მაშინ, შესაძლოა, APK-ების დიდ უმრავლესობაში. თუმცა, არის კიდევ რამდენიმე არც თუ ისე გავრცელებული ფაილი/ცნობარი, რომელიც უნდა აღინიშნოს:

  • აქტივები- რესურსების ანალოგი. მთავარი განსხვავება ისაა, რომ რესურსზე წვდომისთვის საჭიროა იცოდეთ მისი იდენტიფიკატორი, მაგრამ აქტივების სიის დინამიურად მიღება შესაძლებელია აპლიკაციის კოდში AssetManager.list() მეთოდის გამოყენებით;
  • lib- მშობლიური Linux ბიბლიოთეკები დაწერილი NDK (Native Development Kit) გამოყენებით.

ამ დირექტორიას იყენებენ თამაშების მწარმოებლები, სადაც ათავსებენ თამაშის ძრავას დაწერილი C/C++, ასევე მაღალი ხარისხის აპლიკაციების შემქმნელების მიერ (მაგალითად, Google Chrome). ჩვენ გავარკვიეთ მოწყობილობა. მაგრამ როგორ იღებთ თქვენთვის საინტერესო აპლიკაციის პაკეტის ფაილს? ვინაიდან შეუძლებელია მოწყობილობიდან APK ფაილების ამოღება root-ის გარეშე (ისინი განლაგებულია /data/app დირექტორიაში) და rooting ყოველთვის არ არის მიზანშეწონილი, აპლიკაციის ფაილის თქვენს კომპიუტერში გადატანის მინიმუმ სამი გზა არსებობს:

  • APK Downloader გაფართოება Chrome-ისთვის;
  • რეალური APK Leecher აპლიკაცია;
  • სხვადასხვა ფაილების ჰოსტინგი და ვარეზნიკები.

რომელი გამოვიყენოთ გემოვნების საკითხია; ჩვენ გვირჩევნია გამოვიყენოთ ინდივიდუალური აპლიკაციებიმაშასადამე, ჩვენ აღვწერთ Real APK Leecher-ის გამოყენებას, მით უმეტეს, რომ ის Java-ზეა დაწერილი და, შესაბამისად, იმუშავებს Windows-ში ან Nix-ში.

პროგრამის დაწყების შემდეგ თქვენ უნდა შეავსოთ სამი ველი: ელფოსტა, პაროლი და მოწყობილობის ID - და აირჩიეთ ენა. პირველი ორი არის თქვენი Google ანგარიშის ელექტრონული ფოსტა და პაროლი, რომელსაც იყენებთ მოწყობილობაზე. მესამე არის მოწყობილობის იდენტიფიკატორი და მისი მიღება შესაძლებელია აკრიფეთ კოდის აკრეფით # #8255## და შემდეგ მოძებნეთ მოწყობილობის ID ხაზი. შევსებისას საჭიროა მხოლოდ ID-ის შეყვანა ანდროიდის პრეფიქსის გარეშე.

შევსების და შენახვის შემდეგ ხშირად ჩნდება შეტყობინება „შეცდომა სერვერთან დაკავშირებისას“. არაფერ შუაშია Google Playასე რომ, მოგერიდებათ უგულებელყოთ იგი და მოძებნეთ თქვენთვის საინტერესო პაკეტები.

ნახვა და შეცვლა

ვთქვათ, იპოვნეთ თქვენთვის საინტერესო პაკეტი, გადმოწერეთ, ამოშალეთ... და როცა ცდილობდით ზოგიერთი XML ფაილის ნახვას, გაგიკვირდათ, როცა აღმოაჩინეთ, რომ ფაილი არ იყო ტექსტი. როგორ ხდება მისი დეკომპილი და ზოგადად პაკეტებთან მუშაობა? ნამდვილად საჭიროა SDK-ის დაყენება? არა, საერთოდ არ არის საჭირო SDK-ის დაყენება. სინამდვილეში, APK პაკეტების ამოღების, შეცვლისა და შეფუთვის ყველა ნაბიჯი მოითხოვს შემდეგ ინსტრუმენტებს:

  • ZIP არქივატორიგასახსნელად და შესაფუთად;
  • სმალი- ბაიტიკოდის ასამბლერი/დაშლა ვირტუალური მანქანადალვიკი (code.google.com/p/smali);
  • აპტ- რესურსების შეფუთვის ხელსაწყო (ნაგულისხმევად, რესურსები ინახება ორობითი ფორმით აპლიკაციის მუშაობის ოპტიმიზაციისთვის). შედის ანდროიდის შემადგენლობა SDK, მაგრამ ასევე შეგიძლიათ მიიღოთ ცალკე;
  • ხელმომწერი- ინსტრუმენტი ციფრული ხელმოწერაშეცვლილი პაკეტი (bit.ly/Rmrv4M).

თქვენ შეგიძლიათ გამოიყენოთ ყველა ეს ინსტრუმენტი ცალკე, მაგრამ ეს მოუხერხებელია, ამიტომ უმჯობესია გამოიყენოთ უფრო მაღალი დონის პროგრამული უზრუნველყოფა, რომელიც აგებულია მათ საფუძველზე. თუ მუშაობთ Linux-ზე ან Mac OS X-ზე, არსებობს ინსტრუმენტი სახელწოდებით apktool. ეს საშუალებას გაძლევთ გახსნათ რესურსები მასში ორიგინალური სახე(მათ შორის ორობითი XML და arsc ფაილები), აღადგინეთ პაკეტი შეცვლილი რესურსებით, მაგრამ არ იცის როგორ მოაწეროს ხელი პაკეტებს, ამიტომ მოგიწევთ ხელმომწერის პროგრამის ხელით გაშვება. იმისდა მიუხედავად, რომ პროგრამა დაწერილია ჯავაში, მისი ინსტალაცია საკმაოდ არასტანდარტულია. ჯერ თავად უნდა მიიღოთ 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 $ export PATH=~/bin:$PATH

თუ თქვენ მუშაობთ Windows-ზე, მაშინ არის მისთვის შესანიშნავი ინსტრუმენტი სახელწოდებით Virtuous Ten Studio, რომელიც ასევე აგროვებს ყველა ამ ინსტრუმენტს (თავად apktool-ის ჩათვლით), მაგრამ CLI ინტერფეისის ნაცვლად მომხმარებელს აძლევს ინტუიციურ შესაძლებლობებს. GUI, რომლითაც შეგიძლიათ რამდენიმე დაწკაპუნებით შეასრულოთ შეფუთვის, დაშლის და დეკომპილაციის ოპერაციები. ეს ინსტრუმენტი არის Donation-ware, ანუ ხანდახან ჩნდება ფანჯრები, რომლებიც გთხოვენ ლიცენზიის მიღებას, მაგრამ საბოლოოდ ეს შეიძლება მოითმინოს. აზრი არ აქვს მის აღწერას, რადგან ინტერფეისის გაგება რამდენიმე წუთში შეგიძლიათ. მაგრამ apktool, მისი კონსოლის ბუნებიდან გამომდინარე, უფრო დეტალურად უნდა იყოს განხილული.


მოდით შევხედოთ apktool-ის ვარიანტებს. მოკლედ სამია ძირითადი ბრძანებები: d (გაშიფვრა), b (აშენება) და თუ (დააინსტალირე ჩარჩო). თუ ყველაფერი ნათელია პირველი ორი ბრძანებით, მაშინ რას აკეთებს მესამე? პირობითი ოპერატორი? ის ხსნის მითითებულ ინტერფეისის ჩარჩოს, რაც აუცილებელია იმ შემთხვევებში, როდესაც თქვენ ანაწილებთ რომელიმე სისტემის პაკეტს.

განვიხილოთ ყველაზე მეტი საინტერესო ვარიანტებიპირველი გუნდი:

  • -ს- არ დაშალოთ dex ფაილები;
  • -რ- არ გახსნათ რესურსები;
  • -ბ- არ ჩადოთ გამართვის ინფორმაცია dex ფაილის დაშლის შედეგებში;
  • --ჩარჩო-გზა- გამოიყენეთ მითითებული UI ჩარჩო apktool-ში ჩაშენებულის ნაცვლად. ახლა მოდით გადავხედოთ b ბრძანების რამდენიმე ვარიანტს:
  • -ვ- იძულებითი შეკრება ცვლილებების შემოწმების გარეშე;
  • -ა- მიუთითეთ გზა 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 უტილიტის გამოყენებით. გაუშვა. ინტერფეისი შედგება ორი ჩანართისაგან - პირველზე (Key Generator) ჩვენ ვქმნით გასაღებებს, მეორეზე (APK Signer) ვაწერთ ხელს. რომ შევქმნათ ჩვენი პირადი გასაღები, შეავსეთ შემდეგი ველები:

  • სამიზნე ფაილი- keystore გამომავალი ფაილი; ის ჩვეულებრივ ინახავს ერთ წყვილ გასაღებს;
  • პაროლიდა დაადასტურეთ- პაროლი შენახვისთვის;
  • მეტსახელი- გასაღების დასახელება საცავში;
  • მეტსახელის პაროლიდა დაადასტურეთ- საიდუმლო გასაღების პაროლი;
  • მოქმედების ვადა- მოქმედების ვადა (წლები). ნაგულისხმევი მნიშვნელობა ოპტიმალურია.

დანარჩენი ველები, ზოგადად, არჩევითია - მაგრამ მინიმუმ ერთი უნდა იყოს შევსებული.


გაფრთხილება

იმისათვის, რომ ხელი მოაწეროთ აპლიკაციას apk-signer-ის გამოყენებით, თქვენ უნდა დააინსტალიროთ Android SDKდა მიუთითეთ სრული გზამანამდე აპლიკაციის პარამეტრებში.

ყველა ინფორმაცია მოცემულია მხოლოდ საინფორმაციო მიზნებისთვის. არც რედაქტორები და არც ავტორი არ არიან პასუხისმგებელი რაიმეზე შესაძლო ზიანიგამოწვეული ამ სტატიის მასალებით.

ახლა თქვენ შეგიძლიათ ხელი მოაწეროთ APK-ს ამ გასაღებით. APK Signer ჩანართზე აირჩიეთ ახლად გენერირებული ფაილი, შეიყვანეთ პაროლი, გასაღების მეტსახელი და პაროლი, შემდეგ იპოვეთ APK ფაილიდა თავისუფლად დააჭირეთ ღილაკს "ხელმოწერა". თუ ყველაფერი კარგად წავა, პაკეტს მოეწერება ხელი.

ინფორმაცია

ვინაიდან ჩვენ ხელი მოვაწერეთ პაკეტს ჩვენივე გასაღებით, ის ეწინააღმდეგება თავდაპირველ აპლიკაციას, რაც ნიშნავს, რომ როდესაც ვცდილობთ პროგრამული უზრუნველყოფის განახლებას ბაზრის მეშვეობით, მივიღებთ შეცდომას.

საჭიროა მხოლოდ ციფრული ხელმოწერა მესამე მხარის პროგრამული უზრუნველყოფა, ასე რომ, თუ თქვენ აკეთებთ მოდიფიკაციას სისტემური აპლიკაციები, რომლებიც დაინსტალირებულია /system/app/ დირექტორიაში კოპირებით, მათ ხელმოწერა არ გჭირდებათ.

ამის შემდეგ, ჩამოტვირთეთ პაკეტი თქვენს სმარტფონში, დააინსტალირეთ და გაუშვით. Voila, რეკლამა გაქრა! თუმცა, ამის ნაცვლად, გამოჩნდა შეტყობინება, რომ ჩვენ არ გვაქვს ინტერნეტი ან არ გვაქვს შესაბამისი ნებართვები. თეორიულად, ეს შეიძლება საკმარისი იყოს, მაგრამ მესიჯი გამაღიზიანებლად გამოიყურება და, მართალი გითხრათ, ჩვენ უბრალოდ გაგვიმართლა სულელური აპლიკაცია. ჩვეულებრივ დაწერილი პროგრამული უზრუნველყოფა, დიდი ალბათობით, განმარტავს მის რწმუნებათა სიგელებს ან შეამოწმებს ინტერნეტ კავშირს და სხვაგვარად უბრალოდ უარს იტყვის გაშვებაზე. რა უნდა გააკეთოს ამ შემთხვევაში? რა თქმა უნდა, შეცვალეთ კოდი.

როგორც წესი, აპლიკაციის ავტორები ქმნიან სპეციალური კლასებირეკლამის ჩვენება და ამ კლასების მეთოდების გამოძახება აპლიკაციის ან მისი ერთ-ერთი „აქტივობის“ გაშვების დროს (მარტივი სიტყვებით, აპლიკაციის ეკრანები). შევეცადოთ ვიპოვოთ ეს კლასები. ჩვენ მივდივართ smali დირექტორიაში, შემდეგ com (org-ში მხოლოდ ღიაა გრაფიკული ბიბლიოთეკა cocos2d), შემდეგ kauf (ზუსტად იქ, რადგან ეს არის დეველოპერის სახელი და მთელი მისი კოდი იქ არის) - და აქ არის მარკეტინგის დირექტორია. შიგნით ვპოულობთ ფაილების თაიგულს smali გაფართოებით. ეს არის კლასები და მათგან ყველაზე საყურადღებოა Ad.smali კლასი, რომლის სახელწოდებიდანაც ადვილი მისახვედრია, რომ სწორედ ის აჩვენებს რეკლამას.

ჩვენ შეგვიძლია შევცვალოთ მისი მოქმედების ლოგიკა, მაგრამ ბევრად უფრო ადვილი იქნება ზარების უბრალოდ ამოღება მის რომელიმე მეთოდზე თავად აპლიკაციიდან. ამიტომ, ჩვენ ვტოვებთ მარკეტინგის დირექტორიას და გადავდივართ მიმდებარე ნაწილაკების დირექტორიაში, შემდეგ კი ვირტუალურ ტორშზე. განსაკუთრებული ყურადღება MainActivity.smali ფაილი ამას იმსახურებს. ეს არის სტანდარტი ანდროიდის კლასი, რომელიც შექმნილია Android SDK-ის მიერ და დაყენებულია აპლიკაციაში შესვლის წერტილად (მსგავსი ძირითადი ფუნქციები C-ში). გახსენით ფაილი რედაქტირებისთვის.

შიგნით არის smali კოდი (ლოკალური ასამბლერი). ის საკმაოდ დამაბნეველი და ძნელად წასაკითხია მისი დაბალი დონის გამო, ამიტომ ჩვენ არ შევისწავლით მას, უბრალოდ ვიპოვით ყველა მითითებას რეკლამის კლასზე კოდში და კომენტარს გავაკეთებთ. ჩვენ შევდივართ სტრიქონში "რეკლამა" ძიებაში და მივდივართ სტრიქონზე 25:

საველე პირადი რეკლამა:Lcom/kauf/მარკეტინგი/რეკლამა;

აქ იქმნება სარეკლამო ველი რეკლამის კლასის ობიექტის შესანახად. კომენტარს ვაკეთებთ ხაზის წინ ### ნიშნის განთავსებით. ჩვენ ვაგრძელებთ ძებნას. ხაზი 423:

ახალი ინსტანციის v3, Lcom/kauf/მარკეტინგი/რეკლამა;

აქ ხდება ობიექტის შექმნა. მოდით კომენტარი გავაკეთოთ. ჩვენ ვაგრძელებთ ძიებას და ვპოულობთ 433, 435, 466, 468, 738, 740, 800 და 802 ხაზებში რეკლამის კლასის მეთოდებს. მოდით კომენტარი გავაკეთოთ. როგორც ჩანს, ეს არის. შენახვა. ახლა საჭიროა პაკეტის ხელახლა შეკრება და შემოწმება ფუნქციონალურობისა და რეკლამის არსებობისთვის. ექსპერიმენტის სიწმინდისთვის, ჩვენ ვაბრუნებთ AndroidManifest.xml-დან ამოღებულ ხაზს, ვაწყობთ პაკეტს, მოვაწერთ ხელს და დავაინსტალირებთ.

ჩვენი ზღვის გოჭი. რეკლამა ჩანს

უი! რეკლამა გაქრა მხოლოდ აპლიკაციის მუშაობის დროს, მაგრამ დარჩა მთავარ მენიუში, რომელსაც ვხედავთ პროგრამის გაშვებისას. ასე რომ, დაელოდეთ, მაგრამ შესვლის წერტილი არის MainActivity კლასი და რეკლამა გაქრა აპლიკაციის მუშაობის დროს, მაგრამ დარჩა მთავარ მენიუში, ასე რომ, შესვლის წერტილი განსხვავებულია? ნამდვილი შესვლის წერტილის იდენტიფიცირებისთვის ხელახლა გახსენით AndroidManifest.xml ფაილი. დიახ, ის შეიცავს შემდეგ ხაზებს:

ისინი გვეუბნებიან (და, რაც მთავარია, ანდროიდს), რომ აქტივობა სახელად Start უნდა დაიწყოს საპასუხოდ intent (მოვლენის) android.intent.action.MAIN გენერირებისთვის android.intent.category.LAUNCHER კატეგორიიდან. ეს მოვლენა წარმოიქმნება, როდესაც თქვენ შეეხებით აპლიკაციის ხატულას გამშვებში, ასე რომ, ის განსაზღვრავს შესვლის წერტილს, კერძოდ Start კლასს. სავარაუდოდ, პროგრამისტმა ჯერ დაწერა აპლიკაცია მთავარი მენიუს გარეშე, რომლის შესვლის წერტილი იყო სტანდარტული MainActivity კლასი, შემდეგ დაამატა ახალი ფანჯარა (აქტივობა), რომელიც შეიცავს მენიუს და აღწერილ იქნა Start კლასში, და ხელით გააკეთა ის ჩანაწერად. წერტილი.

გახსენით Start.smali ფაილი და კვლავ მოძებნეთ სტრიქონი "Ad", 153 და 155 სტრიქონებში ვხვდებით FirstAd კლასის ხსენებას. ის ასევე არის საწყის კოდში და, სახელწოდებით თუ ვიმსჯელებთ, ის პასუხისმგებელია მთავარ ეკრანზე რეკლამის ჩვენებაზე. მოდით გადავხედოთ უფრო შორს, ჩვენ ვქმნით FirstAd კლასის ინსტალაციას და განზრახვას, რომელიც, კონტექსტის მიხედვით, დაკავშირებულია ამ მაგალითთან და შემდეგ cond_10 ეტიკეტზე, პირობითი ნახტომირომელიც ხორციელდება ზუსტად კლასის ინსტანციის შექმნამდე:

If-ne p1, v0, :cond_10 .ხაზი 74 new-instance v0, Landroid/content/Intent; ... :cond_10

სავარაუდოდ, პროგრამა რატომღაც შემთხვევით ითვლის, უნდა იყოს თუ არა რეკლამა მთავარ ეკრანზე ნაჩვენები, და თუ არა, პირდაპირ გადადის cond_10-ზე. კარგი, მოდით გავამარტივოთ მისი ამოცანა და შევცვალოთ პირობითი გადასვლა უპირობოთი:

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

კოდში FirstAd-ის ნახსენები აღარ არის, ამიტომ ჩვენ ვხურავთ ფაილს და ხელახლა ვაწყობთ ჩვენს ვირტუალურ ჩირაღდნებს apktool-ის გამოყენებით. დააკოპირეთ იგი თქვენს სმარტფონში, დააინსტალირეთ, გაუშვით. ვოილა, ყველა რეკლამა გაქრა, რისთვისაც ყველას გილოცავთ.

შედეგები

ეს სტატია მხოლოდ მოკლე შესავალი Android აპლიკაციების გახსნისა და შეცვლის მეთოდებში. ბევრი პრობლემა დარჩა კულისებში, როგორიცაა დაცვის მოხსნა, ბუნდოვანი კოდის გაანალიზება, აპლიკაციის რესურსების თარგმნა და ჩანაცვლება, ასევე დაწერილი აპლიკაციების შეცვლა. Android-ის გამოყენებით NDK. თუმცა, რომელსაც ძირითადი ცოდნა, ამ ყველაფრის დალაგება მხოლოდ დროის საკითხია.



რაიმე შეკითხვა?

შეატყობინეთ შეცდომას

ტექსტი, რომელიც გაეგზავნება ჩვენს რედაქტორებს: