Jak wyodrębnić apk z zainstalowanej aplikacji. Jak pobrać plik apk aplikacji bezpośrednio ze sklepu Google Play

Miękki reset to „miękka” procedura ponownego uruchomienia urządzenie przenośne(telefon, PDA lub komunikator). Przypomina to ponowne uruchomienie komputera przy użyciu odpowiedniej opcji menu głównego. System uruchamia się ponownie, a wszystkie informacje pozostają nienaruszone, w przeciwieństwie do twardego resetu.

Będziesz potrzebować

  • - komunikator, telefon komórkowy lub PDA.

Instrukcje

  • Wykonaj miękki restart urządzenia, jeśli jest zamrożone i musisz je ożywić. Jeśli urządzenie nie reaguje na naciśnięcia klawiszy lub rysik na ekranie, wykonaj miękki reset. Aby to zrobić, po lewej stronie komunikatora naciśnij ostrym rysikiem przycisk Reset. Przycisk ten znajduje się w lewym dolnym rogu i jest czerwony. Oprócz rysika można go docisnąć dowolnym innym ostrym przedmiotem (spinaczem lub ołówkiem).
  • Wykonaj miękki reset komunikatora. Aby to zrobić, możesz użyć narzędzia HD Tweak. Po zainstalowaniu w menu programu pojawi się skrót, za pomocą którego można „miękko zrestartować” urządzenie. Możesz także wykonać miękki reset, naciskając długo przycisk zasilania. Na ekranie pojawi się okno dialogowe, w którym należy potwierdzić wyłączenie urządzenia. Następnie włącz go tym samym przyciskiem.
  • Wykonaj miękki reset w telefonie Nokia. Aby to zrobić, wpisz kombinację klawiszy *#7780# lub przejdź do „Menu”, a następnie wybierz „Opcje” - wybierz „Zarządzanie telefonem” i opcję „Ustawienia początkowe”. Następnie na ekranie pojawi się żądanie podania hasła blokady, domyślne hasło to 12345. Należy pamiętać, że to polecenie może spowodować usunięcie kontaktów i wiadomości, dlatego przed jego wykonaniem należy wykonać kopię zapasową informacji na karcie pamięci.
  • Pobierz aplikację dla Soft Zresetuj telefony LG – HD2 SoftReset, można go pobrać z linku http://www.mobyware.ru/download.php?program_id=12650&device_id=995. Skopiuj plik na swój telefon i zainstaluj go. W menu Aplikacje pojawi się skrót do aplikacji. Aby wykonać miękki reset telefon komórkowy, po prostu uruchom program z jego menu. Ta aplikacja jest również odpowiednia dla telefonów HTC.
  • Witam czytelników naszej witryny. Pewnego dnia jeden z odwiedzających poprosił o pomoc; potrzebował wyodrębnić pliki APK ze smartfona z Androidem. Dlatego postanowiliśmy opisać odpowiedź na to pytanie w tym artykule. Korzystając z tej operacji, możesz wykonać kopię zapasową wszystkich zainstalowanych aplikacji na smartfonie, tablecie lub innych uruchomionych gadżetach system operacyjny Android.

    W jakich przypadkach wykonywana jest kopia zapasowa zainstalowanych aplikacji?

    Sytuacja pierwsza. Trzeba zresetować telefon do ustawień fabrycznych, ale nie ma dostępu do Internetu lub jest tylko dostęp mobilny. Nie chcesz ponownie pobierać aplikacji z Google Play ponieważ zajmie to dużo czasu. W takich przypadkach możliwe jest wyodrębnienie plików APK z urządzenia z systemem Android lub plików .

    Sytuacja druga. Masz zainstalowaną ekscytującą grę, której pamięć podręczna „dużo waży”, a twojemu przyjacielowi się spodobała i chciał tej samej zabawki, ale znowu nie ma dostępu do Internetu. To tutaj będziesz musiał dokonać rezerwacji. zainstalowana gra. Z instrukcją dot prawidłowa instalacja można znaleźć gry z pamięcią podręczną.

    Jest wiele takich sytuacji.

    Jak wyodrębnić pliki APK z urządzenia z Androidem?

    Do wykonania tego zadania będziemy potrzebować darmowej aplikacji ES Explorer, którą można znaleźć w sklepie Google Play. Dlaczego ten konkretny dyrygent? To proste, jest doskonałym i łatwym w użyciu menedżerem plików i ma już zintegrowaną funkcję tworzenia kopii zapasowych aplikacji. Korzystając z tej funkcji, możesz wyodrębnić żądane pliki APK z urządzeń z systemem Android.

    Metoda 1. Tak więc zainstalowałeś „ES Explorer”, teraz uruchommy go:

    Obrazek 1

    Przechodzimy w tym celu do menu aplikacji, wciskamy przycisk, który wskazaliśmy w lewym górnym rogu ekranu urządzenia. Rozwiń sekcję „Biblioteki” i kliknij Aplikacje.

    Rysunek 2

    Jeśli wszystko zrobiłeś poprawnie, otworzy się przed tobą okno z zainstalowanymi aplikacjami użytkownika. Następnie wybierz aplikację, którą chcesz wyodrębnić i naciśnij przycisk rezerwa u dołu ekranu.


    Rysunek 3 Rysunek 4

    Wszystkie wyodrębnione aplikacje znajdują się w folderze « Pamięć telefonu/kopie zapasowe/aplikacje”. Być może zauważyłeś, że na rysunkach 3 i 4 niektóre pliki są podświetlone na czerwono lub zielony, a więc tak: aplikacje, których kopię zapasową utworzono wcześniej i które znajdują się w folderze, są zaznaczone na zielono aplikacje , a na czerwono - aplikacje, które również zostały wcześniej wyodrębnione, ale usunięte z folderu aplikacje (usuwane są tylko wyodrębnione pliki, a nie instalowane). To w zasadzie wszystko, co można powiedzieć o ekstrakcji tą metodą.

    Rysunek 5

    Teraz możesz zrobić z tymi plikami co chcesz: wysłać je na swój komputer, wysłać do znajomego poprzez Bluetooth lub e-mail. Przypomnijmy jeszcze raz, że tą metodą archiwizowane są tylko te aplikacje, które zostały zainstalowane przez użytkownika, a nie systemowe. Aby wykonać kopię zapasową aplikacji systemowych, użyj metody 2.

    Metoda 2. Uruchamiamy ten sam „ES Explorer”. U góry ekranu znajduje się wybór sekcji pamięci (rysunek 6) lub przejdź do menu „Pamięć lokalna” (rysunek 7) i wybierz element /Urządzenie .


    Rysunek 6 Rysunek 7

    Następnie musisz iść do system/aplikacja . Oto wszystkie aplikacje zainstalowane na urządzeniu: zarówno użytkownika, jak i system. Następnie szukamy wymaganego pliku APK i kopiujemy go do żądanego folderu. W ten sposób otrzymasz gotowy plik APK do instalacji na innych gadżetach.

    Ostrzeżenie! W przypadku obu metod może być konieczne. Jest całkiem możliwe, że niektóre wyodrębnione systemowe pliki APK mogą nie zostać zainstalowane na innych urządzeniach z Androidem, ponieważ są przeznaczone dla określonego oprogramowania sprzętowego.

    To wszystko.

    Mamy nadzieję, że ten post pomógł rozwiązać problem i udało Ci się wyodrębnić pliki APK z urządzenia z Androidem. Jeśli znasz inne sposoby rezerwacji programów lub masz podobne pytania, napisz do nas.

    Bądźcie czujni, przed nami jeszcze wiele ciekawych rzeczy.

    Czasami niektóre aplikacje na Androida w jakiś sposób nie odpowiadają użytkownikowi. Przykładem jest natrętna reklama. Zdarza się też, że program jest dobry dla wszystkich, ale tłumaczenie w nim jest albo krzywe, albo całkowicie nieobecne. Lub na przykład program jest wersją próbną, ale pobierz pełna wersja nie ma możliwości. Jak zmienić sytuację?

    Wstęp

    W tym artykule porozmawiamy o tym, jak zdemontować pakiet APK z aplikacją, przyjrzeć się jego wewnętrznej strukturze, zdezasemblować i dekompilować kod bajtowy, a także spróbować wprowadzić kilka zmian w aplikacjach, które mogą przynieść nam tę czy inną korzyść.

    Aby zrobić to wszystko samodzielnie, będziesz potrzebować przynajmniej podstawowej znajomości języka Java, w którym pisane są aplikacje na Androida, oraz języka XML, który jest używany wszędzie w Androidzie – od opisu samej aplikacji i jej praw dostępu, po przechowywanie ciągów znaków, które zostanie wyświetlony na ekranie. Będziesz także potrzebować umiejętności obsługi specjalistycznego oprogramowania konsoli.

    Czym więc jest pakiet APK, w którym dystrybuowane jest absolutnie całe oprogramowanie na Androida?

    Dekompilacja aplikacji

    W tym artykule pracowaliśmy tylko ze zdezasemblowanym kodem aplikacji, ale jeśli w dużych aplikacjach zostaną wprowadzone poważniejsze zmiany, zrozumienie małego kodu będzie znacznie trudniejsze. Na szczęście kod dex możemy zdekompilować do kodu Java, który choć nie jest oryginalny i nieskompilowany, jest znacznie łatwiejszy do odczytania i zrozumienia logiki aplikacji. Aby to zrobić, będziemy potrzebować dwóch narzędzi:

    • dex2jar jest tłumaczem kodu bajtowego Dalvik na kod bajtowy JVM, na podstawie którego możemy otrzymać kod w języku Java;
    • jd-gui jest samym dekompilatorem, który pozwala uzyskać czytelny kod Java z kodu bajtowego JVM. Alternatywnie możesz użyć Jad (www.varaneckas.com/jad); Chociaż jest dość stary, w niektórych przypadkach generuje bardziej czytelny kod niż Jd-gui.

    Tak należy je stosować. Najpierw uruchamiamy dex2jar, podając jako argument ścieżkę do pakietu apk:

    % dex2jar.sh mail.apk

    W rezultacie pakiet Java mail.jar pojawi się w bieżącym katalogu, który można już otworzyć w jd-gui, aby wyświetlić kod Java.

    Aranżacja pakietów APK i ich odbiór

    Plastikowa torba Aplikacje na Androida w rzeczywistości jest to zwykły plik ZIP, nie ma potrzeby przeglądania zawartości ani jego rozpakowywania. specjalne narzędzia nie wymagane. Wystarczy mieć archiwizator - 7zip dla Windows lub rozpakowanie konsoli na Linuksie. Ale to tyle jeśli chodzi o opakowanie. Co jest w środku? Ogólnie rzecz biorąc, wewnątrz mamy następującą strukturę:

    • META-INF/- zawiera cyfrowy certyfikat aplikacji identyfikujący jej twórcę oraz sumy kontrolne plików pakietu;
    • res/ - różne zasoby, z których korzysta aplikacja w swojej pracy, takie jak obrazy, deklaratywny opis interfejsu, a także inne dane;
    • AndroidManifest.xml- opis aplikacji. Obejmuje to na przykład listę wymaganych uprawnień, wymaganych Wersja na Androida i wymaganą rozdzielczość ekranu;
    • class.dex- skompilowany kod bajtowy aplikacji dla maszyna wirtualna Dalvik;
    • zasoby.arsc- także surowce, ale innego rodzaju - w szczególności ciągi znaków (tak, ten plik można wykorzystać do rusyfikacji!).

    Wymienione pliki i katalogi znajdują się, jeśli nie we wszystkich, to być może w zdecydowanej większości plików APK. Istnieje jednak kilka innych, mniej powszechnych plików/katalogów, o których warto wspomnieć:

    • aktywa- analogia zasobów. Główna różnica polega na tym, że aby uzyskać dostęp do zasobu, trzeba znać jego identyfikator, ale listę zasobów można uzyskać dynamicznie za pomocą metody AssetManager.list() w kodzie aplikacji;
    • biblioteka- natywne biblioteki linuksowe napisane przy użyciu NDK (Native Development Kit).

    Z tego katalogu korzystają producenci gier, umieszczając w nim silnik gry napisany w C/C++, a także twórcy aplikacji o dużej wydajności (np. GoogleChrome). Wymyśliliśmy urządzenie. Ale jak zdobyć plik pakietu aplikacji, która Cię interesuje? Ponieważ nie jest możliwe pobranie plików APK z urządzenia bez rootowania (znajdują się one w katalogu /data/app), a rootowanie nie zawsze jest wskazane, istnieją co najmniej trzy sposoby pobrania pliku aplikacji na komputer:

    • Rozszerzenie APK Downloader dla przeglądarki Chrome;
    • Prawdziwa aplikacja APK Leecher;
    • różne hostingi plików i Varezniki.

    Którego użyć, to kwestia gustu; wolimy korzystać z oddzielnych aplikacji, dlatego opiszemy użycie Real APK Leecher, zwłaszcza że jest on napisany w Javie i odpowiednio będzie działał zarówno w systemie Windows, jak i Nix.

    Po uruchomieniu programu należy wypełnić trzy pola: E-mail, Hasło i Identyfikator urządzenia – oraz wybrać język. Pierwsze dwa to adres e-mail i hasło do Twojego konta Google, którego używasz na urządzeniu. Trzeci to identyfikator urządzenia, który można uzyskać wpisując kod na dialerze # #8255## a następnie znalezienie wiersza identyfikatora urządzenia. Podczas wypełniania wystarczy podać identyfikator bez prefiksu android-.

    Po wypełnieniu i zapisaniu często pojawia się komunikat „Błąd podczas łączenia z serwerem”. Nie ma to nic wspólnego z Google Play, więc możesz go zignorować i poszukać pakietów, które Cię interesują.

    Przeglądaj i modyfikuj

    Załóżmy, że znalazłeś pakiet, który Cię interesuje, pobrałeś go, rozpakowałeś... i kiedy próbowałeś wyświetlić jakiś plik XML, ze zdziwieniem odkryłeś, że nie jest to plik tekstowy. Jak go zdekompilować i ogólnie jak pracować z pakietami? Czy naprawdę konieczna jest instalacja pakietu SDK? Nie, w ogóle nie jest konieczna instalacja pakietu SDK. W rzeczywistości wszystkie kroki wyodrębniania, modyfikowania i pakowania pakietów APK wymagają następujących narzędzi:

    • Archiwizator ZIP do rozpakowywania i pakowania;
    • mały- Asembler/deasembler kodu bajtowego maszyny wirtualnej Dalvik (code.google.com/p/smali);
    • pasuje- narzędzie do pakowania zasobów (domyślnie zasoby przechowywane są w formie binarnej w celu optymalizacji wydajności aplikacji). Zawarte w zestawie SDK systemu Android, ale można je uzyskać osobno;
    • podpisujący- narzędzie do cyfrowego podpisywania zmodyfikowanej paczki (bit.ly/Rmrv4M).

    Można używać wszystkich tych narzędzi osobno, jest to jednak niewygodne, dlatego lepiej jest skorzystać z oprogramowania wyższego poziomu zbudowanego na ich bazie. Jeśli pracujesz w systemie Linux lub Mac OS X, istnieje narzędzie o nazwie apktool. Pozwala rozpakować zasoby do oryginalny wygląd(w tym binarne pliki XML i arsc), odbuduj pakiet ze zmienionymi zasobami, ale nie wie, jak podpisywać pakiety, więc będziesz musiał ręcznie uruchomić narzędzie podpisujące. Pomimo tego, że narzędzie jest napisane w Javie, jego instalacja jest dość niestandardowa. Najpierw musisz zdobyć sam plik 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 $ eksport PATH=~/bin:$PATH

    Jeśli pracujesz w systemie Windows, istnieje do tego doskonałe narzędzie o nazwie Virtious Ten Studio, które również gromadzi wszystkie te narzędzia (w tym sam apktool), ale zamiast interfejsu CLI zapewnia użytkownikowi intuicyjny interfejs graficzny, za pomocą którego możesz wykonaj operacje rozpakowywania, dezasemblowania i dekompilacji za pomocą kilku kliknięć. To narzędzie jest oprogramowaniem typu Donation, co oznacza, że ​​czasami pojawiają się okna z prośbą o uzyskanie licencji, ale ostatecznie można to tolerować. Nie ma sensu tego opisywać, bo interfejs można zrozumieć w kilka minut. Jednak apktool, ze względu na jego konsolowy charakter, należy omówić bardziej szczegółowo.


    Przyjrzyjmy się opcjom apktool. Krótko mówiąc, są trzy podstawowe polecenia: d (dekodowanie), b (kompilacja) i if (instalacja frameworka). Jeśli wszystko jest jasne w przypadku pierwszych dwóch poleceń, to co robi trzecia instrukcja warunkowa? Rozpakowuje określoną strukturę interfejsu użytkownika, co jest konieczne w przypadkach, gdy analizujesz dowolny pakiet systemowy.

    Przyjrzyjmy się najciekawszym opcjom pierwszego polecenia:

    • -S- nie demontuj plików dex;
    • -R- nie rozpakowuj zasobów;
    • -B- nie wstawiaj informacji debugujących do wyników dezasemblacji pliku dex;
    • --ścieżka-ramki- użyj określonego frameworku interfejsu użytkownika zamiast tego wbudowanego w apktool. Przyjrzyjmy się teraz kilku opcjom polecenia b:
    • -F- montaż wymuszony bez sprawdzania zmian;
    • -A- wskaż ścieżkę do aapt (narzędzia do budowania archiwum APK), jeśli z jakiegoś powodu chcesz użyć go z innego źródła.

    Korzystanie z apktool jest bardzo proste; w tym celu wystarczy podać jedno z poleceń i ścieżkę do pliku APK, na przykład:

    $ apktool d mail.apk

    Następnie wszystkie wyodrębnione i zdezasemblowane pliki pakietu pojawią się w katalogu poczty.

    Przygotowanie. Wyłączanie reklam

    Teoria oczywiście jest dobra, ale po co nam to, skoro nie wiemy, co zrobić z rozpakowaną paczką? Spróbujmy zastosować teorię na naszą korzyść, a mianowicie zmodyfikować jakieś oprogramowanie tak, aby nie wyświetlało nam reklam. Niech to będzie na przykład Virtual Torch – wirtualna pochodnia. To oprogramowanie jest dla nas idealne, ponieważ jest wypełnione irytującymi reklamami, a ponadto jest na tyle proste, aby nie zgubić się w dżungli kodu.


    Zatem korzystając z jednej z powyższych metod pobierz aplikację z marketu. Jeśli zdecydujesz się na korzystanie z Virtious Ten Studio, wystarczy otworzyć plik APK w aplikacji i rozpakować go, utworzyć projekt (Plik -> Nowy projekt), a następnie wybrać opcję Importuj plik z menu kontekstowego projektu. Jeśli twój wybór padł na apktool, po prostu uruchom jedno polecenie:

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

    Następnie w katalogu com.kauf.particle.virtualtorch pojawi się drzewo plików podobne do opisanego w poprzedniej sekcji, ale z dodatkowym katalogiem small zamiast plików dex i pliku apktool.yml. Pierwsza zawiera zdemontowany kod pliku wykonywalnego dex aplikacji, druga zawiera informacje serwisowe niezbędne, aby apktool mógł ponownie złożyć pakiet.

    Pierwszym miejscem, któremu powinniśmy zajrzeć jest oczywiście plik AndroidManifest.xml. I tutaj od razu spotykamy następujący wiersz:

    Nietrudno się domyślić, że odpowiada za nadanie aplikacji uprawnień do korzystania z połączenia internetowego. Tak naprawdę, jeśli chcemy po prostu pozbyć się reklam, najprawdopodobniej będziemy musieli po prostu zablokować aplikację z Internetu. Spróbujmy to zrobić. Usuwamy określoną linię i próbujemy zbudować oprogramowanie za pomocą apktool:

    $ apktool b com.kauf.particle.virtualtorch

    Wynikowy plik APK pojawi się w katalogu com.kauf.particle.virtualtorch/build/. Nie będzie jednak możliwości jego zainstalowania, gdyż nie posiada on podpisu cyfrowego i sum kontrolnych plików (po prostu nie posiada katalogu META-INF/). Musimy podpisać pakiet za pomocą narzędzia apk-signer. Wystrzelony. Interfejs składa się z dwóch zakładek – na pierwszej (Key Generator) tworzymy klucze, na drugiej (APK Signer) podpisujemy. Aby utworzyć nasz klucz prywatny należy wypełnić następujące pola:

    • Plik docelowy- plik wyjściowy magazynu kluczy; zwykle przechowuje jedną parę kluczy;
    • Hasło I Potwierdzać- hasło do magazynu;
    • Alias- nazwa klucza w magazynie;
    • Hasło aliasu I Potwierdzać- tajne hasło klucza;
    • Ważność- okres ważności (w latach). Wartość domyślna jest optymalna.

    Pozostałe pola są w zasadzie opcjonalne – choć przynajmniej jedno musi zostać wypełnione.


    OSTRZEŻENIE

    Aby podpisać aplikację za pomocą apk-signer, należy zainstalować Android SDK i podać pełną ścieżkę do niego w ustawieniach aplikacji.

    Wszystkie informacje podane są wyłącznie w celach informacyjnych. Ani redaktorzy, ani autor nie ponoszą za to żadnej odpowiedzialności możliwa krzywda spowodowane materiałami tego artykułu.

    Teraz możesz podpisać plik APK tym kluczem. W zakładce APK Signer wybierz nowo wygenerowany plik, wprowadź hasło, alias klucza i hasło, następnie odszukaj plik APK i śmiało kliknij przycisk „Podpisz”. Jeśli wszystko pójdzie dobrze, paczka zostanie podpisana.

    INFORMACJE

    Ponieważ pakiet podpisaliśmy własnym kluczem, będzie on kolidował z oryginalną aplikacją, co oznacza, że ​​przy próbie aktualizacji oprogramowania przez market otrzymamy błąd.

    Podpis cyfrowy jest wymagany tylko w przypadku oprogramowania innych firm, więc jeśli modyfikujesz instalowane aplikacje systemowe, kopiując je do katalogu /system/app/, nie musisz ich podpisywać.

    Następnie pobierz pakiet na swój smartfon, zainstaluj go i uruchom. Voila, reklama zniknęła! Zamiast tego pojawił się jednak komunikat, że nie mamy internetu lub nie mamy odpowiednich uprawnień. Teoretycznie może to wystarczyć, ale wiadomość wygląda denerwująco i szczerze mówiąc, po prostu mieliśmy szczęście z głupią aplikacją. Zwykle napisane oprogramowanie najprawdopodobniej wyjaśni swoje dane uwierzytelniające lub sprawdzi połączenie z Internetem, a w przeciwnym razie po prostu odmówi uruchomienia. Jak się zachować w tym przypadku? Oczywiście edytuj kod.

    Zwykle twórcy aplikacji tworzą specjalne klasy służące do wyświetlania reklam i wywoływania metod tych klas w momencie uruchomienia aplikacji lub jednej z jej „aktywności” (w uproszczeniu ekranów aplikacji). Spróbujmy znaleźć te klasy. Wchodzimy do katalogu small, potem com (org zawiera tylko otwartą bibliotekę graficzną cocos2d), potem kauf (tutaj jest, bo tak nazywa się deweloper i tam jest cały jego kod) - i tu jest, katalog marketingowy. Wewnątrz znajdziemy kilka plików z rozszerzeniem small. Są to klasy, a najbardziej godną uwagi jest klasa Ad.smali, z której nazwy łatwo domyślić się, że to ona wyświetla reklamy.

    Moglibyśmy zmienić logikę jego działania, ale dużo łatwiej byłoby po prostu usunąć wywołania którejkolwiek z jego metod z samej aplikacji. Opuszczamy zatem katalog marketingowy i przechodzimy do sąsiedniego katalogu cząstek, a następnie do virtualtorch. Specjalna uwaga Plik MainActivity.smali na to zasługuje. Jest to standardowa klasa Androida, tworzona przez Android SDK i instalowana jako punkt wejścia do aplikacji (analogicznie do głównej funkcji w C). Otwórz plik do edycji.

    Wewnątrz znajduje się niewielki kod (lokalny asembler). Jest dość zagmatwany i trudny do odczytania ze względu na swój niski poziom, więc nie będziemy się go uczyć, ale po prostu znajdziemy w kodzie wszystkie odniesienia do klasy Ad i skomentujemy je. W wyszukiwaniu wpisujemy wiersz „Reklama” i dochodzimy do wiersza 25:

    Pole reklamy prywatnej:Lcom/kauf/marketing/Ad;

    Tutaj tworzone jest pole reklamy do przechowywania obiektu klasy Ad. Komentujemy umieszczając znak ### przed kreską. Kontynuujemy poszukiwania. Linia 423:

    Nowa instancja v3, Lcom/kauf/marketing/Ad;

    W tym miejscu następuje tworzenie obiektu. Skomentujmy. Kontynuujemy poszukiwania i znajdujemy w liniach 433, 435, 466, 468, 738, 740, 800 i 802 wywołania metod klasy Ad. Skomentujmy. Wygląda na to, że to wszystko. Oszczędzajmy. Teraz należy złożyć paczkę i sprawdzić jej funkcjonalność oraz obecność reklam. Dla czystości eksperymentu zwracamy linię usuniętą z AndroidManifest.xml, montujemy pakiet, podpisujemy i instalujemy.

    Nasza świnka morska. Reklama widoczna

    Ups! Reklama zniknęła dopiero w trakcie działania aplikacji, lecz pozostała w menu głównym, które widzimy po uruchomieniu oprogramowania. Czyli czekaj, ale punktem wejścia jest klasa MainActivity, a reklama zniknęła w trakcie działania aplikacji, ale pozostała w menu głównym, więc punkt wejścia jest inny? Aby zidentyfikować prawdziwy punkt wejścia, otwórz ponownie plik AndroidManifest.xml. I tak, zawiera następujące linie:

    Mówią nam (i co ważniejsze androidowi), że w odpowiedzi na wygenerowanie intencji (zdarzenia) android.intent.action.MAIN z kategorii android.intent.category.LAUNCHER powinna zostać uruchomiona czynność o nazwie Start. Zdarzenie to generowane jest po dotknięciu ikony aplikacji w launcherze, więc określa punkt wejścia, czyli klasę Start. Najprawdopodobniej programista najpierw napisał aplikację bez menu głównego, do której punktem wejścia była standardowa klasa MainActivity, a następnie dodał nowe okno (aktywność) zawierające menu i opisane w klasie Start i ręcznie uczynił z niego wpis punkt.

    Otwórz plik Start.smali i ponownie poszukaj linii „Ad”, w liniach 153 i 155 znajdziemy wzmiankę o klasie FirstAd. Znajduje się także w kodzie źródłowym i sądząc po nazwie odpowiada za wyświetlanie reklam na ekranie głównym. Spójrzmy dalej, jest utworzenie instancji klasy FirstAd i intencji, która zgodnie z kontekstem jest powiązana z tą instancją, a następnie etykieta cond_10, do której warunkowe przejście odbywa się dokładnie przed utworzeniem instancji z klasy:

    If-ne p1, v0, :cond_10 .line 74 nowa instancja v0, Landroid/content/Intent; ... :cond_10

    Najprawdopodobniej program w jakiś sposób losowo oblicza, czy reklama powinna wyświetlać się na ekranie głównym, a jeśli nie, przeskakuje bezpośrednio do cond_10. Ok, uprośćmy jej zadanie i zamieńmy przejście warunkowe na bezwarunkowe:

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

    W kodzie nie ma już wzmianek o FirstAd, więc zamykamy plik i ponownie składamy naszą wirtualną pochodnię za pomocą apktool. Skopiuj go na swój smartfon, zainstaluj, uruchom. Voila, zniknęły wszelkie reklamy, czego nam wszystkim gratulujemy.

    Wyniki

    Artykuł ten stanowi jedynie krótkie wprowadzenie do metod hakowania i modyfikowania aplikacji na Androida. Wiele problemów pozostało za kulisami, takich jak usuwanie zabezpieczeń, parsowanie zaciemnionego kodu, tłumaczenie i zastępowanie zasobów aplikacji, a także modyfikowanie aplikacji napisanych przy użyciu Android NDK. Mając jednak podstawową wiedzę, ogarnięcie tego wszystkiego jest tylko kwestią czasu.

    Wyobraź sobie następującą sytuację: zainstalowałeś grę na Androidzie, ukończyłeś ją i usunąłeś, ale spodobała Ci się i prawdopodobnie będziesz chciał kiedyś w nią zagrać ponownie. Aby jednak nie zapomnieć o tej grze i ponownie nie pobierać jej przez długi czas, możesz wyodrębnić plik apk i użyć go później.

    Instrukcje: wyodrębnij apk w systemie Android

    1. Przejdź do Menedżera plików ASTRO i przesuń palcem w lewo.

    2. Otworzą się dodatkowe narzędzia. Wybierz „Menedżer aplikacji”.

    3. Wybierz aplikacje, których pliki apk chcesz wyodrębnić. Aby to zrobić, po prostu dotknij ich. Jeśli chcesz zaznaczyć wszystkie aplikacje, dotknij ikony w górnej części ekranu.

    4. Na dole pojawią się dwie nowe opcje. Kliknij „Kopia zapasowa”.

    5. Następnie rozpocznie się kopiowanie plików.

    Wyodrębnione pliki apk będą zlokalizowane na karcie SD w folderze „backups”, a także w menedżerze aplikacji ASTRO File Manager w sekcji „Skopiowane aplikacje”.

    To wszystko. Mam nadzieję, że ta instrukcja była dla Ciebie przydatna.

    Wielu użytkowników Androida wie, że za pomocą aplikacji Titanium Backup możesz wyodrębnić aplikację z urządzenia jako plik apk. Dzisiaj przyjrzymy się metodzie pobierania pliku apk aplikacji bezpośrednio ze sklepu Google Play.

    Zaletą tej metody jest brak konieczności wcześniejszej instalacji aplikacji na urządzeniu. Niestety ta metoda działa tylko w przypadku darmowych aplikacji. Czego więc potrzebujemy:

    1. Przeglądarka Chrome

    Utwórz drugi skrót do przeglądarki Google Chrome na pulpicie.

    Kliknij skrót prawym przyciskiem myszy i wybierz „Właściwości”. W polu „Obiekt” dodaj następujące polecenia oddzielone spacją:

    Ignoruj ​​​​błędy certyfikatu

    Zezwalaj na uruchamianie niezabezpieczonych treści

    Będzie to wyglądać mniej więcej tak:

    ...\chrome.exe" --ignore-certificate-errors --allow-running-niezabezpieczona-treść

    Kliknij „Zastosuj” i „OK”.

    Po tej operacji należy ponownie uruchomić przeglądarkę, zamykając wszystkie uruchomione instancje aplikacji.

    2. Nazwa konta Google i identyfikator urządzenia

    Tak naprawdę będziemy symulować pobieranie aplikacji na urządzenie, dlatego musisz znać nazwę swojego konta, czyli nazwę swojej skrzynki pocztowej Google, a także numer identyfikacyjny swojego urządzenia z Androidem.

    Z pudełkiem wszystko jest jasne, ale aby poznać identyfikator urządzenia, otwórz dialer na smartfonie i wybierz *#*#8255#*#*

    Na wyświetlonym ekranie musisz znaleźć wiersz „Identyfikator urządzenia:”

    Numer identyfikacyjny to kombinacja liter i cyfr występujących po słowie „android-”. Na przykład, jeśli w wierszu widzisz „ID urządzenia: android-1122aa33bb445577”, wówczas identyfikatorem jest kombinacja „1122aa33bb445577”. Zapisz tę kombinację.

    Jeśli z jakiegoś powodu nie udało Ci się znaleźć identyfikatora urządzenia za pomocą powyższej metody, możesz po prostu pobrać aplikację Device ID ze sklepu Google Play.

    3. Narzędzie do pobierania plików APK

    Pobierz rozszerzenie przeglądarki o nazwie APK Downloader.

    W oknie, które się pojawi, wpisz adres naszego konta Google, czyli adres e-mail. Hasło (tak, przerażające), a także identyfikator urządzenia. Następnie kliknij „Zaloguj się”.

    W następne okno wybierz swój kraj i operatora komunikacja komórkowa, a następnie kliknij „Zapisz ustawienia”. Następnie powinno pojawić się okno wskazujące, że rozszerzenie zostało pomyślnie aktywowane.

    4. Sklep Google Play

    Przejdź teraz do naszego ulubionego Sklepu Google Play i wybierz dowolną darmową aplikację. Po prawej stronie paska adresu przeglądarki pojawi się następujący komunikat: charakterystyczny wygląd zielona głowa ze strzałką.

    Kliknij tę ikonę, a aplikacja zostanie pomyślnie pobrana na Twój komputer jako plik apk. Zasadniczo wiemy już, jak tworzyć samodzielne dystrybucje bezpłatnych aplikacji.

    Nie ma możliwości sprawdzenia całkowitej integralności twórcy rozszerzenia APK Downloader, dlatego wprowadzanie informacji o koncie odbywa się na własne ryzyko. Ponadto takie działania co do zasady naruszają zasady korzystania ze Sklepu Google Play.