TrackMyIndoorWorkout / TrackMyIndoorWorkout

Indoor fitness machine (bike, treadmill, rower, kayak / canoe / swim ergometer, elliptical) companion app to record virtual workouts with synthetic GPS track of simply circling on a track shape route
https://TrackMyIndoorWorkout.github.io
GNU General Public License v3.0
29 stars 8 forks source link

iOS release #34

Open MrCsabaToth opened 3 years ago

MrCsabaToth commented 3 years ago

I'd need at least a newer iMac - if not a MacBook - to pull that off. Bitrise and CodeMagic are great services but building the first working version will need many iterations.

MrCsabaToth commented 3 years ago

Recently certain news outlets reported that bluetooth game controllers could be paired on iOS for game streaming webapps: https://www.extremetech.com/gaming/317578-nvidia-google-to-support-cloud-gaming-on-iphone-via-web-apps

I wondered how this could be possible since Safari doesn't support Web Bluetooth and every browser is basically a masqueraded Safari. https://stackoverflow.com/questions/64936262/how-to-pair-with-a-bluetooth-device-from-an-ios-web-application

With https://apps.apple.com/us/app/bluefy-web-ble-browser/id1492822055 or https://apps.apple.com/us/app/webble/id1193531073 it seems to be possible to transform the whole app into a PWA. We could use IndexedDB to store the workouts temporarily. Strava integration / OAuth wouldn't be a problem any more. The only doubt is how smooth is the usage of Bluefy or WebBLE. For example the latter package's review from spring 2020 tells that supposedly there's "No Bluetooth LE scanning support".

MrCsabaToth commented 2 years ago

I got a MacBook from Gregg. It's older but hopefully it can do the job. This will take a lot of learning though.

MrCsabaToth commented 2 years ago

Right now I'm only using Material widget sets. Flutter has a parallel full set of Cupertino widgets which mimic iOS. I should somehow automatically revert to Cupertino for iOS and Material for Android. See https://stackoverflow.com/questions/55184105/does-flutter-automatically-display-cupertino-ui-in-ios-and-material-in-android-w

MrCsabaToth commented 2 years ago

https://pub.dev/packages/flutter_platform_widgets is promising, however it'd be great to have even lower code friction. Also see https://stackoverflow.com/questions/56416809/flutter-will-cupertino-widgets-works-on-android https://stackoverflow.com/questions/61674954/confusion-with-the-use-of-cupertinoapp-and-materialapp-in-flutter

MrCsabaToth commented 2 years ago

iOS FTMS implementation: https://github.com/michallaskowski/FTMSTrainer

MrCsabaToth commented 2 years ago

For iOS CI/CD there's also an option by Semaphore (https://semaphoreci.com/) and multi platform app distribution by Fastlane https://firebase.google.com/docs/app-distribution/ios/distribute-fastlane (see first session by Joshua de Guzman https://gdg.community.dev/events/details/google-gdg-kansas-city-presents-midwest-devfest-2021/)

MrCsabaToth commented 2 years ago

Mentioning again https://pub.dev/packages/flutter_platform_widgets although I wonder if the fixed bottom right placement of the circular menu would interfere with the Cupertino AppBar scaffolds

MrCsabaToth commented 5 months ago

Google has its new IDX on-line IDE, which is capable of iOS build and debug. This can immensely help to at least get to the first successful compile, and then it is able to debug even. I got in to the test period, I hit a roadblock when I was not able to update the VM from Flutter SDK 3.13.4 to latest. Also could not switch channel from stable to beta. See https://issuetracker.google.com/issues/314524392

MrCsabaToth commented 3 months ago

BRUCE LACH +1