This repository contains my Bachelor Semester Project 3 & 4 at the University of Luxembourg which is an eco-friendly mobile application for iOS. The app was built using the SwiftUI framework.
- Xcode version >= 12.0.1
- iOS version >= 14.0
Clone the repository to your computer:
git clone https://github.com/Flavio8699/Goodness-Groceries.git
Install Rubustrings, which checks the format and consistency of the Localizable.strings files of iOS Apps:
sudo gem install rubustrings
- Open the project file GoodnessGroceries.xcodeproj
- Once Xcode is open, wait until all the third-party libraries are fully downloaded and ready to run
- Connect your iPhone with a USB cable to your computer or select the desired simulator on the top left corner
- Tap the Run button (or Command + R) and wait until all the tasks are finished
- Open the project file GoodnessGroceries.xcodeproj
- The build number must be incremented. NB: the version number may remain untouched. Also note that the build and version number are not related.
- Goto menu : Product / Destination / Any iOS Device (arm64)
- Build the project: goto menu "Project / Build". NB: there are warnings, but there should not be any errors.
- Archive the project: goto menu "Project / Archive".
- Goto Window / Organizer.
- Select the build to deploy to the App Store and click on the "Distribute App" button.
- Then choose "App Store Connect", then "Upload", then click on "Next" with default options until "Upload" button.
- Goto the app store connect website : https://appstoreconnect.apple.com/apps/1565971371/testflight/ios
- You should see the new build appearing, maybe with a warning "Missing Compliance", if so, then click on the "Manage" link. Then choose Yes, then Yes. Then finally click on "Start Internal Testing".
- Now that your new build is available for beta-testing. You may add some "Individual Testers", by clicking on the build number, then "Add Testers to Build".
- Choose Add existing testers, and select all. Finally enter a text "Please test this new beta-version".
- You should wait for Apple to review this new build. This may take up-to 48 hours.
- SDWebImageSwiftUI: display images from URLs
- CarBode: barcode scanner for SwiftUI
- Alamofire: HTTP networking library
- SwiftyJSON: deal with JSON data in Swift
- PermissionsSwiftUI: display and handle permissions in SwiftUI
- Introspect: get the underlying UIKit or AppKit element of a SwiftUI view
- Benoît Ries (Tutor)
- Flavio Matias (Student)