Soften runtime requirement for Android SwipeRefreshLayout #2454
Labels
android
The issue relates to Android mobile support.
enhancement
New features, or improvements to existing features.
good first issue
Is this your first time contributing? This could be a good place to start!
What is the problem or limitation you are having?
The Android backend currently requires that
androidx.swiperefreshlayout:swiperefreshlayout:1.1.0
be available as a runtime dependency, even if you're not using the DetailedList widget where it is used.Describe the solution you'd like
Briefcase now allows for end-user customisation of gradle dependencies. The dependency on SwipeRefreshLayout should only be required if you actually use the DetailedList widget. If you don't, an app should run without this dependency being declared.
Describe alternatives you've considered
Do nothing. Apps will continue to work; there's just an extra dependency that isn't used.
Additional context
Three changes are required:
ImportError
related to importingSwipeRefreshLayout
in DetailedList if the package isn't available.The implementation of MapView will be a useful point of comparison - it has
ImportError
handling whenOSMMapView
isn't available, raises an error if MapView is used when OSMMapView isn't available, and has documentation describing the required dependencyThe text was updated successfully, but these errors were encountered: