Skip to content

Latest commit

 

History

History
84 lines (69 loc) · 3.2 KB

File metadata and controls

84 lines (69 loc) · 3.2 KB

Google Auth

You need your GoogleService-Info.plist from your iOS Client ID from Google Cloud that was autogenerated by Firebase when you added Sign-In with Google!

  • If your GoogleService-Info.plist is missing the required key value pairs for the following:
    • API_KEY, GCM_SENDER_ID, PROJECT_ID, STORAGE_BUCKER, GOOGLE_APP_ID, IS_ADS_ENABLED, IS_ANALYTICS_ENABLED, IS_APPINVITE_ENABLED, IS_APPINVITE_ENABLED, or IS_GCM_ENABLED
    • Then you can check the version I uploaded to AWS Secrets Manager in us-west-1, which was converted to a string with:
      • awk '{printf "%s\\n", $0}' APP/ios/GoogleService-Info.plist
      • Convert it back to a file with (USE SINGLE QUOTES):
        • echo '...' | sed 's/\\n/\n/g' > APP/ios/GoogleService-Info.plist
  • SETUP:
    • If any of these steps are messed up you could have, mysterious crashes you won't be able to track down easily
    • Do NOT commit the ios folder
    • Place your GoogleService-Info.plist under StreamTrack/APP/
    • For CLOUD EAS Expo Builds (npx eas build -p io --profile production`):
      • Go to the Expo EAS website
      • Go to your project
      • Go to environmental variables under project settings
      • Add variable GOOGLE_SERVICES_PLIST with the file upload button as a Secret in both dev and production
    • Expo will run the npx expo prebuild --platform ios when you run the cloud build and it will copy the GoogleService-Info.plist to the ios folder for you!
      • This is why you can NOT commit the ios folder because it will skip that step

To run:

cd StreamTrack/APP

Things have changed so when developing try to just run it on the iOS 18.5 simulator. Make sure you are signed into iCloud on the simulator for sign in with Apple. Before you run, if you haven't already, run:

npx expo prebuild --platform ios

Then run:

npx expo run:ios

Older, but faster ways (might not work) (don't click 's' to switch to for Expo Go):

npm start

or

npx expo start

To clear cache:

npx expo start -c

To connect to iPhone:

Can't really do now, need to change a few things and comment out the Sign In with Apple/Google buttons.

In StreamTrack/APP/.env.local, change DATA_API_URL from localhost to the computer's or server's IP Address.

In StreamTrack/API/Properties/launchSettings.json, change localhost to 0.0.0.0 to allow anyone on the same network. Mainly just in the HTTP section.

Scan the QR code on your phone

EAS Build (Need an Apple Developer account and to register an Identifier for your app):

Be fully committed to GitHub

npx eas build:configure

Choose iOS

Secrets needed to be added to the EAS ENV (.env.local) (see the .env.example for what is needed):

eas env:create --name SECRET_NAME --value "..."

You can only do one at a time. Use the space bar to pick the options. I did Development & Production

Make sure you commit your code to the DEFAULT branch in your Git repo. That is where Expo cloud will pull from:

npx eas build -p ios --profile production

Submit (to App Store Connect, not to the App Store and does NOT request a review)

npx eas submit --platform ios