-
Notifications
You must be signed in to change notification settings - Fork 15
Cameronmorrow1/fence 2577 bump flutter ios to 3240 #92
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Cameronmorrow1/fence 2577 bump flutter ios to 3240 #92
Conversation
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…ronmorrow1/fence-2577-bump-flutter-ios-to-3240
|
|
||
| Future<void> initRadar() async { | ||
| Radar.initialize('prj_test_pk_0000000000000000000000000000000000000000'); | ||
| Radar.initialize('prj_test_pk_0000000000000000000000000000000000000000', silentPush: true); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should make this initialize option a typed dictionary / object instead if those exist.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think dart has those, we'd have to make a class
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
maybe we should make a class then, I think if we have more initialize options in the future, or if we want to expose some of the initialize options that we already have, it'll be easier to manage. maybe a non-typed dictionary can also work if we document the available options well within the code.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if we use a class then the class would have to use the same constructor as here. if we make it non-typed we invite user error. silentPush is a named parameter here, so it's optional and they can pass it like silentPush: true. Basically a typed object without the brackets.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR updates the Flutter Radar SDK from version 3.12.4 to 3.24.0, upgrading both iOS and Android native SDK dependencies and introducing new API functionality for tags, products, verified tracking enhancements, and in-app messaging.
Key Changes:
- Upgraded iOS SDK from 3.19.5 to 3.24.0 and Android SDK to 3.23.5
- Added new API methods:
setProduct,getProduct,getTags,addTags,removeTags,isTrackingVerified,clearVerifiedLocationToken, andshowInAppMessage - Enhanced
initializemethod withsilentPushparameter andtrackVerifiedwith additional accuracy/tracking options - Updated iOS minimum deployment target from 10.0 to 12.0 and example app to 13.0
- Upgraded build tools: Android Gradle Plugin to 8.6.0, Gradle to 8.7, and compileSdkVersion to 35
Reviewed Changes
Copilot reviewed 12 out of 12 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| pubspec.yaml | Updated package version to 3.24.0 |
| lib/flutter_radar.dart | Added new API methods for product/tags management, verified tracking, in-app messaging; enhanced existing methods with new parameters |
| ios/flutter_radar.podspec.template | Updated iOS minimum platform from 10.0 to 12.0 |
| ios/flutter_radar.podspec | Updated version to 3.24.0 and iOS SDK dependency to 3.24.0; bumped platform to 12.0 |
| ios/Classes/RadarFlutterPlugin.m | Implemented new API methods and updated initialization with silentPush option; changed to module import syntax |
| example/pubspec.yaml | Updated permission_handler dependency to 12.0.0 |
| example/lib/main.dart | Added silentPush initialization example and showInAppMessage demo; updated foreground service config |
| example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme | Added LLDB configuration for Flutter debugging |
| example/ios/Runner.xcodeproj/project.pbxproj | Migrated from static library to dynamic framework linking; updated iOS deployment target to 13.0 |
| example/ios/Podfile | Updated platform to 13.0, added use_frameworks!, updated RadarSDKMotion to 3.24.0 |
| example/ios/Flutter/AppFrameworkInfo.plist | Updated minimum OS version to 13.0 |
| example/android/settings.gradle | Updated Android Gradle Plugin to 8.6.0 |
| example/android/gradle/wrapper/gradle-wrapper.properties | Updated Gradle to 8.7 |
| example/android/app/src/main/java/io/radar/example/MainApplication.java | Removed deprecated FlutterMain initialization |
| example/android/app/build.gradle | Added namespace, updated compileSdkVersion to 35, updated SDK to 3.23.5 |
| android/src/main/java/io/radar/flutter/RadarFlutterPlugin.java | Implemented new API methods and enhanced initialization/trackVerified with additional parameters |
| android/gradle/wrapper/gradle-wrapper.properties | Updated Gradle to 8.5 |
| android/build.gradle | Added Kotlin plugin, updated versionName to 3.23.5, SDK dependency to 3.23.5, added compile/Kotlin options |
| README.md | Added iOS installation note about use_frameworks! requirement |
| CHANGELOG.md | Added changelog entries for beta versions |
Comments suppressed due to low confidence (4)
lib/flutter_radar.dart:548
- [nitpick] Missing error handling for the return value. Unlike other getter methods in this file (e.g.,
getTags,isTrackingVerified),getProductdoesn't wrap the platform call in a try-catch block. While platform exceptions may be handled by Flutter's platform channel, for consistency with the codebase pattern, consider adding error handling.
static Future<String?> getProduct() async {
return await _channel.invokeMethod('getProduct');
}
lib/flutter_radar.dart:552
- [nitpick] Missing error handling for the return value. The
getTagsmethod doesn't wrap the platform call in a try-catch block. While platform exceptions may be handled by Flutter's platform channel, for consistency with the codebase pattern (as seen in setter methods), consider adding error handling.
static Future<List<String>?> getTags() async {
return await _channel.invokeMethod('getTags');
}
lib/flutter_radar.dart:572
- [nitpick] Missing error handling for the return value. The
isTrackingVerifiedmethod doesn't wrap the platform call in a try-catch block. For consistency with the codebase pattern (as seen in setter methods), consider adding error handling.
static Future<bool?> isTrackingVerified() async {
return await _channel.invokeMethod('isTrackingVerified');
}
android/build.gradle:51
- Version mismatch: The Android SDK dependency version is
3.23.5, but the iOS SDK dependency (in flutter_radar.podspec) is3.24.0. These should be aligned unless there's a specific reason for the difference, which should be documented.
implementation 'io.radar:sdk:3.23.5'
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
No description provided.