Steps to reproduce
- Open Obsidian Android app
- Connect a Bluetooth keyboard to the Android device
- Obsidian app restarts from splash screen
- Disconnect the Bluetooth keyboard
- Again, the Obsidian app restarts from splash screen
Expected result
App window should remain unchanged when an external Bluetooth keyboard is connected or disconnected.
Actual result
Obsidian Android app restarts from its splash screen whenever a Bluetooth keyboard is connected or disconnected while using the app.
Environment
- Operating system: Android 10
- Obsidian version: 1.0.5
Additional information
I suspect this is related to the Android app’s manifest not being registered to handle “keyboard” configuration changes. By default, Android classifies connecting/disconnecting an external keyboard as a config change and fires the app’s onCreate
method. See:
- android - bluetooth keyboard will cause activity destroy and recreate - Stack Overflow
- java - Android App - Fires onCreate whenever bluetooth keyboard connects / disconnects - Stack Overflow
- Handle configuration changes | Android Developers
My workflow involves switching my keyboard frequently between my main PC and Obsidian on my Android tablet, but because the app restarts whenever I switch it’s rather clunky in practice.