Welcome to ColibriSM iOS
Flutter Requirements

Before you could start working on your project and changing the app to your liking, you first have to set up the environment. Here are the requirements needed to begin setting up your flutter environment and opening your app project

You need to install Flutter Version 1.22.X. Download that version from following link

Select the operating system to which you are installing Flutter:

Set up your IDE environment:

Flutter Installation

Please take a look at the video tutorials below on how to set up Flutter environment on Windows and macOS

Cocoapods Configuration [macOS]

CocoaPods manages library dependencies for your Xcode projects. The dependencies for your projects are specified in a single text file called a Podfile. CocoaPods will resolve dependencies between libraries, fetch the resulting source code, then link it together in an Xcode workspace to build your project.

Firebase Configuration

We need to utilize Firebase configuration to set up Google login and Push Notifications

  • Step 1: Firebase Setup Android

    1. Create a Firebase account

    2. In the Firebase console, click Add project, then select or enter a Project name.

    If you have an existing Google Cloud Platform (GCP) project, you can select the project from the dropdown menu to add Firebase resources to that project.

    (Optional) If you created a new project, you can edit the Project ID. Firebase automatically assigns a unique ID to your Firebase project. Visit Understand Firebase Projects to learn about how Firebase uses the project ID.

    After Firebase provisions resources for your Firebase project, you cannot change your project ID. To use a specific identifier, you must edit your project ID during this setup step. Click Continue.

  • Step 2: Enable Authentication in Firebase

    After you have a Firebase project, the functionalities need to be enabled via the Authentication menu.

    1. On the left menu, click on Authentication.

    2. Select Sign-in method.

    3. Enable Email/Password, Google, and Facebook (For Facebook, you must have the App ID and Secret Key). Click here to view an easy to follow documentation on how to acquire this.

  • Step 3: Register Your App With Firebase

    After you have a Firebase project, you can add your Android app to it.

    1. In the center of the Firebase Console Overview Page, click the Android icon to launch the setup workflow. If you've already added an app to your Firebase project, click Add app to display the platform options.

    2. Enter your app's application ID in the Android package name field.

    - An application ID is sometimes referred to as a package name.

    - Find this application ID in your module (app-level) Gradle file, usually app/build.gradle (example ID: com.yourcompany.yourproject).

    3. Add debug SHA1 fingerprint (This is required for authentication).

    - Enter following command in terminal to acquire this:

    [macOS] keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

    Important: Make sure that you enter the ID that your app is actually using. You cannot add or modify this value after you register your app with your Firebase project.

    Click Register app.

  • Step 4: Add Firebase Configuration File

    Add the Firebase Android configuration file to your app:

    1. Click Download GoogleService-Info.plist to obtain your Firebase Android config file (GoogleService-Info.plist).

    - You can download your Firebase Android config file again at any time.

    - Make sure the config file is not appended with additional characters, like (2).

    2. Move your config file into the module (app-level) directory of your app. ( File Path to Move : ios/Runner/)

    3. Add client ID to info.plist

    4. And add to Info.plist and also change App name in info.plist

Project Configuration

Here you will be modifying the app color, package name, icons and logo, constants, base URL for your application.

Open Project

1. Open your Project in Xcode and open terminal and run the command flutter pub get

2. After the command is successful. Click the command flutter run to run the app on your mobile or simulator

Open in Xcode

After the app ran successfully, open the project in Xcode. Open xcworkspace

Changing App Icon

1. Go to Create iOS icon

2. And replace in ios > Runner > Assets.xcassets > AppIcon.appiconset

Release to App Store

Register a Bundle ID: Every iOS application is associated with a Bundle ID, a unique identifier registered with Apple. To register a Bundle ID for your app, follow these steps

  • 1. Open the App IDs page of your developer account.

    2. Click + to create a new Bundle ID.

    3. Enter an app name, select Explicit App ID, and enter an ID.

    4. On the next page, confirm the details and click Register to register your Bundle ID.

  • Create an application record on App Store Connect

    1. Open App Store Connect in your browser.

    2. On the App Store Connect landing page, click My Apps.

    3. Click + in the top-left corner of the My Apps page, then select New App.

    4. Fill in your app details in the form that appears. In the Platforms section, ensure that iOS is 5. checked. Since Flutter does not currently support tvOS, leave that checkbox unchecked. 6.Click Create.

  • Review Xcode project settings

    1. In Xcode, open Runner.xcworkspace in your app’s iOS folder.

    2. To view your app’s settings, select the Runner project in the Xcode project navigator. Then, in the main view sidebar, select the Runner target.

    3. Select the General tab

    4. Edit your Version and Build No

  • Add account and sign the app

    Click on Signing and Capabilities and add your account and sign the app

  • Archive the App

    1. Select Product > Destination > Generic iOS Device .

    2. Select Product > Archive to produce a build archive.

Publish App

Time to upload to App Store.

  • 1. Click the Validate… button. If any issues are reported, address them and produce another build. You can reuse the same build ID until you upload an archive.

    2. After the archive has been successfully validated, click Upload to App Store…. You can follow the status of your build in the Activities tab of your app’s details page on App Store Connect.

    You should receive an email within 30 minutes notifying you that your build has been validated and is available to release to testers on TestFlight. At this point you can choose whether to release on TestFlight, or go ahead and release your app to the App Store.For more details, see Upload app to App Store Connect

Update App

Now that you have an understanding of configuring the application to suite your needs, updating your app is quite simple.

  • Update Flutter Version to 2.x.x

    Currently, you have downgraded the flutter version to 1.2x.x in order for app to function. Now that we have upgraded, you can do the same.

    1. Access the v_2.x.x folder from your download and overwrite the current files in our application.

    2. Configure constants, links and package name as previously done, as well as logo (If necessary)

    3. When your project is open, go to terminal and type the following command, flutter upgrade, then hit enter. It will go through the upgrade process to the latest version.

    4. Now, you have to upgrade your publications by typing the following command, flutter pub upgrade, then hit enter.

    5. Run your code to bring up the emulator and test out the updates.

    That's it!!