My issues with Android

Android was beautiful idea: mobile operating system is free and open source, so everyone can contribute and make it better for all.

Unfortunately, as with most open source project it has a lot of issues in areas that nobody wants to work because it is boring, not really visible or has hard to measure effect. Other lacking areas where someone needs to make important and impactful decision, and everyone will accept it.

But before I start I would like to mention that I don’t have a lot of experience with Android, but I spent quite a bit of time to solve these issues. For some of these I found and for some I didn’t find any solutions. Some problems could be fixed in recent versions

Store issues

It was first time when I see Android. Friend of mine asked me to help installing Skype on her phone. I thought “How hard it can be”. So, I went to store app types Skype and phone as I type suggesting search string something like “Skype app” or something similar but whatever I selected and typed I couldn’t find Skype. But I clearly see on web that Skype indeed called “Skype app”. Anyway after 20 minutes or so I found that Skype has age restrictions and it was 13+ but phone by default was in 8+ mode. So, fix was easy but finding it took quite a bit of time. Much easier solution was to show “Skype app” but don’t allow to download with appropriate message.

My major case that anyone can publish anything on Google Play. There many cases that someone uploaded malware, viruses etc. It is not case for say Apple or Microsoft. Your app will be published only after testing. Antivirus is very common on Android platform, but I never heard about one say in Apple devices.

Sometime ago I bought Android tablet and would like to download game. And that game was actually reason why I bought tablet in first place. On Google Play app I saw message that this game is not supported by my hardware. You can imagine my frustration. I spent quite some researching and looks like game is supporting by hardware of my tablet. And table had enough memory for that game. But later I found that it works fine if you try to install it web Google Play interface. I have no idea why it didn’t work but it happens few times with different Android devices and different applications. And if you ever Google that problem you will see enormous amount of discussion about this and related problems. Never had anything like that in Apple devices.

Weird implementation

Imagine you are installing game and game requiring access to your photos, camera etc. You will be naturally suspicioning. But later you found out that because in some cases you may need to upload photos to submit issues to game support they require access to photos. And you have to allow access before you even run game. Again, this is perfect case where feature is “done” but nobody cares if this feature working nicely with user.

Imaging you want to use VPN to connect to your work environment or you are in country that blocks many sites (like China). If you want VPN you must assign pin code to your device. Normal person will not understand how these two things are connected

Storage

As everybody knows it is not possible to extend storage on Apple devices. You have to buy enough and if it is not enough then you need new device with bigger storage. One of the best advantages of Android phones that vast majority of them have min SD card and it is easily possible to extend storage. So, you can buy device with low memory for now and later it can be extended. But it works like that only in theory. In reality there are number of problems. First versions of Android allow only data to be stored on SD card and most applications were not designed to use SD card. Then in later version it was possible to run applications from SD card but again by some reason it was up to applications to support that feature and most of them didn’t support them. In version 6 or 7 they finally implement transparent merging of system memory and SD card but now it was up to vendor to include that feature in device. And most of them didn’t do it. As result you may have 64Gb SD card, but your phone still complains that there is no free space and nothing you can about it except get new device.

Another problem that hunting early Android devices is app updates. Imaging your bough device with 2GB of system memory, then install all apps you need and start using them. No new apps ever added and then one day you phone will start complaining that there is no free space. You double check installed applications and there is nothing new and yet there is no memory. It turns out that existing apps (specially Google one) received quite a lot of updates and they stored together with app and also existing apps (specially Google one) like tripled in size. I seen it few times and only solution I found is to delete all updates for Google apps that person doesn’t use (and it is not possible to delete them). And again, phone has huge SD card attached but phone cannot use it for storing app updates or apps itself.

Firmware updates

What I like about Apple that it bends over telecom providers and when there is iOS update you will receive it whether your telecom provider likes it or not. In case of Android your telecom provider should accept update for your device and only then you will receive it. And it is obvious that popular devices will get updates approved but rare devices will not even if vendor actually release update for your device.

There is quite nice feature called WiFi Calling in iPhones that allows phone to communicate with telecom provider via Internet instead of cellular if reception is bad. It is available from iPhone 5 or iPhone 6 time. And on Android 7 it is not there and requires custom firmware.

Other

Most of Android devices have a lot of crapware that almost impossible to remove without root rights and it is quite risky to do and open door for other kind of problems. For example, many phones come with Antivirus and it is quite crappy one and consume a lot of resources. Some phones came with Microsoft office that I never plan to use. It is quite common. Even pure Android has a lot of crapware from Google.

After years and years of development still every vendor is trying to put own shell on their devices. I don’t understand why and to me it looks like standard one is lacking features.

If you ever compare Apple and Android devices with similar performance, you will see that Android device is much more powerful than Apple one from hardware point of view and yet they work with same speed and quite often Apple works smoother. It is because Apple uses native CPU code for their applications while Android uses Java and native code should be generated one they fly. While it makes writing program easier it requires much more CPU power and memory. Also because native code generates on the fly, it cannot be as good as native code that compiled on desktop CPUs with a lot of CPU power and a lot of memory. And event with all of that it takes tens of minutes to finish building with all optimizations enabled. As result, you may see 1 core and 1 GB of RAM in Apple device that works with same speed with 4 core and 4 Gb in Android. Recently I heard from my colleague that finally his phone is smooth, and he stopped killing apps to free memory (he is not geek just typical user). That phone has 8 Cores and 8 Gb of RAM. My son’s gaming PC has 4 Cores and 8 GB of RAM and still works great.

And lastly Android phones has enormous number of bugs. When I did use Android phone I have to restart phone I had to restart it at least once per week and quite often I do it 2 – 3 times per week. And every time problems are different. So, it is clearly lack of polishing to weed out all bugs that happened not so often to remove during development. And that kind of bugs are most time consuming. On other side I restart Apple phone very rarely and 95% time I restarted it because I used to do it with Android and problem actually stays and usually there is some setting or something like that and actually my fault.

If you want more here is view of popular blogger: https://youtu.be/pev5K7OcW-8