Skip to content

Latest commit

 

History

History
95 lines (62 loc) · 3.46 KB

onboarding.md

File metadata and controls

95 lines (62 loc) · 3.46 KB

Soundscape iOS App

This document describes how to build and run the Soundscape iOS app.

Supported Tooling Versions

As of Soundscape version 5.3.1 (October 2022):

  • macOS 12.6.1
  • Xcode 13.4.1
  • iOS 14.1
  • CocoaPods 1.11.3
  • CocoaPods Patch 1.0.2

Install Xcode

The Soundscape iOS app is developed on the Xcode IDE.

Download Xcode from the App Store or the Apple Developer website.

Install Xcode Command Line Tools

Open Xcode and you should be prompted with installing the command line tools, or run this in a Terminal window:

xcode-select --install

Install CocoaPods and CocoaPods-Patch

Soundscape uses CocoaPods as a dependency managers along with Swift Package Manager, and CocoaPods-Patch to add changes to a third party CocoaPods framework.

Note: before the next step, make sure you have Ruby installed on your machine.

In the iOS project folder, run the following command to install the dependencies from the Gemfile:

bundle install

Install CocoaPods Dependencies

Install the CocoaPods dependencies by running the following command in Terminal:

pod install

Opening the Project

At this point, you can open the GuideDogs.xcworkspace file, which is the main entry point to the Xcode project.

Add Azure Notification Hub Secrets

Soundscape uses Azure Notification Hub to send push notifications to users. In order for this to work in your app, you will need to create an account in Azure.

In your Azure account:

  1. Setup a Notification Hubs service (you can have one for Production and one for AdHoc)
  2. Copy the connection strings and paths
  3. Open the project file at /Soundscape/Assets/PropertyLists/Info.plist
  4. Copy the to the following keys and values:
    1. SOUNDSCAPE_AZURE_NH_CONNECTION_STRING - The production connection string
    2. SOUNDSCAPE_AZURE_NH_PATH - The production Notification Hub path
    3. SOUNDSCAPE_AZURE_DF_NH_CONNECTION_STRING - The adhoc connection string
    4. SOUNDSCAPE_AZURE_DF_NH_PATH - The adhoc Notification Hub path

If these values are not set, receiving push notifications will not work.

Add Your Services URLs

Soundscape uses a backend service to download map tiles and other information. In the following files, replace the static URL properties with the address of your services.

  • ServiceModel.swift
  • UniversalLinkComponents.swift

Building and Running

At this point, you should be able to build and run the Soundsacpe target on an iOS simulator. In order to run the app on a real device, you will need to add your Apple Developer account signing info in the Signing & Capabilities section of the project settings.

Additional Personalization

Additional personalization options:

  • In the General section of the project settings, you can change the following properties:
    • Display Name
    • Bundle Identifier
  • In the Build Settings section of the project settings, you can change the following properties:
    • Primary App Icon Set Name
    • BUNDLE_SPOKEN_NAME
  • In AppContext.swift you can change the following properties:
    • appDisplayName
    • appStoreId
  • Do a general search and replace instances of CompanyName and AppName.
  • Do a general search for TODOs and make changes as needed.