I have an "old style" ANT mobile android application which reads temperature and pressure data from a hardware sensor. The application binds the ANT radio service via AntInterface.initService. Now I want to add an ANT+ heartrate sensor based on the ANT+ heartrate profile. I integrated the new code according to the AntPlusPluginSampler code.
Unfortunately AntPlusHeartRatePcc.requestAccess results in the following error message: "The ANT radio service is in use. Free it so another application can use it." Freeing the ANT radio service displays either heartrate or temperature/pressure data but not both.
My question is: How does a combined ANT/ANT+ application bind the ANT radio service correctly?
Unfortunately the old API takes possession of the whole chip which blocks other apps from binding to the ANT Radio Service. The ANT+ Plugins are build upon a new ANT Channel API which allows ANT channels to be shared individually with other apps, so multiple apps may bind to the ARS and ANT+ Plugins and share ANT Channels as they come available.
For your application to work you must update your old style application to use the new ANT Channel API which you may find on the Downloads Page, which will then allow you to mix and match the ANT/ANT+ API's.