Overview
Keyboard extensions may sometimes have to open a URL or trigger a deep link, for instance to the main app or System Settings.
Since Keyboard extensions canβt use UIApplication.shared
, KeyboardKit provides alternate ways to open URLs, without using UIApplication.shared
.
Core Features
To open a URL from a keyboard extension, use the KeyboardInputViewController
openUrl(_:)
, which opens the provided URL without using the shared application.
To avoid depending on the controller (which can easily cause memory leaks), you can also trigger a KeyboardAction.url(_:id:)
action and let the main KeyboardActionHandler
handle it.
KeyboardKit defines a .keyboardSettings
URL that can be used to open your app in System Settings. If your keyboard navigates to the root instead of your app, try adding a Settings Bundle to your app.
Documentation
The information on this page is shortened to be easier to overview. For more information about this feature, code samples, etc. please see the online documentation.
Read more
Essentials
KeyboardKit provides essential features, utilities & views.
Actions
KeyboardKit makes it easy to trigger keyboard-related actions
AI Support
KeyboardKit has features that are needed for AI.
App
KeyboardKit has app-specific screens & views.
Autocomplete
KeyboardKit can perform autocomplete.
Callouts
KeyboardKit can show input & secondary action callouts.
Colors
KeyboardKit defines keyboard-specific colors.
Device Utilities
KeyboardKit has device-specific utilities.
Dictation
KeyboardKit can perform dictation from the keyboard.
Emojis
KeyboardKit defines emojis, categories, skin tones, etc.
External Keyboards
KeyboardKit Pro can detect if an external keyboard is being used.
Feedback
KeyboardKit can trigger audio & haptic feedback.
Gestures
KeyboardKit has a customizable keyboard gesture engine.
Host
KeyboardKit can identify the host application.
Images
KeyboardKit defines keyboard-specific images.
Layout
KeyboardKit has customizable input sets & keyboard layouts.
Localization
KeyboardKit supports 60+ locales and languages.
Navigation
KeyboardKit lets you open urls and apps from the keyboard.
Previews
KeyboardKit has extension keyboard preview support.
Proxy Utilities
KeyboardKit makes your text document proxy do a LOT more.
Settings
KeyboardKit has tools for in-app settings & System Settings.
Status
KeyboardKit detects if a keyboard is enabled, has full access, etc.
Styling
KeyboardKit lets you style your keyboards to great extent.
Text Input
KeyboardKit can input text inside the keyboard extension itself.
Themes
KeyboardKit can use themes to style keyboards in flexible ways.