opendroneid / opendroneid-core-c

Open Drone ID Core C Library
Apache License 2.0
178 stars 64 forks source link

Make use of this library in iOS project. #44

Closed Rashesh-Bosamiya closed 3 years ago

Rashesh-Bosamiya commented 3 years ago

Hello,

I want to make use of this library into native iOS project. Will you please guide me how can I integrate library into iOS project. And if this core-c is not compatible with iOS compiler then, does it have other library which is computable with iOS?

I see, there is library for Android written in Java.

Thank you, Rashesh Bosamiya

friissoren commented 3 years ago

Are you interested in transmitting or receiving drone ID?

I assume receiving, since you are concerned with iOS. At this point, an iOS receiver application has not been open sourced. However, reception of BT4 legacy advertising drone ID signals has earlier been demonstrated to work on iOS.

One thing to keep in mind: Apple currently does not expose suitable APIs to receive any other transmission method for drone ID signals than BT4 legacy advertising. I.e. current versions of iOS do no support receiving BT5 Long Range + Extended Advertising, Wi-Fi NaN nor Wi-Fi Beacon.

Side-note: The opendroneid-core-c repository only contains code for "compressing/de-compressing" drone ID signals between normally used data storage formats and the slightly compressed format that is used when transmitting the signals over the air. Additional code is needed for transmission and reception specific to the HW being used and the transmission protocol (BT4/BT5/WiFi-NaN/WiFi-Beacon).

Rashesh-Bosamiya commented 3 years ago

yes, I want to receive drone ID.

Can you please confirm for Android, for receiving drone ID this library is suitable? https://github.com/opendroneid/receiver-android As you said, Apple currently does not expose suitable APIs: Does that mean Apple's newer OS versions has imposed the security over using APIs?

friissoren commented 3 years ago

The receiver-android repository will allow you to build an Android application that can receive all four transmission types. Not all Android phone HW/(driver SW) is able to receive all transmission types though. An incomplete list of tested devices can be found here. WiFi-Beacon reception is currently limited to Android 11 devices, but once this gets fixed it should work on earlier versions as well.

Apple has never exposed suitable APIs for the non-BT4 transmission types. Discussion with them has been initiated to possibly get this corrected in some future iOS version but it is unclear what will happen.

Rashesh-Bosamiya commented 2 years ago

I will get back to you soon on this for further information.

Thank you @friissoren for response