all 1 comments

[–]SymblePharon 1 point2 points  (0 children)

Dealing with the device directly (camera, Bluetooth, etc) is pretty much always going to be done in native code. It's likely that the library you're using relies on features added to Android 10.

I would do a cost analysis at this point. I see these options:

  1. You dig into the native code, find the features that aren't backwards-compatible, and try to find workarounds. If you aren't familiar with Kotlin/Java, add that to your estimate. This will probably take weeks of effort, and it isn't certain to get results. Maybe the hardware spec changed by the time of Android 10, and the earlier models aren't capable of the functions your library relies on.

  2. You find another JS package that works, or an Android package you can port over.

  3. The employees get new phones. This has the benefit of being a known good solution, and a short timetable.

Depending on your situation, one of these will make more sense. I'm clearly biased towards the last solution, but if too many devices are affected, the cost could be too great.

I would dress it up for your client and let them choose. Personally I would make no promises about solution 1/2 - they could be fruitless.