Шаги установки пакета Android -- installation пол android Связанный проблема

The installation steps of android package


3
vote

проблема

русский

Я просто хочу знать полные шаги.
Android просто скопирует пакет приложений в другое место?
Когда запускать приложение, пакет приложений Android Unzip каждый раз?

Английский оригинал

I just want to know the full steps.
Does Android just copy the application package to another location?
when to run the application, the android unzip app package every times?

  
     
     

Список ответов

6
 
vote
vote
Лучший ответ
 

Нет, он не расстегивает пакет каждый раз. Dalvik-Cache - это где хранится файлы кеша DEX (исполняемые файлы Dalvik).

Я знаю, что системные приложения кэшируются, когда устройство сначала загружается, если кэш не существует. Пользовательские приложения, если я должен был догадаться, будет сделан при установке или первой запуске.

После того, как он кэшируется, ему не придется обновлять этот кеш, пока приложение не будет обновлено, поэтому я думаю, что это происходит в процессе установки. Но также возможно просто прочитать манифест от APK и посмотреть, какую версию это когда она запущена. Если версия отличается, то версия в кеше, она могла бы повторно кэшировать.

редактировать
Я хочу построить это немного. Я просто очистил свой далвик-кеш и перезагрузил свое устройство. Наблюдая за устройством Logcat через DDMS, пока он загрузил, показывает, что он делает системные приложения и приложения «пользователей» при загрузке.

PackageManager «собирает» сертификаты APK. Затем это распаковывает APK. PackageParser хранит любые разрешения, которые есть APK.

Итак, эти шаги выполняются при сапогащих устройствах (если APKS изменяется с момента последнего загрузки, или Dalvik-Cache был очищен). Но этот же процесс будет завершен, когда APK установлен, поскольку PackageManager & AMP; PackageParser - это те, которые обрабатывают процесс.

<Сильные> Редактировать2
Это не просто процесс «Run», это то, что происходит, когда приложение установлено. Дальвик-кэш действует как своего рода «регистрация» приложения. Но во время установки приложение также регистрирует систему любыми «приемниками», которые у него есть. Это похоже на слушатели для конкретных действий, которые происходят, какой тип ссылок это обрабатывает, такие вещи такие вещи. Там нет реестра, похожего на реестр Windows, но да, ОС отслеживает установленные приложения, и действия, которые могут запустить приложение.

 

No, it does not unzip the package every time. The dalvik-cache is where is stores the cache of the the dex (The dalvik executables) files.

I know system apps are cached when the device is first booted, if the cache does not exist. User apps, if I had to guess, would be done when installed or first launched.

After it is cached, it will not have to update that cache until the application is updated, which is why I think it happens in the install process. But it is also possible to just read the Manifest from from the APK and see what version it is when it is launched. If the version is different then the version in the cache, it could re-cache it.

edit
I want to build on this a little. I just cleared my dalvik-cache and rebooted my device. Watching the device logcat through DDMS while it booted shows that it does system apps and "users" apps at boot up.

The PackageManager "collects" the certs of the apk. then it unpacks the apk. The PackageParser stores any permissions that the APK has.

So these steps are done when the device boots (if the apks changed since the last boot, or the dalvik-cache was cleared). But this same process would be completed when the APK is installed, since the PackageManager & PackageParser are the ones that handle the process.

edit2
This isn't just the "run" process, this is what happens when the app is installed. The dalvik-cache acts as sort of the "registration" of the application. But during install, the app also registers with the system any "receivers" that it has. These are like the listeners for specific actions that happen, what type of links it handles, things like that. There is not a registry like the windows registry, but yes, the OS keeps track of the applications that are installed, and the actions that can launch the application.

 
 
 
 

Связанный проблема

2  Переустановка настроек приложения  ( Re install settings application ) 
У меня скомпилировали исходные коды Android и получите настройки. Теперь мне интересно, могу ли я установить это приложение на моем телефоне? Когда я пытаюсь ...

18  Есть ли способ установить приложение Android без интернет?  ( Is there any way to install android app without having internet ) 
Я только что купил Samsung Galaxy Mini S, но у меня нет 3G или Wi-Fi - у меня есть интернет только на моем компьютере. Есть ли способ установить приложения дл...

1  Установите Loop Android 4.4.2 Galaxy Core II  ( Install loop android 4 4 2 galaxy core ii ) 
Вчера я получил обновление для моей Samsung Galaxy Core II (SM-G355HN). Я загрузил обновление и попытался установить его. Примерно на 94% я получил <код> erro...

3  Где я должен установить Toybox?  ( Where should i install toybox ) 
У меня есть укорененный ретранслятор Samsung Galaxy S 4G android 4.1.2. Если у вас есть Android 6.0 "зефир" или лучше, то у вас есть Toybox . Это пакет ком...

125  Могу ли я установить Android на моем недвижимости?  ( Can i install android on my non android device ) 
Многие люди хотят попробовать / использовать Android, не покупая новый телефон Android. Как я могу установить Android на моем текущем телефоне или устройстве,...

3  Шаги установки пакета Android  ( The installation steps of android package ) 
Я просто хочу знать полные шаги. Android просто скопирует пакет приложений в другое место? Когда запускать приложение, пакет приложений Android Unzip каждый...

21  Почему я не могу установить приложения, когда у меня достаточно хранения?  ( Why cant i install apps when i have enough storage ) 
в «Настройках» и GT; «SD Card & AMP; Настройки хранения телефона» в разделе «Внутреннее хранение телефона», он перечисляет «доступное пространство» как 13,78 ...

0  Блокирование приложений, которые будут установлены в среде AVD?  ( Blocking apps to be installed in avd environment ) 
Возможно ли разработчики блокировать свои приложения Google Play, которые будут установлены на AVD или я просто собираю неподдерживаемый профиль AVD? Однако я...

1  Я пытаюсь скачать синий Kik, но он продолжает давать мне сообщение «Приложение не установлено» сообщение  ( Im trying to download blue kik but it keeps giving me the app not installed ) 
Я использую TCL LX (что я бы не сомневаюсь, что проблема, из-за того, насколько плохой телефон) и я ищу простое решение. Я пытался установить его несколько ра...

1  Ошибка при обновлении Android 4.3 до 4.4.2 на планшете Nexus 7 (2013)  ( Error when upgrading android 4 3 to 4 4 2 on nexus 7 2013 tablet ) 
У меня есть совершенно новый Google Nexus 7 (2013) LTE планшет и первое, что я сделал, должен был проверить, есть ли какие-либо обновления SYS для моего устро...