4 answers
Asked Viewed 389 times Translate

How difficult is it to transition from Android to Apple application development?

I have developed several Android and Amazon applications but am interested in releasing on the Apple Store as well. #android #apply #technology #programming #swift #java

+25 Karma if successful
From: You
To: Friend
Subject: Career question for you
100% of 4 Pros

4 answers

Updated Translate

Mat’s Answer

I've developed a bit on Android and IOS but I'm not a full time mobile developer. So take what I say with a grain of salt. Most of my experience over the years has been full stack web development using javascript/HTML5/css, before that a decade or so of Java and before that C.

Native IOS development has largely shifted from Objective-C to Swift and I'm grateful for that. To answer your question: Swift and Java are similar in a lot of ways, but learning your IDE (xcode vs Android Studio) and the differences in the platforms (IOS vs Android) will feel like starting over a tiny bit at first.

This course was very highly regarded by me and some co-workers for learning IOS Swift development: https://www.udemy.com/ios-12-app-development-bootcamp/ The instructor, Angela Yu, is exceptional. It's usually on sale for $12.

As you likely know, you must have a Mac in order to run Xcode. While you are learning you don't need to pay the $99/year for an Apple Developer account. Most suggest not getting an account until you're ready to deploy.

Mr. Badawi is correct that you should check out some of the cross-platform (MEAP) as well. The rule of thumb: Write native code if you need fast performance (i.e. a game). If you're doing a business app then a cross-platform tool might be just the ticket. Do a lot of research though. If you pick one of these tools then you are at the mercy of how they: 1) respond to new device features, 2) how quickly they find and fix security problems 3) how they choose to support old devices, etc. Do your research.

Mat recommends the following next steps:

Check out this course: https://www.udemy.com/ios-12-app-development-bootcamp/
Search for and read shootout articles like this: https://hackernoon.com/flutter-vs-react-native-vs-xamarin-for-cross-platform-development-5f92cfb178ff .
Go the next level deeper and read up native IOS development in Swift vs the cross platform tool you might be scoping out. Here's an example against Ionic: https://stackshare.io/stackups/ionic-vs-swift
Last, and the most obvious, write some code and it might become obvious what tools you like.

100% of 1 Students
Updated Translate

Juwan’s Answer

This is not a simple question, but I will be trying to share my idea based on several thought points:

  • App Store Review Guidelines - Based on my experience App Store has more strict app review process. If your iOS app converted from Android is not going to meet these, Apple will probably reject your app (see https://developer.apple.com/app-store/review/guidelines/)
  • API - Depending on how your Android app is integrated with internal API, it can be harder.
  • UI/UX - Android and iOS have different UI/UX guidelines (see https://developer.apple.com/design/human-interface-guidelines/)

Juwan recommends the following next steps:

Check "App Store Review Guidelines" to see if Apple will reject or approve your target app.
See if there is 1:1 equivalent API in iOS (Swift/Objective-C) from each of your Android (Java/C++/Kotlin) app's function.
Think about how you can transform UX on Android app to genuine iOS UI/UX. They have different UI guidelines.
Start migration one by one to iOS (Swift/Objective-C) code. (Optionally you can use something like React Native to share one single code in between your Android and iOS app, only if your app is simple)

100% of 1 Students
Updated Translate

Jack’s Answer

There is no direct answer on this. It depends on your background.

Most Android APP (developed with Android Studio) are JAVA code base, while IOS are using C++. However there are many similar concepts at the high level, but a lot of differences in core OS / support modules, and how it works.

Although there are many similarity components offers on both platforms such layout/view, webView, touch, sensors, GPS, TTS, etc; but, each modules have different APIs and options.

So, from my experience of development Apps for both platforms, if your current App is fully coded for Android (in JAVA), it would take a lot of effort to direct convert to IOS App while maintain similar performance. But, if your current App is a web-based one, it would be a lot easier to do since there are many cross-platform frameworks (web-based like PhoneGap, React / React-Native) in the market for you to choose from.

Updated Translate

Bash’s Answer

You need to expand your horizons a little more. There are platform companies which offer Mobile Enterprise Application Platforms, or MEAP, where you have to write an app once and they will take care for the plumbing to run it on any device Just lookup #meap and check out some of those platform companies, the type of offerings they have and the stacks they support. No developer should concern themselves with having to write multiple apps targeting multiple platform. Microsoft acquired Xamarin and have a community edition development environment free of charge. The Cloud in this case takes care of mobile browsers of different devices and deployment of multiple OS-specific apps.
Hope this helps,