-
Notifications
You must be signed in to change notification settings - Fork 3.3k
[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 stuartmorgan@google.com [ci] Remove unnecessary Linux libraries (flutter/packages#3975) 2023-05-15 stuartmorgan@google.com [ci] Enforce a minimum Kotlin version in examples (flutter/packages#3979) 2023-05-15 stuartmorgan@google.com [ci] Disable Windows repo tool tests (flutter/packages#3980) 2023-05-12 stuartmorgan@google.com [ci] Add LUCI repo tool tests (flutter/packages#3964) 2023-05-12 reidbaker@google.com [url_launcher] Set broadcast reciever visability as required by target api 34 (flutter/packages#3973) 2023-05-12 reidbaker@google.com Update build.gradle with a comment explaining version (flutter/packages#3972) 2023-05-12 engine-flutter-autoroll@skia.org Roll Flutter from 8c5a1ea to a76dbe4 (12 revisions) (flutter/packages#3958) 2023-05-12 stuartmorgan@google.com [image_picker] Fix Android lints (flutter/packages#3887) 2023-05-12 stuartmorgan@google.com [various] Update minimum Flutter version to 3.3 (flutter/packages#3967) 2023-05-12 stuartmorgan@google.com [tool] Target specific Android unit tests (flutter/packages#3955) 2023-05-12 34871572+gmackall@users.noreply.github.com [camerax] Add a dependency on kotlin-bom to align versions of kotlin-stdlib (flutter/packages#3960) 2023-05-12 stuartmorgan@google.com [local_auth] Improve iOS test DI (flutter/packages#3959) 2023-05-12 stuartmorgan@google.com [ci] Ensure scripts fail if a command fails (flutter/packages#3963) 2023-05-11 stuartmorgan@google.com [ci] Pin the Flutter version for `release` (flutter/packages#3965) 2023-05-11 tarrinneal@gmail.com [video_player] foundation - reduce seek accuracy to fix seek to end bug (flutter/packages#3784) 2023-05-11 stuartmorgan@google.com [image_picker] Fix use_build_context_synchronously violations (flutter/packages#3969) 2023-05-11 stuartmorgan@google.com [tool] Ensure that publish credential path is available (flutter/packages#3970) 2023-05-11 63286031+ahmednfwela@users.noreply.github.com [go_router] change `fix_data.yaml` uris to be absolute to fix lints (flutter/packages#3877) 2023-05-11 stuartmorgan@google.com [tool] Use new pub cache location for publish (flutter/packages#3962) 2023-05-10 engine-flutter-autoroll@skia.org Roll Flutter (stable) from f72efea to 84a1e90 (1920 revisions) (flutter/packages#3961) 2023-05-10 andrelvsousa@gmail.com [image_picker_android] Improved Bitmap resize on Android (flutter/packages#3423) 2023-05-10 43054281+camsim99@users.noreply.github.com [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 flutter-ecosystem@google.com,rmistry@google.com 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 stuartmorgan@google.com [ci] Remove unnecessary Linux libraries (flutter/packages#3975) 2023-05-15 stuartmorgan@google.com [ci] Enforce a minimum Kotlin version in examples (flutter/packages#3979) 2023-05-15 stuartmorgan@google.com [ci] Disable Windows repo tool tests (flutter/packages#3980) 2023-05-12 stuartmorgan@google.com [ci] Add LUCI repo tool tests (flutter/packages#3964) 2023-05-12 reidbaker@google.com [url_launcher] Set broadcast reciever visability as required by target api 34 (flutter/packages#3973) 2023-05-12 reidbaker@google.com Update build.gradle with a comment explaining version (flutter/packages#3972) 2023-05-12 engine-flutter-autoroll@skia.org Roll Flutter from 8c5a1ea to a76dbe4 (12 revisions) (flutter/packages#3958) 2023-05-12 stuartmorgan@google.com [image_picker] Fix Android lints (flutter/packages#3887) 2023-05-12 stuartmorgan@google.com [various] Update minimum Flutter version to 3.3 (flutter/packages#3967) 2023-05-12 stuartmorgan@google.com [tool] Target specific Android unit tests (flutter/packages#3955) 2023-05-12 34871572+gmackall@users.noreply.github.com [camerax] Add a dependency on kotlin-bom to align versions of kotlin-stdlib (flutter/packages#3960) 2023-05-12 stuartmorgan@google.com [local_auth] Improve iOS test DI (flutter/packages#3959) 2023-05-12 stuartmorgan@google.com [ci] Ensure scripts fail if a command fails (flutter/packages#3963) 2023-05-11 stuartmorgan@google.com [ci] Pin the Flutter version for `release` (flutter/packages#3965) 2023-05-11 tarrinneal@gmail.com [video_player] foundation - reduce seek accuracy to fix seek to end bug (flutter/packages#3784) 2023-05-11 stuartmorgan@google.com [image_picker] Fix use_build_context_synchronously violations (flutter/packages#3969) 2023-05-11 stuartmorgan@google.com [tool] Ensure that publish credential path is available (flutter/packages#3970) 2023-05-11 63286031+ahmednfwela@users.noreply.github.com [go_router] change `fix_data.yaml` uris to be absolute to fix lints (flutter/packages#3877) 2023-05-11 stuartmorgan@google.com [tool] Use new pub cache location for publish (flutter/packages#3962) 2023-05-10 engine-flutter-autoroll@skia.org Roll Flutter (stable) from f72efea to 84a1e90 (1920 revisions) (flutter/packages#3961) 2023-05-10 andrelvsousa@gmail.com [image_picker_android] Improved Bitmap resize on Android (flutter/packages#3423) 2023-05-10 43054281+camsim99@users.noreply.github.com [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 flutter-ecosystem@google.com,rmistry@google.com 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].///
).