Categories
Report

Differences between iOS and Android App Development

Becoming a developer for any platform requires a lot of time, dedication, and will, but sometimes it helps to have resources out there to just read and learn from. iOS and Android are two platforms that dominate the industry, so lets take a look at these platforms, and what it takes to develop for them.

iOS Development

To develop for iOS, you MUST have a Mac. Once you have one, you will need to download Xcode, Apple’s development platform. This application lets you develop applications for both iOS and macOS. You will then need to learn a coding language supported by these operating systems. The most popular of these is Swift, but developers can still use Objective-C if that is what they are more interested in. Here are some great resources to get you started with these languages.

  1. The Swift Programming Guide for Swift 5 on Apple Books
  2. The Objective-C Programming Language – Apple Developer

iOS development is based on writing code around the user interface and user events. To help with this, Apple has created what are called Storyboards, where you can create each screen of your app graphically. If graphical design isn’t your thing, then you can create all of your app’s user interface objects through code. Each method has its strengths and weaknesses.

Once your app has been written, your assets are ready, and you are ready to test,  you should sign up for an Apple Developer account. This account will use your Apple ID, and it will cost you $100 in the US each year.

Once this is done, login to App Store Connect, and set up TestFlight testing which supports public testing now.

If your app is how you like it,  send it up to Apple for review. This can take up to 24 to 48 hours. Once this is done,  your app will be live in the App Store for anyone to download.

Android App Development

Android app development is very similar to iOS development in some ways but drastically different in others. Here is the process for building an app for Android.

To develop apps on Android, you will first need a program called Android Studio. Android Studio is an Integrated Developer environment similar to Apple’s Xcode. It allows you to build Android apps on multiple platforms. This means that you can build the same app on a Windows computer or on a Mac.

To start developing for Android, you first need to learn an Android supported programming language. There are ways you can build Android apps in Python and or with other programming languages, but Java and Kotlin is the preferred way to go, and is the supported language by Google and Android Studio at this time. Here are some resources to get you started.

  1. Documentation for Android Developers

With Android Studio, an app is built by programming around user interface elements and events, which is similar to iOS, but Android does not have anything like Storyboards. Instead, you will have to design each screen separately. These screens are called Activities, and the best way to think of this is that each activity is a separate app from other activities in your containing app. You basically just connect each activity together and send data back and forth.

Android Activities are basically a few files. The code files which are written in Java or Kotlin, and the layout files which are written in XML. You can write the layout files by hand, or you can use Android Studio’s visual designer. You will definitely find though that the Android studio visual designer will only get you so far in the process, and some hand writing of the user interface layout files will be needed. You can also opt out of layout files, and just write all of your user interfaces out of Java or Kotlin, but this will take longer unlike iOS development.

Once you write your app its time to test and begin the publication process. You will need to register as an Android developer at developer.android.com which has an initial cost of $20. Once you pay this then you are forever an Android Developer!

Publishing your app is very similar to the App Store Connect portal for iOS. This time, you will use the Google Play Developer console. You will have to have screenshots of your app and a description, and you will need to upload your app with Android Studio.

What Are The Differences?

iOS development and Android development have several things that are similar, but they have some very major differences. Many of these were outlined above, but lets look at everything now.

  • iOS development requires you to pay $100 a year to keep your apps in the App Store, whereas Google requires you to pay $20 up front to become an Android Developer for life.
  • Apple uses Xcode to build apps, whereas Android uses Android Studio to build apps and services.
  • Apple keeps their apps as a walled garden, meaning their access to other apps is limited,  where as Android lets your app talk to and see other apps on a device.
  • iOS developers use Swift or Objective-C to build apps, whereas Android developers use Java or Kotlin.
  • iOS app simulators are bare-bones versions of iOS that run effectively on macOS, where Android simulators are full versions of Android that may tax your machine a bit while debugging apps. This allows you to run Talkback while testing your apps, however. The iOS simulator is unable to run VoiceOver.
  • iOS apps may run in the background for certain reasons for a certain amount of time, but Android apps can install services to run indefinitely or until the app is closed.
  • iOS apps use storyboards or NIB files to build user interfaces, where Android apps use layout files which are written in pure XML. Android files are easier to edit by hand.

There are still many more differences between these two platforms that we have not had the chance to cover, but this should help any new developer know what they are getting into if they want to transition between either of these platforms.

Reach out to us on our Slack community if you would like to learn more, or email us at feedback@iaccessibility.net if you have any developer questions.

Categories
iA Cast iA CodeCast

iA CodeCast 1: Hello World!

Hello World! This is the first episode of an all new show from iAccessibility where we discuss all things code. On this episode we discuss the basics of coding and how to get started.

Text Editors

Integrated Developer Environments

Education

Programming Challenge

Each episode we post a new programming challenge that you can submit to us by joining the iACoders mailing list. Simply send an email to iacoders-join@iaccessibility.net. You will need to confirm your email address, which may be in your spam folder after you join.

This week’s challenge is to build a hello world application that says Hello World. The app will then ask the user their name and then Print the person’s name back out after the word Hello. You will need to use code to print items to the screen, use variables, and request user information. You may use whatever language you like to make this solution, but do not put compiled code in the list.

 

Categories
iA Cast iA Cast Weekly

#iACast 44 #WWDC17 After Party

On this episode of the iA Cast Aleeha, Michael, Jason, Aaron and T. J. discuss the latest news from Apple’s yearly WWDC conference. Here is what was covered in the episode.

Categories
Report

Learning Xcode with VoiceOver

Are you a blind or low vision user of the Mac and want to know if you can use Xcode to build apps for iOS or for the Mac? Alex Hall over at AppleVis has written a great guide to show new readers how to use Xcode with Apple’s screen reader VoiceOver.

A VoiceOver User’s Guide to Xcode

Categories
iA Cast iA Cast Weekly

#iACast 4 – iAccessibility Update

 Episode Notes

This week on iA Cast, we discuss the latest in Apple News and product releases. We also discuss the various products and services offered here at iAccessibility, and the events that will be coming up in the future. Here is a rundown of everything we talked about.

  1. Apple released iOS 9 last week. There appears to be bugs that effect some VoiceOver users but not all.
  2. WatchOS 2 was delayed but released yesterday. new apps showing up in the app store.
  3. Some developers were able to receive an Apple TV Developer Kit to try out Apple TV.
  4. iAccessibility will develop your Apple TV apps.
  5. iAccessibility would like to help those interested in software development to get started in programming. Work with us, and you will be paid a percentage of the app’s contract value to develop with iAccessibility.
  6. iAccessibility is looking for content creators and app reviewers. We would like to add more and more apps to the iaccessibility Report, so please contact us and we will add stories you write to our site.
  7. New movies from books coming including The Martian next week.
  8. Destiny released latest expansion for new consoles.
  9. New Apple TV can be a gaming system.
  10. iAccessibility will be at National Federation of the Blind of Texas convention in November with a table.
  11. White Cane Day in Austin is October 14. Go to White Cane Day site for more details.
  12. iAccessibility has over Photography Non-visually to October 3rd. Keep checking our site for more details.
  13. iPhone 6s and 6s Plus launch this Friday, September 25th I will have one and review it on iA Cast episode 6.
  14. Thanks to Blind Bargains and AppleVis for such great content and services to the blind.

Please comment on this page and let us know what you think about our podcast. We are always making changes and want your input. Thanks again, and we will see you next week.