3

I have found a pretty old device Huawei Ascend Y210. This mobile officially has Android 2.3.3 (API level 10). I found an online custom lollipop ROM for the specific mobile. The device has CWM as custom recovery. The zip file (the rom file) was installed successfully. The environment feels like android Lollipop should look like. Going to the mobile's settings > About phone > Android version, the version is 5.0.1 as expected. Using the command adb shell getprop ro.build.version.release the result is 5.0.1 indeed. However, I tried running adb shell getprop ro.build.version.sdk the result is 10 which is the API level of the stock android of the phone (Android 2.3.3). Apps made from API level 23 will fail to install as the API level is getting recognized as 10. Changing the apps' Minimum API level to 10 using APK Editor Studio, allows the app to get installed but it crashes once I try to open it.

Is that a bug? I mean can I somewhere change the API level of the device? Or is the ROM a scam and the android is never really getting updated to 5.0.1 and the ROM just changes the graphic interface? How is it even possible to trick the adb that the android version is 5.0.1 but keep the API level to 10?

P.S.: If someone has any ROM for Huawei Ascend Y210 with android 5.0.1 or higher handy, I would appreciate a download link.

Thanks in advance!

6
  • May be the ROM author was only aiming for the look-and-feel of Android 5?
    – Robert
    May 26 '20 at 7:15
  • 1
    @Robert that can be verified easily: adb backup was introduced with ICS (Android 4.0). If it's indeed only "surface polishing" of a Gingerbread OS, adb backup won't work. If it does work, it's a clear indicator of at least Android 4.0 (or higher) being present, and the ROM dev maybe just forgot to update ro.build.version.sdk in build.prop.
    – Izzy
    May 26 '20 at 7:21
  • @Izzy I tried running adb backup the result was adb backup -apk -shared -all -f mybackup.ab WARNING: adb backup is deprecated and may be removed in a future release adb: unable to connect for backup: closed The device is getting recognized when I use adb devices. May 26 '20 at 10:02
  • 1
    @KarampistisDimitrios the warning comes from the adb executable on your computer (unfortunately, it looks like adb backup shall be dropped, leaving non-root users in the dark again). The second one is the interesting one here: it indeed seems the ADB daemon on the device doesn't know about the backup command; as you're unlikely to be on Android 11+, this must mean you're on < 4 then – and the "5.0.1" is fake.
    – Izzy
    May 26 '20 at 10:09
  • You are a little bit late searching a for a custom ROM. There was a CyanogenMOD release for that device but the download links have long gone dead.
    – Robert
    May 26 '20 at 10:17
1

As Izzy mentioned the issue here was that the owner of the ROM had modified the ro.build.version.sdk in the build.prop without actually provide any feature of the API level 23. I am not sure if Fidz's answer is correct since I could not find any resource online that claims the same thing (correct me if I am wrong), Google's official site claims nothing about the API level, it just mentions some thing about the Android Compatibility regardless of the API level and the hardware. I could not find any ROM for the device since it's pretty old and almost every support for the Huawei and Honor phones on custom ROMs and rooting is dead after Huawei disabling the ability to unlock the bootloader.

0

Every Android device has its own API level.

it is not a bug, while you use a feature/app that requires higher API level but the device API level is lower than the requirement, the app will surely crash

API level is based on the Android version of the device, but then it also uses the hardware resource, so even if it's upgraded to a newer version of Android, it can't advance the API level higher than the hardware resource available.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.