Androidアプリでライブラリを使用する場合( Support Library など)の場合)、ライブラリのコードは、それを使用するアプリごとにデバイス上で複製されます。
Android Linuxを使用する "共有ライブラリ" コンセプトを使用できないため、各アプリがライブラリのコードを複製する必要がないのはなぜですか?
これは主にセキュリティモデルによるものです。 Androidでは、各アプリケーションは独自のサイロで実行されます。これは、すべてのアプリケーションがすべてのユーザーのデータに完全にアクセスできるデスクトップOSとは完全に異なります。
AとBの2つのアプリケーションがある場合、どちらも共有ライブラリを使用します。同じコピーを使用した場合、アプリケーションAがアプリケーションBのサイロに侵入する可能性がありますが、これは望ましくありません。
Paulkayukがコメントするように、これは DLL Hell -共有ライブラリの異なるバージョンを想定しているアプリケーションによって引き起こされる問題を回避するためでもあります。最近のストレージは安価です-モバイルでも-DLL地獄を避けることは少しのストレージスペースを節約することよりも重要です。
Androidにはライブラリを共有する機能がありますが、使用するのが少し面倒なので、実際にはほとんど使用されないようです。たとえば、Google Play Servicesを使用するアプリケーションはこのモデルを使用します。
ただし、サポートライブラリはこの機能を特に使用しません。これは、アプリケーションが特定のバージョンに密接に関連している可能性があり、共有ライブラリシステムでは一度に1つのバージョンしかインストールできないためです。