Philips - Replace Kika Keyboard
Philips 10BDL series devices ship with the Kika (IQQI) third-party keyboard as the only installed input method. While there is no evidence of this keyboard being compromised, there is no reason to risk using a third-party keyboard when entering login credentials. This guide replaces it with an open-source AOSP-based keyboard via ADB.
The replacement keyboard is downloaded from F-Droid, a trusted open-source app repository that builds all apps from source. Learn more about F-Droid's security model.
Requires: ADB connected to the device (over network or USB). See our ADB Deployment Guide for setup instructions. For USB, skip
adb connect/adb disconnectand omit-s <device-ip>:5555if only one device is plugged in.
1. Download the keyboard APK
Download Simple Keyboard from F-Droid. This is a lightweight, open-source keyboard based on the Android AOSP keyboard.
On macOS/Linux:
curl -fSL -o simple-keyboard.apk "https://f-droid.org/repo/rkr.simplekeyboard.inputmethod_144.apk"
On Windows (PowerShell):
Invoke-WebRequest -Uri "https://f-droid.org/repo/rkr.simplekeyboard.inputmethod_144.apk" -OutFile simple-keyboard.apk -UseBasicParsing
Note: The version number in the URL (
_144) may change over time. Check the F-Droid page for the latest version if the download fails.
2. Install and activate
# Connect to the device
adb connect <device-ip>:5555
# Install the keyboard
adb -s <device-ip>:5555 install simple-keyboard.apk
# Enable it as an input method
adb -s <device-ip>:5555 shell ime enable rkr.simplekeyboard.inputmethod/.latin.LatinIME
# Set it as the default keyboard
adb -s <device-ip>:5555 shell ime set rkr.simplekeyboard.inputmethod/.latin.LatinIME
3. Disable Kika
adb -s <device-ip>:5555 shell pm disable-user --user 0 com.kika.imeservice
4. Verify
# Should show only Simple Keyboard
adb -s <device-ip>:5555 shell ime list -s
Expected output:
rkr.simplekeyboard.inputmethod/.latin.LatinIME
Batch deployment
To replace the keyboard on multiple devices, create a devices.txt file with one IP per line and run:
macOS/Linux:
while IFS= read -r ip || [ -n "$ip" ]; do
ip=$(echo "$ip" | sed 's/#.*//' | xargs)
[ -z "$ip" ] && continue
echo "--- $ip ---"
adb connect "$ip:5555"
adb -s "$ip:5555" install simple-keyboard.apk
adb -s "$ip:5555" shell ime enable rkr.simplekeyboard.inputmethod/.latin.LatinIME
adb -s "$ip:5555" shell ime set rkr.simplekeyboard.inputmethod/.latin.LatinIME
adb -s "$ip:5555" shell pm disable-user --user 0 com.kika.imeservice
adb disconnect "$ip:5555"
done < devices.txt
Windows (PowerShell):
Get-Content devices.txt | ForEach-Object {
$ip = ($_ -replace '#.*','').Trim()
if (-not $ip) { return }
Write-Host "--- $ip ---"
adb connect "${ip}:5555"
adb -s "${ip}:5555" install simple-keyboard.apk
adb -s "${ip}:5555" shell ime enable rkr.simplekeyboard.inputmethod/.latin.LatinIME
adb -s "${ip}:5555" shell ime set rkr.simplekeyboard.inputmethod/.latin.LatinIME
adb -s "${ip}:5555" shell pm disable-user --user 0 com.kika.imeservice
adb disconnect "${ip}:5555"
}
Reverting
To re-enable Kika if needed:
adb -s <device-ip>:5555 shell pm enable com.kika.imeservice
adb -s <device-ip>:5555 shell ime set com.kika.imeservice/com.iqqi.inputmethod.IMEService