Overview
Your app is locked down. Time to deploy! Deploying means creating a standalone version of your app that someone can install and run directly, not inside the Scanner app.
On Demo Day, if possible, you should demo using your deployed app running stand-alone, not inside the Scanner app.
At first glance, this looks easy. Just call
steroids deploy
But it turns out to be more complicated than that. Basically, to deploy any app, whether it be Supersonic or not, you need to
- install platform-specific tools for creating app packages, either Xcode (iOS) or Android SDK (Android), or have access to a cloud-based building environment
- create a build configuration file
- use that configuration to assemble an IPA (iOS) or APK (Android) file
- sign the resulting file, using cryptographic tools to mark the file with keys unique to you and the app
- place the signed package where users can download it to their device
Supersonic provides a cloud service to simplify some of these steps. Note that there's a difference between ad hoc apps that can be deployed in limited ways to test users, and distribution apps that can be deployed to stores such as the Apple app store or Google Play for anyone to download.
Things are even more complex for iOS apps (the most popular) because
- You must have an Apple developer license. This costs about $100 a year.
- You must have a Macintosh with the current version of MacOS and Xcode. Xcode is a free download from Apple.
Northwestern has time-limited licenses available. I will post on Piazza instructions on how to request them. These come with some limitations. Apple distinguishes team members from team administrators, You will a member of the Northwestern team. Some operations needed to deploy have to be done by a team administrator, e.g., me.
For iOS, you'll be creating an Debug Ad Hoc build. This type of app can be installed on devices for testing but can't be placed on the Apple App Store. Distribution versions need approval from Apple for the App Store, or Northwestern, for enterprise-level distribution. Approval can take weeks.
Note that most of the same steps are needed to add push notifications to your app. Apps that need push notifications require additional steps, both for Supersonic, and for the Northwestern app provisioning profile. Some of those steps require action on my part, based on information from you.
Task Components
Every team needs to deploy and test their app on all the iOS and/or Android devices the team has.
- Follow
the Supersonic deployment instructions, including those for Android
and iOS. There are lots of steps here, with instructions at Apple and Google.
Post problems and tips to Piazza.
- For iOS, follow the instructions for an ad hoc build .
- Follow the instructions I will have posted to Piazza on how to request an Apple developer licence.
- Try to have at least two team members who are iOS developers, to avoid a bus factor / bottleneck issue, unless you have no iOS and MacOS devices.
- Deploy and test your standalone app on all team member devices.
- File your report on the shared Google document. Link on Canvas.