Add browser support for android version upper then 5. #101
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.
Problem:
When you receive a list of browsers on devices with an Android version greater than 5, that is, from 6 to 13, only the browser selected by default is returned.
There are 2 main reasons why this happens. Firstly, with Android version 6 to 13, in order to get a list of all browsers in the "queryIntentActivities" method, it is necessary to send the "MATCH_ALL" flag, at the moment the number 0 is sent. Secondly, in Android version 13, the old API "queryIntentActivities" is marked as "deprecated", and the new version of the API requires passing an object of type "PackageManager.ResolveInfoFlags" instead of an integer flag.
The "resolveActivity" method for default browser search has undergone the same changes.
Here are the links with the required specification:
https://developer.android.com/reference/android/content/pm/PackageManager#queryIntentActivities(android.content.Intent,%20android.content.pm.PackageManager.ResolveInfoFlags)
https://developer.android.com/reference/android/content/pm/PackageManager#resolveActivity(android.content.Intent,%20int)
Solution:
Support for new and intermediate API versions has been added. The application has been tested on Android versions 5, 6 and 13.