2010-08-21 20 views
5

Jak ręcznie dodać plik do pakietu APK Androida?Android: jak ręcznie dodać plik do apk?

+0

Nie sądzę, że jest to możliwe, ponieważ trzeba ponownie podpisać apk ponownie. także. Masz na myśli programowo, bezpośrednio - lub do pakietu już pakietów, bez konieczności ponownego budowania wszystkiego? –

+0

Mam na myśli to drugie - ręcznie wstaw plik do zbudowanego pliku APK – zer0stimulus

Odpowiedz

6

APK to słoik, który jest zamkiem błyskawicznym. Możesz więc użyć dowolnego narzędzia, które manipuluje zamkami.

Istnieje jednak dodatkowa komplikacja: platforma Android wymaga podpisania wszystkich plików w pliku APK (z wyjątkiem plików w katalogu META-INF). Musisz ponownie zadzwonić pod numer jarsigner, aby podpisać wszystkie paczki. Następnie należy ponownie zadzwonić pod numer zipalign.

Musisz podpisać zmodyfikowany plik APK tym samym kluczem, który został użyty do podpisania oryginalnego pliku APK. To jest cały punkt podpisu: wskazuje, że paczka nie została naruszona bez zgody osoby podpisującej. (W rzeczywistości możesz podpisać się przy użyciu innego klucza, ale wtedy nie będziesz mieć dostępu do żadnych danych, które zostały wyprodukowane przez oryginalną aplikację lub odwrotnie.)

Skrypty mrówek dostarczone z zestawem rozwojowym Android zawierają automatyzację uruchomić jarsigner i zipalign.

+0

Powinien to być katalog 'META-INF' zignorowany, a nie MANIFEST. Weryfikacja jest zaimplementowana w PackageParser.collectCertificates() –

7

Istnieje narzędzie o nazwie aapt, które jest dołączone do zestawu SDK systemu Android. Możesz go użyć do dodania/usunięcia/listy plików w istniejącej apk. Uruchom program Aapt bez żadnych parametrów i wydrukuje instrukcje użytkowania. Aby dodać wykorzystanie pliku:

aapt add MyApp.apk file1 file2 ... 
+1

Czy musisz ponownie podpisać lub użyć zip wyrównania z tym? – zezba9000

+0

@ zezba9000 Tak, musisz ponownie podpisać i zipalign apk. – naXa

0

lub można po prostu otworzyć go wstawić plik, goto

META-INF>MANIFEST.MF 

Pobierz plik, który chcesz wstawia

SHA1 - Checksum 

dodać go do Oczywisty.

Powiązane problemy