Wydaje mi się dość dziwne, że do aktualizacji aplikacji na Androida (a nawet iOS) pobierana jest cała aplikacja zamiast samych „Aktualizacji”.
Uważam to za dziwne, ponieważ w systemie Windows podczas aktualizacji aplikacji pobierane są tylko pliki aktualizacji - nie cała aplikacja - co jest bardziej praktyczne, ponieważ oszczędza zarówno czas, jak i zużycie danych.
Wydawałoby się to trywialne dla większości, ale kiedy trzeba pobrać ogromną aplikację tylko dla drobnego dodania funkcji / naprawy błędu, staje się ona prawdziwą PITA.
Czy ktoś ma wyjaśnienie, dlaczego ten model został wdrożony?
Jako programista Androida pomyślałem o tym samym, co najmniej frustrujące było to, że pewnego razu zapomniałem zmienić jeden wiersz kodu i wyszło to z błędem tego jednego wiersza, co spowodowało, że aplikacja wypluła z pamięci instrukcje dziennika i dobrze.
To pytanie zostało zadane na SO, ale jest również na ten temat i myślę, że to pytanie powinno zostać.
SO Pytanie: /programming/18045290/for-mobile-app-updates-why-does-the-entire-app-need-to-be-downloaded-again
Jako programista Androida, musiałbym zgodzić się ze sposobem, w jaki oprogramowanie jest pakowane. Każda aplikacja na Androida jest pakowana w skompresowany plik o nazwie an
.apk
. Ten plik zawiera wszystkie kody, pliki układów i obrazy użyte do uruchomienia aplikacji. Trochę trudno jest zaktualizować tylko część pliku, szczególnie gdy jest on skompresowany, a jeśli programista ma włączone funkcje bezpieczeństwa, takie jak ProGuard, wdrożenie poprawki byłoby prawie niemożliwe.Jestem pewien, że Google miał również pewne powody bezpieczeństwa, aby nie zezwalać na łatki. Poprawki kodu pozostawiają nieoczekiwane dziury w zabezpieczeniach i luki w zabezpieczeniach.
źródło
.apk
można go również rozpakować na serwerach Google, aby porównać wersje i utworzyć niezbędne delty. Chociaż nie wiem, jak to się właściwie robi.Zasadniczo plik pakietu aplikacji dla systemu Android (* .apk) jest tworzony po opublikowaniu kodu aplikacji, plik ten jest tworzony po kompilacji i kompilacji oraz z procesu konwersji DALVIK,
Ten plik zawiera wszystkie zasoby, tj. Obrazy, audio, układy, klasy,
A jeśli chodzi o system Windows. Framework i Linux działają zarówno w różny sposób ...
Jeśli chcesz zastąpić tylko określony kod, możesz to zrobić w Androidzie, ale ze względów bezpieczeństwa musisz ponownie podpisać tę aplikację.
To, co robi DALVIK, jest procesem nieodwracalnym, więc jeśli dodana zostanie nowa funkcja, to w jaki sposób stara wersja uzyska do niej dostęp, nie wiedząc o tym?
Dlatego wymaga zaktualizowania całej aplikacji, aby działała i działała poprawnie.
źródło