2012-12-17 10 views
5

W mojej aplikacji na Androida wystarczy dokonać niewielkiej zmiany w pliku właściwości.Czy zasoby w pliku APK Androida można zmienić bez odbudowy?

Na przykład:

W moim pliku właściwości, jest komunikat powitalny dla konkretnego klienta. Muszę więc zmienić tylko nazwę klienta w mojej aplikacji.

Ale problem polega na tym, że muszę to zrobić w źródle, a następnie muszę budować za każdym razem dla każdego klienta.

Czy istnieje sposób, aby zmienić go bezpośrednio w pliku .apk bez ponownego tworzenia kompilacji &.

+0

ponieważ każdy klient chce mieć własną nazwę w aplikacji – Prateek

+4

Wiem o tym. Dlaczego chcesz uniknąć przebudowy? Czy kompilujesz skynet czy coś? –

+1

ponieważ oprócz pojedynczego tekstu nie ma zmiany ........ Zespół systemu na kliencie musi czekać na mnie, chcę, aby mogli dokonać zmiany bez mojej zależności. – Prateek

Odpowiedz

8

Aby to zrobić, należy zdekompresować pakiet APK i znaleźć ciąg, który chcesz zmienić. Ciąg mógł zostać zakodowany lub przekonwertowany na kod bajtowy (Java String) lub format binarny (ciąg XML). Będziesz musiał dowiedzieć się, czy zostało to zrobione, i jak wygląda nowy Ciąg. Będziesz musiał pobrać ciąg, który chcesz zastąpić, i zakodować go w ten sam sposób, zanim go zamienisz.

Po wykonaniu tej czynności należy ponownie skompresować aplikację i uruchomić narzędzie do podpisywania oraz zip wyrównanie ręcznie, zanim będzie możliwe ponowne użycie w formacie apk.

Szczerze mówiąc, zajmie ci to więcej czasu niż powtórna kompilacja aplikacji.

+3

+1 za wyraźne wyjaśnienie kłopotów w zepsuciu pliku binarnego. – asgs

+0

oprócz przebudowy nie ma innego prostszego sposobu, niż robią to nawet programiści. – Prateek

0

Użyj Android APK Tool.

Cytując opis

Jest to narzędzie do odwrotnej inżynierii 3rd party, zamknięte, binarne Android aplikacje. Może dekodować zasoby do prawie oryginalnej postaci i odbudowywać je po wprowadzeniu pewnych modyfikacji;

1

Ponieważ jesteś właścicielem kodu źródłowego, rozpakowanie i przebudowanie pliku APK wydaje się być stratą czasu. Powinieneś rozwiązać ten problem w oryginalnym procesie kompilacji.

Jeśli budujesz pakiety APK ręcznie za pomocą Eclipse, powinieneś sprawdzić konfigurację automatycznego systemu kompilacji (Ant, Maven itp.) I podać nazwę klienta jako parametr skryptu budowania.

Jeśli już używasz Ant lub Maven, narzędzia te zapewniają już metody przed zamianą w tagu pliku tekstowego z wartością właściwości. Powiedz nam więcej o swoim środowisku kompilacji, abyśmy mogli udzielić dokładniejszych odpowiedzi.

+0

Obecnie używam ręcznej drogi w zaćmieniu. możesz podać więcej szczegółów na temat "jak używać mrówki do tworzenia pliku .apk" – Prateek

+2

Zgodnie z zasadami StackOverflow, musisz mieć Google to i stworzyć nowe pytanie ze szczegółami, gdy będziesz mieć podstawową wiedzę na ten temat.Słowa kluczowe Google to "build Android Ant". – Torben

Powiązane problemy