-
-
Notifications
You must be signed in to change notification settings - Fork 685
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create libraries for NFC reader APIs #2971
Comments
Similarly to Bluetooth (#2915), it would be better to contribute Android and iOS support to an existing cross-platform NFC library rather than adding it to Toga itself. But let's leave this issue open at least until someone's had a chance to investigate what those libraries are. |
@mhsmith We're talking about relevant Python libraries only, right? Because I do not think there are any at the moment. I could only find |
In which case - sounds like a great opportunity to write one :-) But seriously - the core point is that this may not need to be a feature of Toga. Some hardware (e.g., the camera API) involves a GUI component, which means some interaction with Toga is required. However, if an API can be implemented independent of a GUI representation, then there's no need for it to be part of Toga's core API. NFC and Bluetooth support are two areas where that is definitely the case - you're reading data over the air; how that data is displayed is independent of how the data is read. The only place this gets complicated is in the choice of bridging layer - an implementation for iOS that uses Rubicon as the ObjC bridging layer will really only be compatible with the BeeWare ecosystem, and not as useful for Kivy (at least, not without duplicating the bridge layer, and dealing with having 2 representations of ObjC objects). But a |
What is the problem or limitation you are having?
Toga doesn't support NFC readers.
Describe the solution you'd like
Support NFC readers on Android and iOS.
Describe alternatives you've considered
Using native platform APIs. But learning and implementing them separately can be time-consuming.
Additional context
This was already suggested several times:
For iOS it should be implemented here, I guess: https://github.com/beeware/toga/tree/main/iOS/src/toga_iOS/libs
And here for Android: https://github.com/beeware/toga/tree/main/android/src/toga_android/hardware
iOS documentation: https://developer.apple.com/documentation/corenfc
Android: https://developer.android.com/develop/connectivity/nfc/nfc
Web: https://developer.mozilla.org/en-US/docs/Web/API/Web_NFC_API
The text was updated successfully, but these errors were encountered: