It's not an explicit requirement, but you definitely need to test your app with an external keyboard to polish the experience.
Here's a couple of situations that can get you when supporting an external Bluetooth keyboard:
- Input accessory view. If you use an input accessory view (bar that sits atop the regular software keyboard), then connecting an external keyboard will cause the software keyboard to hide but keep the accessory view on screen. This is great — but if you had any controls underneath the keyboard (especially on iPad) that required the user to dismiss the keyboard to get to them, then you have to build a way for them to 'dismiss' the keyboard when using an external keyboard.
- Custom keyboard. You might build a custom keyboard for your app. Connecting an external one will not show your custom keyboard. You'll need to ensure that functionality is still provided when an external keyboard is connected.
There are a few other things like making sure your keyboard view resizing code is robust enough to handle all the possible state transitions ("no input -> software input -> bluetooth input", or "no input -> bluetooth input -> software input", and so on).
If you're just using a standard text view you probably don't need to do anything special. But in this case Tydlig seems to do a lot of special stuff and probably required a bit of extra work to get Bluetooth keyboards running without issue.