internetul Windows. Android

Cum de a trage APK din aplicația instalată. Cum se extrage fișierul APK instalat în Android

Interpolare, interpolarea - în calcularea matematicii, metoda de a găsi valori intermediare ale valorii în funcție de setul discret existent de valori cunoscute.

Mulți dintre cei care se confruntă cu calcule științifice și de inginerie trebuie adesea să funcționeze cu seturi de valori obținute prin experimentate sau prin eșantionare aleatorie. De regulă, pe baza acestor seturi, este necesar să se construiască o funcție pe care alte valori obținute ar putea cădea cu o precizie ridicată. Această sarcină este numită apropiere. Interpolarea se numește un astfel de aproximare, în care curba funcției construite trece exact prin punctele de date disponibile.

Există multe, desigur, diferite metode de interpolare. Cel mai
Metoda Newton este comună pentru interpolarea "înainte" (metoda Newton - Gregory). Polinomul de interpolare în acest caz are forma:

Coeficienții cu descoperire prin formula:

Implementarea programului C #:
folosind sistemul; Interpolarea spațiului de nume (program de clasă ...

Programul este împărțit în două fluxuri într-una din care se efectuează sortarea și într-o altă interfață grafică redresată. După ce faceți clic pe butonul "Sortare", programul se numește "Runsorting", care determină algoritmul de sortare și un nou flux este creat cu procesul de sortare care rulează în ea.
private void Runs ...

Resursele de partajare (CORS) este o specificație W3C care vă permite să efectuați o legătură interacționată în browser. Crearea pe partea de sus a obiectului XmlhttpRequest, CROR permite dezvoltatorilor să lucreze cu aceleași idiomuri ca și solicitările cu un domeniu. Opțiunea de utilizare pentru CORS este simplă. Imaginați-vă că Alice.com are câteva date pe care Bob.com vrea să le primească. Acest tip de interogare nu este permis în mod tradițional în conformitate cu aceeași politică de origine a browserului. Cu toate acestea, sprijinirea CORS, cererile Alice.com pot adăuga mai multe anteturi speciale de răspuns care permit Bob.com să acceseze datele. După cum se poate observa din acest exemplu, sprijinul CORS necesită o coordonare între server și client. Din fericire, dacă sunteți un dezvoltator pe partea clientului, sunteți protejat de majoritatea acestor detalii. Restul acestui articol arată modul în care clienții pot efectua cereri cu pornire încrucișată și, pe măsură ce serverele se pot configura pentru a sprijini CORS. Continua ...

Bună ziua tuturor, astăzi vreau să arăt codul pentru un alt proiect, care este absolut inutil și scris exclusiv pentru divertisment. Odată ce am avut un profesor la lecție și noi, ca cel puțin să vă distrați într-un fel, a început să scrie pe Pascal. Totul a început cu o sirenă simplă, care a forțat blocurile sistemului în audiență să emită sunete, sirene similare ale mașinilor de ambulanță. Toate casele s-au încheiat, scriind un fragment al piesei Linkin Park - amorțit.

Iată programul real:
Utilizează CRT; Var I, temp, nota, nota2, nota4, Nota8: Integer; Procedură PlayNote (F, P: Integer); Începe sunetul (f); Întârzierea (p); Nici un sunet; Întârzierea (20); Sfârșit; Procedură Pauză (P: Integer); Începe întârzierea (P); Sfârșit; Procedură ABORT (Temp, Notă, Notă2, Notă4, Nota8: Integer); Începeți pentru i: \u003d 0 la 1 Începeți PlayNote (880, NOTĂ4); PlayNote (1047, Nota4); PlayNote (880, Nota4); PlayNote (1175, Nota2 + Nota4); PlayNote (1397, Nota2 + Nota4); PlayNote (1319, Notă ...

Mulți utilizatori Android știu că utilizând aplicația Titanium Backup, puteți scoate aplicația de pe dispozitiv ca fișier APK. Astăzi ne vom uita la modul în care puteți scoate fișierul aplicației APK direct de la Google Play Store.

Plusul acestei metode este absența necesității de a preinsta aplicația de pe dispozitiv. Din păcate, această metodă funcționează numai pentru aplicații gratuite. Deci, ce avem nevoie:

1. Google Chrome.

Creați pe desktop cea de-a doua etichetă pentru Google Chrome.

Facem clic dreapta pe etichetă, alegeți "Proprietățile". În câmpul "Obiect", adăugați următoarele comenzi prin spațiu:

Ignorarea certificatelor

Permiteți-fugind-nesigur-conținut

Se pare că este așa:

... \\ chrome.exe "- Certificat-errors - Erori - conținut-ul de funcționare-nesigur

Faceți clic pe "Aplicați" și "OK".

După această operație, trebuie să reporniți browserul prin închiderea tuturor instanțelor de aplicare a aplicației.

2. Numele contului Google și ID-ul dispozitivului

De fapt, vom imita descărcarea aplicației la dispozitiv, deci trebuie să cunoașteți numele contului dvs., adică numele căsuței poștale Google, precum și numărul de identificare al dispozitivului dvs. Android.

Cu un sertar, totul este clar și pentru a afla ID-ul dispozitivului, deschideți dialer pe telefonul smartphone și tastați * # * # 8255 # *

Pe ecranul care apare, trebuie să găsiți "ID-ul dispozitivului:"

Numărul de identificare este o combinație de litere și numere de lângă Android. De exemplu, dacă vedeți "ID-ul dispozitivului: Android-1122AA33BB445577" în linie, identificatorul este combinația "1122A33BB445577". Notați această combinație.

Dacă dintr-un anumit motiv nu puteți cunoaște ID-ul dispozitivului indicat mai sus, puteți descărca pur și simplu aplicația de identificare a dispozitivului pe Google Play Store.

3. APK Downloader.

Descărcați o extensie pentru un browser numit APK Downloader.

În fereastra care apare, introduceți adresa contului Google, adică adresa de e-mail. Parolă (AHA, înfricoșătoare), precum și ID-ul dispozitivului. După aceea, faceți clic pe "Conectare".

În fereastra următoare, selectați tara și operatorul celular, apoi faceți clic pe "Salvați setările". Apoi, ar trebui să apară o fereastră cu un mesaj despre activarea cu succes a expansiunii.

4. Magazin Google Play

Acum mergeți la magazinul nostru preferat Google Play și alegeți orice aplicație gratuită. În partea dreaptă a barei de adrese a browserului va apărea vederea caracteristică a capului verde cu săgeata.

Faceți clic pe această pictogramă, iar aplicația este încărcată cu succes pe computer ca fișier APK. De fapt, acum putem crea distribuții independente ale aplicațiilor gratuite.

Asigurați-vă că decență absolută a dezvoltatorului de expansiune APK Downloader nu este posibilă, deci introduceți datele contului dvs. pentru propria frică și risc. În plus, astfel de acțiuni încalcă în principiu regulile pentru utilizarea magazinului Google Play.

Bună ziua cititori ai site-ului nostru. Cumva unul dintre vizitatorii a cerut ajutor, trebuia să extragă fișiere APK de pe telefonul smartphone Android. Astfel, am decis să descriem răspunsul la această întrebare în acest articol. Cu această operație, puteți face o rezervare a tuturor aplicațiilor instalate pe smartphone, tablete sau alte gadget-uri care rulează sistemul de operare Android.

În ce cazuri este redundanța aplicațiilor instalate?

Situația este prima. Trebuie să resetați telefonul la setările din fabrică, dar nu există acces la Internet sau numai pe telefonul mobil. Nu doriți să descărcați o nouă aplicație de la Google Play atunci, deoarece durează mult timp. Pentru astfel de cazuri există posibilitatea extragerii fișierelor APK de pe dispozitivul Android sau.

Situația este a doua.Aveți un joc incitant instalat, cache-ul de care "cântărește" este foarte mult și mi-a plăcut prietenul tău și mi-a dorit aceeași jucărie, dar, din nou, nu există acces la Internet. Va trebui să facă o rezervare a jocului instalat. Cu instrucțiunile pentru instalarea corectă a jocului de caste pot fi găsite.

Există multe astfel de situații.

Cum să eliminați fișierele APK de pe dispozitivul Android?

Pentru a efectua această sarcină, folosim aplicația gratuită "ES Explorer", care poate fi găsită pe Google Play. De ce acesta este acest dirijor? Da, totul este simplu, este un manager de fișiere excelent și ușor de utilizat și are deja o caracteristică integrată de backup de aplicații. Folosind această caracteristică, puteți extrage fișierele APK dorite de pe dispozitivele Android.

Metoda 1.Deci, ați instalat "ES Explorer", lansați acum:

Imaginea 1.

Accesați meniul Aplicații pentru a face acest lucru, apăsați butonul specificat de noi în colțul din stânga sus al ecranului dispozitivului. Dezvăluie secțiunea "Biblioteci" și faceți clic pe Aplicații.

Figura 2.

Dacă sunteți gata corect - veți deschide o fereastră cu aplicații de utilizator instalate. Apoi, selectați aplicația care trebuie eliminată și apăsați butonul rezervă În partea de jos a ecranului.


Figura 3 Figura 4

Toate aplicațiile recuperate sunt în dosar « Memoria telefonului /backups /aplicații. " Este posibil să observați că în figura 3 și 4 unele fișiere sunt evidențiate în roșu sau verde, astfel încât culorile verzi sunt marcate cu aplicații care au fost rezervate mai devreme și sunt în dosar aplicații. și aplicațiile roșii care au fost extrase mai devreme, dar eliminate din dosar aplicații. (Numai fișierele extrase, nu sunt instalate) șterse. Aici, în principiu, și tot ceea ce este legat de extracție în acest fel.

Figura 5.

Acum, cu aceste fișiere puteți face orice: aruncați la un computer, trimiteți unui prieten prin Bluetooth sau prin e-mail. Reamintiți încă o dată - această metodă face copia de rezervă numai acele aplicații care au fost instalate de utilizator, dar nu și sisteme. Pentru a reduce aplicațiile de sistem, utilizați metoda 2.

Metoda 2. Rulați același "dirijor ES". În partea de sus a ecranului, există o selecție de partiții de memorie (Figura 6) sau accesați meniul "Stocare locală" (Figura 7) și selectați element /Dispozitiv .


Figura 6 Figura 7

Apoi trebuie să mergeți la sistem / aplicație. . Iată toate aplicațiile instalate pe dispozitiv: atât personalizate cât și sistemice. Apoi, căutăm fișierul APK dorit și copiați-l în dosarul dorit. Astfel, veți primi un fișier APK gata de instalare pe alte gadget-uri.

Un avertisment! Pentru ambele moduri, poate va avea. Este destul de acceptabil ca unele fișiere APK extrase ale sistemului să nu fie instalate pe alte dispozitive Android datorită faptului că acestea sunt concepute pentru un anumit firmware.

Asta e tot.

Sperăm că acest post a ajutat la rezolvarea sarcinii și ați reușit să extrageți fișiere APK de pe dispozitivul Android. Dacă sunteți cunoscut alte modalități de a reduce programele sau de a avea întrebări similare - scrieți-ne.

Rămâi cu noi, există încă multe lucruri interesante.

Imaginați-vă următoarea situație: ați stabilit jocul pe Android, a trecut-o și eliminat, dar ați plăcut-o și probabil că doriți să o jucați încă o dată. Dar, pentru a nu uita de acest joc și încă o dată nu-l descărcați, puteți extrage fișierul de fișier și să profitați de ele.

Instrucțiuni: Îndepărtați APK în Android

1. Mergeți la Astro File Manager și faceți clic pe stânga.

2. Se vor deschide instrumente suplimentare. Selectați "Manager de aplicații".

3. Selectați aplicații, fișierele APK pe care doriți să le eliminați. Pentru a face acest lucru, doar tapare pe ele. Dacă doriți să alegeți toate aplicațiile, faceți clic pe pictograma din partea de sus a ecranului.

4. În partea de jos vor apărea două opțiuni noi. Faceți clic pe "Backup".

5. După aceea, va începe copia de fișiere.

Fișierele APK extrase vor fi pe cardul SD din folderul "Backups", precum și în managerul de aplicații Astro Manager din secțiunea "Aplicații copiate".

Asta e tot. Sper că această instrucțiune a fost utilă pentru dvs.

Uneori, unele aplicații pe Android nu sunt satisfăcute cu utilizatorul. De exemplu, puteți cita publicitatea udigue. Și se întâmplă și așa - toată lumea este bună pentru program, dar numai nu există traducere în ea sau o curbă sau nu există nimeni. Sau, de exemplu, un program de încercare și nu există o versiune completă a posibilității. Cum de a schimba situația?

Introducere

În acest articol vom vorbi despre cum să dezasamblați pachetul APK cu aplicația, să luați în considerare structura internă, dezasamblarea și decompilarea codului octetului și încercați să efectuați mai multe modificări ale aplicațiilor care ne pot aduce unul sau altul.

Pentru a face toate acestea pe cont propriu, veți avea nevoie de cel puțin cunoașterea inițială a limbii Java pe care sunt scrise aplicațiile Android, iar limba XML utilizată în Android este peste tot - de la descrierea aplicației în sine și de accesul său Drepturile de stocare a liniilor care vor fi afișate pe ecran. De asemenea, aveți nevoie de capacitatea de a gestiona software-ul de consolă specializat.

Deci, care este pachetul APK, care acoperă absolut toate software-ul pentru Android?

Decompilarea aplicațiilor

În articol, am lucrat numai cu codul de aplicare de dezasamblare, cu toate acestea, dacă faceți schimbări mai grave în aplicațiile mari, codul Smal va fi mult mai complicat. Din fericire, putem decompila codul DEX într-un cod Java, care nu va fi original și nu va fi compilat înapoi, dar este mult mai ușor de citit și de înțeles logica aplicației. Pentru a face acest lucru, vom avea nevoie de două instrumente:

  • dEX2JAR - traducătorul codului de octet Dalvik în codul JVM Byte, pe baza cărora putem obține codul în limba Java;
  • jD-GUI este un decompiler în sine, ceea ce vă permite să obțineți un cod Java care poate fi citit din codul JVM BYTE-Cod. Alternativ, puteți utiliza JAD (www.varaneckas.com/jad); Deși este destul de veche, dar, în unele cazuri, generează un cod mai ușor de citit decât JD-GUI.

Utilizați-le urmează. În primul rând, lansați dex2jar, arătând calea ca argument pentru pachetul APK:

% Dex2jar.sh mail.apk.

Ca rezultat, pachetul de mail.jar Java va apărea în directorul curent, care poate fi deja deschis în JD-GUI pentru a vizualiza codul Java.

Dispozitivul APK pachet și obținerea lor

Pachetul Android Application este, în esență, un fișier zip obișnuit, pentru a vedea conținutul și despachetarea cărora nu sunt necesare instrumente speciale. Este suficient să aveți un arhivă - 7zip pentru ferestre sau o consolă dezarhivă în Linux. Dar se referă la ambalaj. Ce înăuntru? Înăuntru, în general avem o astfel de structură:

  • Meta-inf / - conține un certificat digital al aplicației care atestă Creatorul său și sumele de control ale fișierelor de pachete;
  • res / - diverse resurse pe care aplicația le utilizează în activitatea sa, cum ar fi imaginile, o descriere declarată a interfeței, precum și alte date;
  • Androidmanifest.xml. - Descrierea aplicației. Aceasta include, de exemplu, o listă de permisiuni necesare, versiunea dorită Android și rezoluția necesară a ecranului;
  • clases.dex. - Aplicarea aplicației Byte compilate pentru mașina virtuală Dalvik;
  • resurse.arssc. - De asemenea, resurse, dar un alt tip - în special, linii (da, acest fișier poate fi folosit pentru Rusificare!).

Fișierele și directoarele listate sunt, dacă nu în toate, atunci, probabil, în majoritate absolută APK. Cu toate acestea, merită menționat câteva fișiere / directoare comune:

  • active. - Analogul resurselor. Principala diferență este de a accesa resursa. Este necesar să se cunoască identificatorul său, lista de active poate fi obținută dinamic utilizând metoda AssetManager.List () din codul de aplicare;
  • lib - Bibliotecile native Linux scrise folosind NDK (Kit de Dezvoltare Nativă).

Acest director folosește producătorii de jocuri, plasând motorul de joc, scris în C / C ++, precum și creatori de aplicații de înaltă performanță (de exemplu, Google Chrome). Dispozitivul a dat seama. Dar cum să obțineți un dosar al pachetului de aplicare a interesului? Deoarece fără rădăcină de la dispozitiv pentru a ridica fișierele APK nu este posibilă (ele se află în directorul / Data / App direct) și nu este întotdeauna adecvat să se ocupe, există cel puțin trei moduri de a obține fișierul de aplicație la computer:

  • extensie APK Downloader pentru Chrome;
  • aplicație Real APK Leecher;
  • diverse partajare de fișiere și Lumpy.

Care unul de utilizat este o chestiune de gust; Preferăm să folosim aplicații individuale, așa că descriem folosirea reală a leecherului APK, mai ales că este scrisă pe Java și, în consecință, va funcționa cel puțin în ferestre, chiar și în Nixes.

După pornirea programului, trebuie să completați trei câmpuri: e-mail, parolă și ID dispozitive - și alegeți o limbă. Primele două sunt e-mail și parola dvs. GoogleAccount, pe care o utilizați pe dispozitiv. Al treilea este identificatorul dispozitivului și poate fi obținut prin introducerea codului pe dialer # #8255## Și apoi găsirea șirului de identificare al dispozitivului. La umplere, trebuie să introduceți numai ID-ul fără prefixul Android.

După umplere și salvare, mesajul "Eroare în timpul conectării la server" apare. Nu este legată de jocul Google, atât de îndrăzneț ignoră și căutați pachete care vă interesează.

Vizualizare și modificare

Să presupunem că ați găsit pachetul care vă interesează, descărcat, despachetat ... și când încercați să vizualizați orice fișier XML, a fost surprins să aflați că fișierul nu este text. Ce să decompilați și cum să lucrați cu pachete? Este cu adevărat necesar să puneți un SDK? Nu, SDK nu este deloc necesar. De fapt, pentru toți pașii de despachetare, modificare și ambalare APK au nevoie de următoarele instrumente:

  • archiver Zip. pentru despachetare și căutări;
  • smalti. - BYTE-Cod de asamblare / dezasamblare al mașinii virtuale Dalvik (cod.google.com/p/smali);
  • aAPT. - Un instrument de resurse (prin resursele implicite sunt stocate în formă binară pentru a optimiza performanța aplicațiilor). Acesta este inclus în Android SDK, dar poate fi obținut separat;
  • semnatar. - un instrument pentru semnătura digitală a pachetului modificat (bit.ly/rmrv4m).

Puteți utiliza toate aceste instrumente individuale, dar este incomod, prin urmare, este mai bine să utilizați un software de nivel superior construit pe ele. Dacă lucrați în Linux sau Mac OS X, atunci există un instrument numit apktool. Acesta vă permite să deconectați resursele din tipul original (inclusiv fișierele binare XML și ARSC), redeschideți un pachet cu resurse modificate, dar nu știe cum să semneze pachetele, astfel încât să ruleze utilitarul Signer va trebui să fie manual. În ciuda faptului că utilitarul este scris în Java, instalarea sa este destul de non-standard. Mai întâi trebuie să obțineți fișierul JAR în sine:

$ 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 \u003d ~ / bin: $ calea

Dacă lucrați în Windows, are un instrument excelent numit zece studio, care acumulează și toate aceste instrumente (inclusiv apktool însuși), dar în loc de interfața CLI furnizează utilizatorului o interfață grafică intuitivă cu care puteți efectua operații pe despachetare, dezasamblarea și decomprimarea în mai multe clicuri. Acest instrument de donare, adică apare uneori ferestre cu o propunere de a obține o licență, dar acest lucru este, în cele din urmă, puteți suferi. Nu face nici un punct în descrierea acesteia, pentru că puteți înțelege interfața în câteva minute. Dar apktool, datorită naturii consolei sale, ar trebui discutate mai detaliat.


Luați în considerare opțiunile APKTOOL. Pe scurt, există trei comenzi principale: D (Decodea), B (construi) și dacă (Install-cadru). Dacă totul este clar cu primele două echipe, ce face cel de-al treilea operator condiționat? Despacați cadrul UI specificat, care este necesar în cazurile în care afișați orice pachet de sistem.

Luați în considerare cele mai interesante opțiuni ale primei echipe:

  • -S. - Nu dezasamblați fișierele DEX;
  • -R. - nu despachetați resursele;
  • -b. - Nu introduceți informații de depanare în rezultatele dezasamblatorului fișierului DEX;
  • - caleaframe-calea. - Utilizați cadrul UI specificat în locul apokool încorporat. Acum, luați în considerare câteva opțiuni pentru echipa B:
  • -F. - Adunarea forțată fără a verifica modificările;
  • -A. - Indicați calea către AAPT (instrument pentru asamblarea APK-Archive), dacă doriți să o utilizați dintr-o altă sursă din anumite motive.

APKTOOL este foarte ușor de utilizat, este suficient să specificați una dintre comenzi și calea către APK, de exemplu:

$ apktool d mail.apk

După aceasta, toate fișierele de pachete extrase și de dezasamblare vor apărea în directorul poștal.

Preparabilitate. Opriți publicitatea

Teoria este, desigur, dar de ce este necesar dacă nu știm ce să facem cu un pachet despachetat? Să încercăm să aplicăm teoria cu beneficii pentru tine, și anume, modificăm unele softyn, astfel încât să nu ne modeleze publicitatea. De exemplu, lăsați-l să fie torță virtuală - o torță virtuală. Pentru noi, acest software se va potrivi perfect, pentru că este izbitoare cu publicitate enervantă și este, de asemenea, destul de simplu, pentru a nu se pierde în coduri.


Deci, cu una dintre următoarele metode, descărcați cererea de pe piață. Dacă vă decideți să utilizați virtuoși zece studio, pur și simplu deschideți fișierul APK în aplicație și despachetați-o, pentru ce să creați un proiect (fișier -\u003e un nou proiect), apoi selectați fișierul Import în meniul contextual. Dacă alegerea dvs. a căzut pe Apktool, este suficient să executați o comandă:

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

După aceea, directorul com.kauf.particle.virtualtorch va apărea un arbore de fișier similar celui descris în secțiunea anterioară, dar cu un director opțional Smali în loc de fișiere DEX și un fișier Apktool .yml. Primul conține un cod de aplicație de dezasamblare al fișierului DEX executabil al aplicației, al doilea - informațiile de serviciu necesare APKTOOL pentru a construi un pachet înapoi.

Primul loc unde trebuie să ne uităm, desigur, Androidmanifest.xml. Și aici sărbătorim imediat următoarea linie:

Nu este dificil să ghiciți că este responsabilă pentru furnizarea cererii la utilizarea conexiunii la Internet. De fapt, dacă vrem să scăpăm de publicitate, probabil că vom avea suficiente pentru a interzice aplicația Internet. Să încercăm să o facem. Ștergem șirul specificat și încercați să colectați software-ul utilizând APKTOOL:

$ apktool b com.kauf.particle.Virtualtorch

COM.KAUF.PARTICLE.VIRTUALTHTCH / BUILD / BUILD / BUILD / BUILD / BUILD / BUILD / VATEM. Cu toate acestea, nu va fi posibilă instalarea acesteia, deoarece nu are o semnătură digitală și de verificare a fișierelor (există pur și simplu director Meta-Inf în ea). Trebuie să semnăm un pachet folosind utilitatea APK-Signer. A început. Interfața constă din două file - pe primul (generator-cheie), creăm cheile la al doilea (Apk Signer). Pentru a crea cheia noastră privată, completați următoarele câmpuri:

  • Fișier țintă. - fișierul de stocare a cheii de ieșire; De obicei este stocat o pereche de chei;
  • Parola. și A confirma. - parola pentru depozit;
  • Alias. - numele cheii în depozit;
  • ALIAS Parola. și A confirma. - cheia secretă a parolei;
  • Valabilitate - perioada de valabilitate (în ani). Valoarea implicită este optimă.

Câmpurile rămase, în general, sunt opționale - dar este necesar să se umple cel puțin una.


Avertizare

Pentru a semna aplicația utilizând APK-Signer, trebuie să instalați Android SDK și să specificați calea completă către acesta în setările aplicației.

Toate informațiile sunt furnizate exclusiv în scopuri informative. Nici editorii, nici autorul nu sunt responsabili pentru niciunul rău cauzat de materialele acestui articol.

Acum, această cheie poate fi semnată APK. În fila APK Signer, selectați fișierul nou generat, introduceți o parolă, un alias al unei taste și o parolă la acesta, apoi găsiți fișierul APK și apăsați cu îndrăzneală butonul "Sign". Dacă totul merge bine, pachetul va fi semnat.

Info.

Deoarece am semnat un pachet de către propriul nostru cheie, acesta va intra în conflict cu aplicația originală, ceea ce înseamnă că atunci când încercați să vă actualizați softul pe piață, vom obține o greșeală.

Semnătura digitală este necesară numai de software-ul terț, deci dacă sunteți modificat prin aplicații de sistem care sunt instalate prin copierea în / System / App / App / App / App / App, atunci nu este nevoie să le semnezi.

După aceea, aruncăm pachetul de pe telefonul smartphone, install și rulat. Voila, publicitatea a dispărut! În schimb, totuși, a apărut un mesaj că nu avem internet sau nu există permisiuni adecvate. În teorie, acest lucru ar fi putut fi suficient, dar mesajul arată enervant, și, sincer, am fost doar norocoși cu o aplicație blunt. Software-ul în mod normal scris, cel mai probabil, își va clarifica puterile sau va verifica prezența unei conexiuni la Internet și, în caz contrar, va refuza pur și simplu să înceapă. Cum să fii în acest caz? Desigur, editați codul.

De obicei, autorii aplicației creează clase speciale pentru publicitate și cauzează metode ale acestor clase în timpul lansării cererii sau a uneia dintre "activitățile simpliste, ecrane de aplicare). Să încercăm să găsim aceste clase. Mergem la directorul Smali, apoi COM (în ORG numai biblioteca grafică Cocos2D), urmată de Kauf (este acolo, pentru că acesta este numele dezvoltatorului și există tot codul său) - și aici este, Catalog de marketing. Înăuntru, găsim o grămadă de fișiere cu expansiunea smalilor. Acestea sunt clase, iar cea mai remarcabilă clasă ad.smali este cea mai demn de remarcat, sub numele de care nu este greu de ghicit ce aduce publicitate.

Am putea schimba logica muncii sale, dar mult mai ușor va elimina prost provocările oricărei metode din aplicația în sine. Prin urmare, plecăm din directorul de marketing și mergem la directorul particulelor din apropiere și apoi în Virtualtorch. O atenție deosebită aici merită fișierul de întreprindere. Acesta este un standard pentru clasa Android, care este creat de Android SDK și este instalat ca punct de intrare al aplicației (analogul funcției principale din C). Deschideți fișierul pentru a edita.

În interior este codul smal (asamblorul local). Este destul de încurcat și dificil de citit în virtutea naturii sale la nivel scăzut, așa că nu o vom studia, ci doar găsiți toate referințele la anunțul de clasă în cod și comentați-le. Conduceți șirul "AD" în căutare și cădeți pe linia 25:

Field Private AD: Lcom / Kauf / Marketing / AD;

Câmpul publicitar este creat aici pentru stocarea obiectului anunț al clasei. Să comentăm folosind semnul ### în fața șirului. Continuăm să căutăm. Rândul 423:

Noua instanță V3, Lcom / Kauf / Marketing / AD;

Aici este crearea unui obiect. Cometariu. Continuăm să căutăm și să găsim în liniile 433, 435, 466, 468, 738, 740, 800 și 802 apeluri la metodele de anunț de clasă. Cometariu. Arata ca asta e. Salvăm. Acum, pachetul trebuie să fie colectat înapoi și să verifice performanța și disponibilitatea publicității. Pentru puritatea experimentului, întoarcem telecomanda de la șirul Androidmanifest.xml, colectați pachetul, abonați și instalați.

Iepurele noastre experimentale. Văzută publicitate

Op-Pa! Publicitatea a dispărut numai în timpul aplicației, dar a rămas în meniul principal pe care îl vedem când fugim moale. Deci, așteptați, dar, la urma urmei, punctul de intrare este clasa de întreprindere, iar publicitatea a dispărut în timpul aplicației, dar a rămas în meniul principal, apoi punctul de intrare este diferit? Pentru a dezvălui adevăratul punct de intrare, deschideți fișierul Androidmanifest.xml. Și da, are următoarele linii:

Ei ne spun (și, mai important, Android) că activitatea cu numele de început trebuie să funcționeze ca răspuns la generarea de intenție (evenimente) Android.Intent.Action.Main din categoria Android.Intent.Category.launcher. Acest eveniment este generat atunci când este atins pe pictograma aplicației din Lancher, deci determină punctul de intrare, și anume clasa de pornire. Cel mai probabil, programatorul a scris prima dată aplicația fără un meniu major, punctul de intrare la care a fost clasa de întreținere standard, apoi a adăugat o nouă fereastră (activitate) care conține meniul și descris în clasa de pornire și a făcut-o manual la punctul de intrare .

Deschideți fișierul Start.Smali și căutați din nou șirul de anunțuri, găsim în linia 153 și 155 menționând clasa primară. De asemenea, el are în sursă și, judecând după nume, este responsabil pentru afișarea anunțurilor pe ecranul principal. Parem în continuare, există o instanță a unei instanțe a clasei PRIMAD și a intenției, în funcție de contextul de a avea o relație cu această instanță, iar apoi eticheta Cond_10, tranziția condiționată la care se efectuează precizia înainte de a crea un Instanța clasei:

IF-NE P1, V0,: COND_10.Line 74 Noua instanță V0, Landroid / Conținut / Intenție; ...: Cond_10.

Cel mai probabil, programul este cumva calculează aleatoriu dacă să arate publicitate pe ecranul principal și, dacă nu, sare imediat la Cond_10. Ok, pur și simplu simplificăm sarcina și înlocuim tranziția condiționată la necondiționată:

# IF-NE P1, V0,: Cond_10 Goto: Cond_10

Nu mai există referințe din Cod, așa că închidem fișierul și colectăm din nou torța virtuală folosind apktool. Copiați pe telefonul smartphone, instalați, executați. Voila, toată publicitatea au dispărut, cu care îl felicităm pe toți.

Rezultate

Acest articol este doar o scurtă introducere la metodele de deschidere și modificare a aplicațiilor Android. Pentru scene, au rămas multe întrebări, cum ar fi eliminarea protecției, analiza codului obfuzat, traducerea și înlocuirea resurselor de aplicare, precum și modificarea cererilor scrise utilizând Android NDK. Cu toate acestea, având cunoștințe de bază, înțelegeți toate acestea - numai problema timpului.