-
Notifications
You must be signed in to change notification settings - Fork 3.4k
[url_launcher] Set broadcast reciever visability as required by target api 34 #3973
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
[url_launcher] Set broadcast reciever visability as required by target api 34 #3973
Conversation
It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption to this rule, contact Hixie on the #hackers channel in Chat (don't just cc him here, he won't see it! He's on Discord!). If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix? Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing. |
@@ -144,6 +145,11 @@ public void onCreate(@Nullable Bundle savedInstanceState) { | |||
|
|||
// Register receiver that may finish this Activity. | |||
registerReceiver(broadcastReceiver, closeIntentFilter); |
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.
Do we still need this version?
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.
No, removed.
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.
LGTM! One nit I missed before.
@@ -1,3 +1,7 @@ | |||
## 6.0.33 | |||
|
|||
* Explicitly set if reciever for close should be exported. |
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.
Nit: sets
(Per repo changelog style guide)
test-exempt: SDK34 is only in beta and is not yet in our testing matrix; this will be tested once SDK34 is part of our normal testing regime. |
FYI this caused OOB breakage for us when it was published: https://github.com/flutter/packages/runs/13447851341
It has a very clear error message from
I can repro locally; it appears that having an explicit I'll update all our examples that have a Kotlin version to 1.7.10, but we may need to do the same in |
#3973 caused an out-of-band failure after publishing, because an example that uses `url_launcher` had a too-old Kotlin version set. This is not something we consider client-breaking because `flutter` prodives a very clear error message with a straightforward and actionable fix step (update the app's Kotlin version), so the fix for the breakage is just to update our own examples. Since increasingly we're likely to hit problems where modern version of dependencies don't work with old version of Kotlin, this adds repo-wide CI enforcement that examples are set to a minimum version (matching the current `flutter/flutter` template; we can increase this over time as we feel it's useful to do so).
flutter/packages@6328cfb...6608b60 2023-05-15 [email protected] [ci] Remove unnecessary Linux libraries (flutter/packages#3975) 2023-05-15 [email protected] [ci] Enforce a minimum Kotlin version in examples (flutter/packages#3979) 2023-05-15 [email protected] [ci] Disable Windows repo tool tests (flutter/packages#3980) 2023-05-12 [email protected] [ci] Add LUCI repo tool tests (flutter/packages#3964) 2023-05-12 [email protected] [url_launcher] Set broadcast reciever visability as required by target api 34 (flutter/packages#3973) 2023-05-12 [email protected] Update build.gradle with a comment explaining version (flutter/packages#3972) 2023-05-12 [email protected] Roll Flutter from 8c5a1ea to a76dbe4 (12 revisions) (flutter/packages#3958) 2023-05-12 [email protected] [image_picker] Fix Android lints (flutter/packages#3887) 2023-05-12 [email protected] [various] Update minimum Flutter version to 3.3 (flutter/packages#3967) 2023-05-12 [email protected] [tool] Target specific Android unit tests (flutter/packages#3955) 2023-05-12 [email protected] [camerax] Add a dependency on kotlin-bom to align versions of kotlin-stdlib (flutter/packages#3960) 2023-05-12 [email protected] [local_auth] Improve iOS test DI (flutter/packages#3959) 2023-05-12 [email protected] [ci] Ensure scripts fail if a command fails (flutter/packages#3963) 2023-05-11 [email protected] [ci] Pin the Flutter version for `release` (flutter/packages#3965) 2023-05-11 [email protected] [video_player] foundation - reduce seek accuracy to fix seek to end bug (flutter/packages#3784) 2023-05-11 [email protected] [image_picker] Fix use_build_context_synchronously violations (flutter/packages#3969) 2023-05-11 [email protected] [tool] Ensure that publish credential path is available (flutter/packages#3970) 2023-05-11 [email protected] [go_router] change `fix_data.yaml` uris to be absolute to fix lints (flutter/packages#3877) 2023-05-11 [email protected] [tool] Use new pub cache location for publish (flutter/packages#3962) 2023-05-10 [email protected] Roll Flutter (stable) from f72efea to 84a1e90 (1920 revisions) (flutter/packages#3961) 2023-05-10 [email protected] [image_picker_android] Improved Bitmap resize on Android (flutter/packages#3423) 2023-05-10 [email protected] [camerax] Add Kotlin duplicate classes known error to README.md (flutter/packages#3957) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages-flutter-autoroll Please CC [email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
flutter/packages@6328cfb...6608b60 2023-05-15 [email protected] [ci] Remove unnecessary Linux libraries (flutter/packages#3975) 2023-05-15 [email protected] [ci] Enforce a minimum Kotlin version in examples (flutter/packages#3979) 2023-05-15 [email protected] [ci] Disable Windows repo tool tests (flutter/packages#3980) 2023-05-12 [email protected] [ci] Add LUCI repo tool tests (flutter/packages#3964) 2023-05-12 [email protected] [url_launcher] Set broadcast reciever visability as required by target api 34 (flutter/packages#3973) 2023-05-12 [email protected] Update build.gradle with a comment explaining version (flutter/packages#3972) 2023-05-12 [email protected] Roll Flutter from 8c5a1ea to a76dbe4 (12 revisions) (flutter/packages#3958) 2023-05-12 [email protected] [image_picker] Fix Android lints (flutter/packages#3887) 2023-05-12 [email protected] [various] Update minimum Flutter version to 3.3 (flutter/packages#3967) 2023-05-12 [email protected] [tool] Target specific Android unit tests (flutter/packages#3955) 2023-05-12 [email protected] [camerax] Add a dependency on kotlin-bom to align versions of kotlin-stdlib (flutter/packages#3960) 2023-05-12 [email protected] [local_auth] Improve iOS test DI (flutter/packages#3959) 2023-05-12 [email protected] [ci] Ensure scripts fail if a command fails (flutter/packages#3963) 2023-05-11 [email protected] [ci] Pin the Flutter version for `release` (flutter/packages#3965) 2023-05-11 [email protected] [video_player] foundation - reduce seek accuracy to fix seek to end bug (flutter/packages#3784) 2023-05-11 [email protected] [image_picker] Fix use_build_context_synchronously violations (flutter/packages#3969) 2023-05-11 [email protected] [tool] Ensure that publish credential path is available (flutter/packages#3970) 2023-05-11 [email protected] [go_router] change `fix_data.yaml` uris to be absolute to fix lints (flutter/packages#3877) 2023-05-11 [email protected] [tool] Use new pub cache location for publish (flutter/packages#3962) 2023-05-10 [email protected] Roll Flutter (stable) from f72efea to 84a1e90 (1920 revisions) (flutter/packages#3961) 2023-05-10 [email protected] [image_picker_android] Improved Bitmap resize on Android (flutter/packages#3423) 2023-05-10 [email protected] [camerax] Add Kotlin duplicate classes known error to README.md (flutter/packages#3957) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages-flutter-autoroll Please CC [email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
…t api 34 (flutter#3973) - Update the version of androidx used. - Explicitly set Exported on previously exported broadcast reciever [126460](flutter/flutter#126460) This change is a no-op in behavior. I am open to the argument that instead we make this configurable. https://developer.android.com/guide/components/broadcasts#context-registered-receivers
flutter#3973 caused an out-of-band failure after publishing, because an example that uses `url_launcher` had a too-old Kotlin version set. This is not something we consider client-breaking because `flutter` prodives a very clear error message with a straightforward and actionable fix step (update the app's Kotlin version), so the fix for the breakage is just to update our own examples. Since increasingly we're likely to hit problems where modern version of dependencies don't work with old version of Kotlin, this adds repo-wide CI enforcement that examples are set to a minimum version (matching the current `flutter/flutter` template; we can increase this over time as we feel it's useful to do so).
fixed [#flutter/flutter/issues/126460 ](flutter/flutter#126460) Reland of #3973 which incorrectly used application context when registering and not when unregistering. This pr uses activity context for both which is aligned with what the behavior was before. - Register on the same context as unregister - Add integration test for android url launch and close Tested with manual test and new integration test.
126460
This change is a no-op in behavior. I am open to the argument that instead we make this configurable.
https://developer.android.com/guide/components/broadcasts#context-registered-receivers
Pre-launch Checklist
dart format
.)[shared_preferences]
pubspec.yaml
with an appropriate new version according to the [pub versioning philosophy], or this PR is [exempt from version changes].CHANGELOG.md
to add a description of the change, [following repository CHANGELOG style].///
).