Integrate flutter_appavailability package for vulnerability scanning #467
+389
−0
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR implements the integration of the
flutter_appavailability
package as requested in the issue to enable users to view and select installed apps when reporting security vulnerabilities.What's Changed
Package Integration
flutter_appavailability: ^0.0.9
dependency topubspec.yaml
QUERY_ALL_PACKAGES
permission toAndroidManifest.xml
for app discovery on AndroidNew Components
InstalledAppsService
: Service class handling app discovery, filtering system apps, and sorting alphabeticallyInstalledAppsWidget
: Reusable UI widget with expandable interface, multi-select functionality, and comprehensive error handlingReport Bug Form Enhancement
The bug reporting form now includes an "Installed Apps for Vulnerability Scan" section that allows users to:
Data Model Updates
Issue
model to includeinstalledApps
field{appName, packageName}
objectsUI Features
Screenshot
The collapsed state of the installed apps widget integrated into the report bug form
Benefits
This enhancement helps security researchers by providing context about which applications users were interacting with when security issues occurred, enabling more targeted vulnerability analysis and better issue categorization.
Files Changed
pubspec.yaml
- Added flutter_appavailability dependencylib/src/pages/home/report_bug.dart
- Integrated widget and updated Issue creationlib/src/models/issue_model.dart
- Added installedApps fieldlib/src/util/services/installed_apps_service.dart
- New service classlib/src/util/widgets/installed_apps_widget.dart
- New UI widgetandroid/app/src/main/AndroidManifest.xml
- Added required permissionstest/installed_apps_integration_test.dart
- Integration testsFixes #[issue_number]
Warning
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_3.24.5-stable.tar.xz
curl -fsSL REDACTED -o flutter.tar.xz
(http block)wget -q REDACTED -O flutter.tar.xz
(http block)If you need me to access, download, or install something from one of these locations, you can either:
Original prompt
💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.