« WiFi Network Privacy | Main | Reinventing the Email Wheel »

September 19, 2013

Android vs iOS

I now own both an iOS phone and an Android tablet and very quickly came to a conclusion that I prefer iOS.

I find that iOS is simpler to use and more predictable. Help is more readily available and app selection is slightly better. I generally enjoy that most decisions have been made for me in a logical manor and I don't need to spend time thinking about them and choosing. Certainly there are cases where I would like control over that choice, but once I discover it and how it has been made I can choose to work around it or deal with it.

I found it fairly easy to get started using my iPhone. There are occasionally some quirks, like app settings that are buried in the separate settings app instead of the app you are using or functions buried in menus or gestures that I fail to discover or need a web search to locate. It's a little difficult to deal with some things that are disconnected between the phone information and what iTunes presents. But in general, what the iOS interface presents me is easy to understand and use, even if it doesn't always present all the information available.

In stark contrast my Android experience started very poorly. Out of the box my new tablet wanted to connect to WiFi and register. It tried and failed to connect to my WiFi. Ok, that's fine, I'll just manually configure the encryption settings. Nothing happens. It doesn't tell me it's trying to connect or is failing to do so. I'm just left sitting at the menu displaying a list of available WiFi access points. Curiously now, my home WiFi is listed twice, once with full signal, once with no signal. Tapping on either does nothing. I can find no option to skip this step, I can't use the device any further. I really can't tell what is going wrong, there is no error message, so searching for help turns out to be fruitless. I don't recall what next step I took, but I eventually found ways to get into developer mode and extract error messages from the log. It then took some effort, but I located the bug reporting system and found several related bugs logged several months prior. Eventually a fix was identified and I waited for the next system release to fix it. Many months later the new system arrived. It sorta partially fixed it. It didn't fix any of the issues reporting status of the connecting to my WiFi, but after much jiggling it would connect, it just wouldn't stay connected. So that's that, it's only internet connection doesn't work for me at home.

Since it barely works, I've only used it in a limited fashion, but I'm already very put off by many of things I've seen. The system reports all running applications, including the base system processes. When presented with this list, I really have no idea what I'm looking at or what these things do, they tend not to have logical names that describe what they do. The list of installed software also includes all kinds of pieces of base system software. I can't identify them, nor do I understand why I would really want to see them or even be allowed to alter them.

Similar to the iOS app store, but to a much greater extent there are numerous applications to do anything you search for in the Android store. It's difficult to determine which you would want on either store. I tend look for recommendations, download several and try them out, then delete the ones I don't like or don't work, surprisingly a lot don't work. My Android tablet comes with a camera but no app to use it, couldn't tell you why. Fetching apps from the Google Play store can be an alarming process. It warns you about all the permissions the app requires. Many require permissions that go way above and beyond the scope of what the application does and I quickly bypass. On iOS I'm sure there are many apps that require similar abilities, although iOS tends to limit these a little more than Android and the requirements are reviewed beforehand at least. You don't know on iOS what things an app may be accessing however.

From a developer point of view, iOS is preferred also. The only downside is the $99/yr fee to publish apps vs the $25 one time fee on Android. To develop for iOS you download the Xcode development tools along with the iOS SDK for MacOS, these are available for free (may require a developer account). The software includes an IDE and other tools that make development fairly easy. The tools do require a Mac computer and generally require it to be running the current OS or one version older.

The development tools for Android come pre-bundled for Windows, Mac or Linux and include the Eclipse IDE and the Android SDK. You can also configure different development environments to use the SDK. I first tried to install the Windows version, it failed with mysterious errors. I tried several things to get it to install but gave up. I next tried the Mac install which worked. Running the IDE on my computer was a very slow process, but starting the Android emulator was so slow it would lose contact with the IDE. It often takes me several attempts and over an hour to get things running for a development session. In addition, I find that many of the options in the emulator fail to work properly. Development for iOS is somewhat simplified as there is a limited set of device configurations to target, a handful of screen sizes and OS versions. On Android there is a large range of variations in devices, screens, OS versions and features supported. To support a large subset of installed devices requires implementing several things several times to support different versions. The nail in the coffin is that I found the emulator not to match what my physical device was doing, making it pretty much pointless. As for coding, I found both iOS and Android have very similar APIs. Coding is fairly straightforward in general and the APIs are documented satisfactorily on a website. The most difficult parts tend to be the code related to manipulating the display.


Post A Comment

Remember me?

Created By: Steven Nikkel (steven_nikkel@ertyu.org)
This webpage and others materials are Copyright © 1997-2016 Steven Nikkel, All Rights Reserved