Androidはどのくらいの頻度でアプリのAPKファイルとOBBファイルを解凍する必要がありますか? -- applications フィールド と internal-storage フィールド と apk フィールド と system フィールド android 関連 問題

How often does Android have to decompress an app's APK and OBB files?


1
vote

問題

日本語

href = "https://android.stackexchange.com/questions/107164/discrepancy-teweiwe-sizes-of-apps-listed-in-play-store-vs-actual - インストールされる-app / 108863 "> Answers この質問、アプリが実行できる前に各アプリケーションのAPKファイルとOBBファイルを解凍する必要があります。

この解凍は、Androidのプロセスキャッシュからプッシュアウトされていると仮定して、アプリが実行されるたびに実行された毎時実行されますか?

英語

According to one of great answers to this question, Android has to decompress each application's APK and OBB files before the app can be run.

Is this decompression performed each and every time an app is run, assuming it has been pushed out of Android's process cache?

           
 
 

回答リスト

1
 
vote

はい、そしていいえ。 Androidアプリは実行が必要なときにファイルシステムに解凍されません。代わりに、それらは選択的に解凍され、Dalvik仮想マシンによって memory / ram に読み込まれます。この解凍は、非常に単純で迅速で、プロセッサの非プロセシングなプロセスであるため、システムに実際のオーバーヘッドを追加しません。最初のインストールでは、Androidシステム上のネイティブライブラリを内部APKライブラリにリネーブルにリンクするDalvik VMによる最適化がいくつかあり、これは最適化されたDEXファイル(.odex)

としてDalvik-Cacheに保存されます。

[SIDEに注意して、システムがODEXファイルを持たないアプリケーションのODEXファイルを作成する必要があるため、電話の最初の起動が時間がかかる理由です。システムアプリは通常製造元によってオデックスを持つようになります

APKには、ファイルリスト、リソース、資産、ライブラリ、DEX(Dalvik実行可能形式に変換されたJavaクラスファイル)など、事前定義された構造があります。システムはこれらのファイルを解凍してメモリに読み込み、内部のコードに従います。そのコードは、他のファイルを解凍してロードするときにそれを指示します。

ハードドライブに当たることはありませんが、メモリに入ります。

 

Yes, and no. Android apps are not decompressed into the file system when it needs to run. Instead, they are selectively decompressed and read into memory/ram by the Dalvik virtual machine. This decompression is a very simple, quick, non-processor-intensive process, so it does not add any real overhead to the system. On first install, there is some optimization by the Dalvik VM, mainly linking to native libraries on the Android system to the internal APK libraries, and this is saved into the Dalvik-cache as an optimized dex file (.odex)

[Side note, this is why the first boot of a phone takes longer, as the system has to create odex files for any app that does not have an odex file. System Apps are typically made to have an odex by the manufacturer]

An APK has a predefined structure, including file lists, resources, assets, libraries, dex (Java Class files converted into Dalvik Executable Format) etc. The system decompresses and reads these files into memory, and follows the code inside. That code tells it when to decompress and load the other files.

It never hits the hard drive, goes right into memory.

 
 
     
     

関連する質問

4  なぜ私はWhatsAppを閉じた後に広告を見ているのですか?  ( Why do i see adverts after closing whatsapp ) 
私はwhatsappを閉じるたびに私はある種の広告を受けます。 彼らは宣伝しませんが、私は好きな広告を見ますアプリを閉じた後これは: より大きなバージョン の画像をクリックします。 WhatsAppサポートチームに連絡し、返信は次のとおりです。 ...

20  プレイカウントとスマートプレイリストをサポートする音楽プレーヤーはありますか? [閉まっている]  ( Is there a music player that supports play counts and smart playlists ) 
閉じたこの質問はオフトピックです。現在答えを受け付けていません。 この質問を改善したいですか? ...

1  Androidアプリは私のSDカードストレージにアクセスできないが、ファイルマネージャができる  ( Android apps cant access my sd card storage but file managers can ) 
YouTube、Netflix、Prime Videoのようなアプリは、「SDカードへのストア」​​オプションを持っていません。私は自分の電話で3つの異なるSDカードを試してみましたが、それでも、アプリはSDカードを検出できず、外部ストレージにダウンロードす...

3  特定のアプリによって要求されたネットワークトラフィックを表示する方法  ( How to view network traffic requested by a specific app ) 
どのアプリがネットワーク接続を要求しているかを確認する方法についての議論がたくさんあります。私は次のアプリを試しました: <事前> <コード> 9988776655443330 しかし、それらのどれも有用ではありませんでした。たとえば、短期間で、表示できる3...

10  Google Play Storeで1つのスターの評価を見るにはどうすればいいですか?  ( How can i view only one star ratings in google play store ) 
Androidアプリのレビューを並べ替える簡単な方法がないことが非常に迷惑になります。 - レビューに表示される可能性がある特定のキーワードを検索できません。 - 並べ替え順を変更することも、すなわち、評価で並べ替えることもできますが、1つ星の定格を見た...

2  アプリケーションを電話からSDカードに移動する方法  ( How to move applications from phone to sd card ) 
最近Sony Xperia Tipoデュアル電話を購入しました、私はアプリをSDカードに移動するのが見つかりませんでした。アプリを電話標準メモリから電話内蔵メモリに移動することができます。 電話からSDカードへのアプリケーションを移動するための解決策を教えてく...

6  なぜ「最新の更新」通知が消えるのですか?  ( Why do the successfully updated notifications disappear ) 
私は新しいジンジャーブレッド(2.3.5?)でアプリケーションを更新するとき、そして今アイスクリームサンドイッチ(4.0.3)を構築するときに奇妙な行動に気づいた。それは他のバージョンの場合も当てはまるかもしれませんが、私は2.3.3と私のNexus Sの下に...

0  アンドロイドのこれらのアイコンは何ですか?  ( What are these icons on an android ) 
誰かがこれらのアプリケーションを何であるか教えてください。 ...

3  私のAndroidデバイスから始める各プログラムをログに記録するプログラムはありますか?  ( Is there a program which will log each program i start on my android device ) 
私は私のAndroidデバイスのプログラムの各開始をカウントするプログラムを探しています。 時間の経過とともに、あなたは多くのプログラムを終了します。 あなたが実際にどのようにあなたが実際にどのくらい始めるかを時間の経過とともにどのように始めたかを見るのはうれ...

0  ADB付きDebian whezy / Mac OS / Windows 8で認識されていないNexus 10  ( Nexus 10 not recognized on debian wheezy mac os windows 8 with adb ) 
私は私のDebian whezyをADBを使用してDebian whezyをインストールしたデスクトップコンピュータにTablet Nexus 10 + Android 4.4 + Cyanogen-Mod 11を接続しようとしています。それはしばらく前まで働...

0  特定の携帯電話番号のために自動的にシレントモードで私の電話を一般モードに変換する方法  ( How to convert my phone in silent mode into general mode automatically for speci ) 
私の携帯電話がサイレントモードになっていて、私の両親や友達のためだけに特定の番号から電話をかけることで、携帯電話が自動的にサイレントモードに変換したい。 私の電話は静かなモードになっています。彼らは緊急の呼び出しです。秘密のモードでも私は私の携帯電話...

1  画面の電源が投入されたときに実行されているアプリがシャットダウンされます  ( Running app is shut down when screen powers on ) 
最近、Android 4.1へのOTAアップデートでサムスンS3(T-Mobile)を更新しました。更新以降、電話画面が停止した後(手動またはTimer)の後に、画面を戻すには、実行中のアプリを閉じます。これがAndroid 4.1を使用したいくつかの新しいデ...

0  特定のアプリを選択して特定のファイルを開きます  ( Choose a specific app to open a particular file ) 
私は私のサムスンギャラクシーを見たいアートキュレーションストーリー2を使っていくつかのeラーニングを作成しました。ファイルは物理的に私のドキュメントフォルダにあります。モジュールはインターネット上にありません - 私はまだテストしています。 eラーニングモジュ...

19  どのようにして紛失した電話を見つけることができますか、それとも人々がそれを返すのに役立ちますか?  ( How can i find a lost phone or help people return it ) 
私は のようなアプリを探しています。失われたデバイスを見つけるのに役立ちます。 理想的には、2つの特定の機能があるかもしれないものがあることを願っています: 人々がそれを返すために画面にメッセージを表示する機能は、Windows Phone 7のように、 ...

6  アプリケーションをアンインストールする方法  ( How do i uninstall an application ) 
ホーム画面またはアプリケーションのリストからアプリケーションを完全にアンインストールしたい場合。どうやってやるのですか? ...

関連する質問

4  なぜ私はWhatsAppを閉じた後に広告を見ているのですか? 
20  プレイカウントとスマートプレイリストをサポートする音楽プレーヤーはありますか? [閉まっている] 
1  Androidアプリは私のSDカードストレージにアクセスできないが、ファイルマネージャができる 
3  特定のアプリによって要求されたネットワークトラフィックを表示する方法 
10  Google Play Storeで1つのスターの評価を見るにはどうすればいいですか? 
2  アプリケーションを電話からSDカードに移動する方法 
6  なぜ「最新の更新」通知が消えるのですか? 
0  アンドロイドのこれらのアイコンは何ですか? 
3  私のAndroidデバイスから始める各プログラムをログに記録するプログラムはありますか? 
0  ADB付きDebian whezy / Mac OS / Windows 8で認識されていないNexus 10 
0  特定の携帯電話番号のために自動的にシレントモードで私の電話を一般モードに変換する方法 
1  画面の電源が投入されたときに実行されているアプリがシャットダウンされます 
0  特定のアプリを選択して特定のファイルを開きます 
19  どのようにして紛失した電話を見つけることができますか、それとも人々がそれを返すのに役立ちますか? 
6  アプリケーションをアンインストールする方法