Mosquito-Alert / Mosquito-Alert-Mobile-App

http://www.mosquitoalert.com
4 stars 3 forks source link

Changes for IoS deployment #98

Closed StuffJoy closed 7 months ago

StuffJoy commented 8 months ago
  1. Ran Dart fix for minor issues

  2. Made changes listed below to remove deprecated/broken code (the app would not debug and run without addressing them)

    • raisedbutton depreciated and causing issues, elevated button used instead
    • flatbutton not found in material import, textbutton used instead
    • few future methods needed a throw statement for error handling
    • scaffold.of won’t work because…reasons. I replaced it with ScaffoldMessenger.of
  3. Updated minimum target device from 10.3 to 12 (anything below 11 and the app will not work)

  4. Open the iOS/runner project.xcodeproj in Xcode and change target device from 10.3 to 12

  5. Add GoogleService-Info.plist and info.plist files

  6. Updated firebase auth from 4.3.0 to 4.3.1 (changes were made in the 4.3.1 version that resolves the issue experienced)

System changes Upgraded ruby to 3.2.2 (anything under 2.6 version clashes with cocoa pods) Updated cocoa pods

StuffJoy commented 7 months ago

No problem @DigitalSeneca. I am now reviewing the feedback

Seems like we're having some conflict here with firebase_auth, so I can't compile on Android after the dependencies upgrade. Are you using a different version of flutter/dart?

Yes it looks like I am using a more recent version. See below.

flutter --version Flutter 3.13.7 • channel stable • https://github.com/flutter/flutter.git Framework • revision 2f708eb839 (6 months ago) • 2023-10-09 09:58:08 -0500 Engine • revision a794cf2681 Tools • Dart 3.1.3 • DevTools 2.25.0

Would it be possible/feasible for you to upgrade to a more recent version and try again?


I am getting the following error on multiple places of this file for both backgroundColor and foregroundColor. It's most likely due to a different version of flutter/dart or dependencies

The initial code used "primary" to set the background color of the button, however my editor (Visual Studio) would not allow me to compile the app without changing the button set from "RaisedButton" to "ElevatedButton", which uses backgroundColor to define the appearance of the button. Same for "onPrimary" and "foregroundColor".


Yes, also @StuffJoy if you make multiple smaller pull requests divided by logic, this makes the life of the reviewers easier, and it's also easier for us to both catch issues and provide useful feedback. For example:

PR1: Lint changes PR2: Minimum changes needed to compile on iOS PR3: few future methods needed a throw statement for error handling

I apologise for this aspect. The extent of changes necessary was unexpected so I did not consider a structured approach when I began. To clarify, are you requesting that I resubmit the pull request in phases, or is this advice for handling future pull requests?

DigitalSeneca commented 7 months ago

Would it be possible/feasible for you to upgrade to a more recent version and try again?

Thanks for providing the exact version you're using. I have updated my version to 3.13.7 and tried to compile but it is still not working with the following error message:

FAILURE: Build failed with an exception.

* Where:
Build file 'C:\Users\DigitalSeneca\AppData\Local\Pub\Cache\hosted\pub.dev\file_picker-5.3.1\android\build.gradle' line: 24

* What went wrong:
A problem occurred evaluating project ':file_picker'.
> No signature of method: build_8yy0krq21hzp6uwdyqcb5tvuy.android() is applicable for argument types: (build_8yy0krq21hzp6uwdyqcb5tvuy$_run_closure2) values: [build_8yy0krq21hzp6uwdyqcb5tvuy$_run_closure2@158715a2]

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 5s
Running Gradle task 'assembleDebug'...                              6,1s
Exception: Gradle task assembleDebug failed with exit code 1

So it seems an issue related to the version of file_picker and/or android/build.gradle but I could not fix it on a first attempt. I tried upgrading file_picker to a higher version, but 6.0.0 or higher is not possible without having to update many other dependencies too

The initial code used "primary" to set the background color of the button, however my editor (Visual Studio) would not allow me to compile the app without changing the button set from "RaisedButton" to "ElevatedButton", which uses backgroundColor to define the appearance of the button. Same for "onPrimary" and "foregroundColor".

Yes, on version 3.0.0 they were marked as "will be deprecated in a future version" but we could still use them, and in 3.13.7 they were finally removed so you had to update them

I apologise for this aspect. The extent of changes necessary was unexpected so I did not consider a structured approach when I began. To clarify, are you requesting that I resubmit the pull request in phases, or is this advice for handling future pull requests?

If we can compile it on Android too, then I'd say to apply it for future pull requests, but it's not working at the moment unfortunately :(

Was it not possible to prepare the iOS changes on flutter 3.0.0? In this version all dependencies on pubspec.yaml are compatible

DigitalSeneca commented 7 months ago

Hey @StuffJoy ! I checked and according to this answer, "application packages" should have the pubspec.lock added to git https://stackoverflow.com/a/16136740