question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

minSdkVersion as low as possible

See original GitHub issue

To allow as many users as possible to participate, the minimum Android version should be as low as possible. Since BLE is introduced in Android 4.3 (API 18), this would be the ideal minSdkVersion.

With the help of the Android linter, I will summarize the sections that would be highlighted as incompatible depending on the API version one would pick as a minSdkVersion.

API 21

  • The library androidx.security:security-crypto only supports API 23. Likely, it could be replaced with the library Android-Vault, which uses the Android keystore to store the key as well.

As well as these trivial issues:

API 19

  • A lot of Bluetooth APIs were apparently rewritten; those rewrites are only included in API 21. As such, using the old (deprecated) methods would require a rewrite of BleClient and BleServer as an alternative for older devices. Some calls in GattConnectionTask would have to be changed.

API 18

Trivial issues:

Issue Analytics

  • State:open
  • Created 3 years ago
  • Reactions:8
  • Comments:8 (1 by maintainers)

github_iconTop GitHub Comments

3reactions
Vanuancommented, Apr 30, 2020

New information from Android Exposure API:

Bluetooth functionality, including all broadcast and scanning for BLE beacons and local database storage, happens within Google Play services on-device. Your app will need to have the BLUETOOTH permission in its manifest, but does not require ACCESS_FINE_LOCATION or BLUETOOTH_ADMIN. For your app to work on a device, the device must be running Android version 5.0 (API version 21) or higher.

So the minimum version should be API 21.

3reactions
fynngodaucommented, Apr 18, 2020

@corrado4eyes I believe there should be an implementation independent from GMS, see #10.

Read more comments on GitHub >

github_iconTop Results From Across the Web

<uses-sdk> | Android Developers
You can determine the lowest possible platform version by compiling the application against successively lower build targets. After you ...
Read more >
Any disadvantages of setting minsdkversion to a very low ...
So setting a minSdkVersion defines on which devices your application is allowed to run. That way, you can safely use APIs that were...
Read more >
Change Android Minsdkversion in Flutter - 2 Easy Ways [2022]
There are two ways you can change Android minSdkVersion. The first one is for the projects that are created before Flutter 2.8 update...
Read more >
Picking your compileSdkVersion, minSdkVersion ... - Medium
minSdkVersion (lowest possible) <= targetSdkVersion == compileSdkVersion (latest SDK). You'll hit the biggest audience with a low ...
Read more >
Support Android minSdkVersion | Voters - Expo - Canny
It seems like a small, simple change to support given "uses-sdk" is already being used. ... Instead of Expo Go, you can build...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found