Why is Google maps 48M on Android 4.4.4 and 125M on Android 5.1.1?
If you have root access, you can browse /data/app and that's the difference.


# Sample for Android K 4.4
com.android.vending-1.apk
com.google.android.apps.maps-1.apk

# Sample for Android L 5.0/5.1
com.android.vending-1/
com.google.android.apps.maps-1/


And if you list the content of one of them, you'll see


com.google.android.apps.maps-1/:
base.apk (54MB)
lib/

com.google.android.apps.maps-1/lib/:
arm64/

com.google.android.apps.maps-1/lib/arm64/:
libcronet.59.0.3602.4.so    (4.9MB)
libgmm-jni.so    (9.4MB)


Also, Android 4.4 implements the old Dalvik VM, while on Android 5+, Google switched to a new VM called ART. The main difference is that Dalvik compiles apps Just-In-Time (JIT), while ART compiles Ahead-Of-Time (AOT), so more code is compiled in ART than in Dalvik. That's why this one is really big:

/data/dalvik-cache/arm64/data@app@com.google.android.apps.maps-1@base.apk@classes.dex    (109.5MB)

On Android 4.4 it's much smaller, you can find it out by yourself.