# Downgrade an APK?

Android has changed its behavior when installing a new APK file. Until ICS (ice cream sandwich), it didn't matter if the new APK had a lower or higher **android:versionCode** in AndroidManifest.xml. After that, it's mandatory a higher versionCode. We can't guarantee "when" the new behavior was introduced, but we noticed it was sometime around **Jelly Bean**.\
\
When trying to install a lower version code through ADB, you will get the message: INSTALL\_FAILED\_VERSION\_DOWNGRADE. In this case, you can force with the undocumented -d flag: **adb install -r -d my.apk**. Pushlink can't force it because it just launches the APK and the control is passed to the OS. So, the installation process will fail with no specific error message.\
\
&#x20;Remember that Pushlink can't perform downgrades when the OS does not allow it.
