I think you need to spend a whole lot of time learning Android because there’s a lot of misinformation throughout points one through five and it sounds mostly like you just dont understand the concepts or didn’t research them properly. I’ll try to point out a few of these flaws, just so someone who reads your article has something more to read:
Once you normalise the devices for density the fragmentation becomes negligible in most cases.
If you use Java 1.8, it’s a lot less verbose (albeit Java sucks and if you want a more swiftlike experience, Kotlin actually is a good choice like you’ve mentioned).
The layout drag and drop builder is about as shitty as xCode’s storyboard, but the new blueprint layouts in 2.2 and inflation without building are far superior as they also work for custom views.
Android and iOS simply don’t have the same patterns and structures so to call an Activity a ViewController is a mistake. You can build custom views and write view presenters if you want something similar, but to even suggest they’re the same and then say “you can’t run two activities at once” is just not understanding what it’s meant for. You could see it as a regular Controller if you’d like, but I wouldn’t.
Once you get the hang of making POJO’s Parcelable, activity data sharing couldn’t be more easy, albeit I am not too fond of the request code + result passing.
With Hot-, Coldswaps and SplitDex now available, the emulator is usually on par with a phone. Build times of a few seconds if that. I do really miss the simplicity of the iOS simulator (except for the discrepancies because it’s simulated and not emulated)
That said, I applaud you for taking on both and definitely keep on learning. The YouTube android developer videos are actually pretty nice and so is Google.IO.