- macOS Sierra (10.12) or High Sierra (10.13)
- Xcode 9
- Linux (tested on Ubuntu 16.04) or macOS (Sierra 10.12 or High Sierra 10.13)
- Android Studio 3.0 or above (tested on 3.1)
No external dependencies should be required for either platform.
- Install Xcode 9 from the Mac App Store.
- Clone the git repo.
- Open Xcode and select "Open another project" at the bottom-right of the welcome menu.
- Open
WeatherMap/iOS/WeatherMap.xcodeproj
- Click the play icon (▶︎) at the top-left of Xcode. This will open up the iOS Simulator app and load the WeatherMap app in the simulator. This may take a few seconds to a couple minutes, depending on the system.
- Select whether location services are to be enabled. If they are disabled, the simulator will center over the CU Engineering Center. If they are enabled, the simulator will center over San Francisco. This may seem counter-intuitive, but this is because I have the Engineering Center as a default value, and the simulator uses San Francisco as its location when location services are enabled on it. In short, the iOS Simulator does not actually collect your current location.
NOTE: I have only been able to get the maps part of the Android version working on Ubuntu 16.04 and not macOS.
The app will run on macOS, but the map will not load.
- Install Android Studio for your selected OS.
- Clone the git repo.
- Open Android Studio and click "Import project".
- Navigate to
WeatherMap/Android/WeatherMap
and select it. This should have the Android Studio icon to the left of it. Click "OK" to import the project. - Once the project is loaded into Android Studio, click the green play icon (▶︎) at the top-middle to top-right (depending on window size) of Android Studio. This will open the "Select Deployment Target" menu for selecting/creating Android device emulators for the app to run on. I test on Pixel 2 API 27.
- If "Pixel 2 API 27" is available, click "OK" in the "Select Deployment Target" window to run the app on a virtual Pixel 2 running Android Oreo. Else, see "Creating a New Android Virtual Device" below for creating a new device.
- A map will be opened with a pin over Sydney, Australia. Google chooses this as the default maps pin location for an arbitrary reason.
- Click the "Create New Virtual Device" button in the "Select Deployment Target" window.
- Select "Pixel 2", then click "Next".
- Select the Release Name: Oreo / API Level: 27 option. This may required a download. Then click "Next".
- Name the virtual device as you wish, and click "Finish" to create a Pixel 2 emulator.
- Go back to #6 in the Android run instructions and select the device just created (likely titled "Pixel 2 API 27" if left as default).