⚠️ Important Preliminary Notes
Safety: This is a "safe method" as it modifies files in the `/data` partition, not the `/system` partition. This means the changes will be automatically reverted if you perform a factory reset, preventing a permanent "brick."
Prerequisites: You must have **ADB (Android Debug Bridge)** set up on your computer and **USB Debugging** enabled on your phone (by dialing `*#*#33284#*#*` to get the bug icon).
Tools Needed: You will need a basic text editor (like Notepad++ or VSCode) and access to a website for JSON validation.
---
📋 Phase 1: Preparation
What You'll Need:
- Your Nokia 8110 4G with USB Debugging enabled (bug icon visible).
- A Windows, macOS, or Linux computer.
- A reliable Micro-USB data cable.
- Android SDK Platform-Tools (for ADB). You should already have this from the previous guide.
- A text editor that can handle code (Notepad++, VSCode, Sublime Text). Avoid using Windows Notepad.
- An internet connection to validate JSON.
Understanding the Modification:
The original keypad values are too aggressive:
LONGPRESS_INTERVAL=1000: How long you hold a key before it activates special characters (like accents or numbers).
IDLE_INTERVAL=1000: The delay before a key starts repeating if held down.
The new, improved values make typing more precise and prevent unwanted repeated characters:
LONGPRESS_INTERVAL=500: Faster access to special characters.
IDLE_INTERVAL=400: A shorter delay before key repeat begins, making it more responsive but less likely to accidentally repeat.
---
🔧 Phase 2: The Step-by-Step Modification Process
Step 1: Pull the Keyboard Application from the Phone
- Connect your phone to the computer via USB.
- Open a Command Prompt (Windows) or Terminal (macOS/Linux) on your computer.
- Navigate to the folder where your adb tool is located (e.g., C:\platform-tools).
- Run the following command to copy the keyboard app to your computer:
adb pull /system/b2g/webapps/keyboard.gaiamobile.org
This will create a folder named keyboard.gaiamobile.org on your computer.
Step 2: Extract and Modify the Keypad Configuration
1. Navigate into the new folder on your computer: keyboard.gaiamobile.org.
2. Inside, you will find a file named application.zip. Extract its contents into this same folder. You should now see folders like js, style, index.html, etc.
3. Navigate into the js folder.
4. Find and open the file keypad.js with your advanced text editor (e.g., Notepad++).
5. Search for the specific line mentioned in the guide. It will look like this:
Keypad.prototype.LONGPRESS_INTERVAL=1000;Keypad.prototype.IDLE_INTERVAL=1000;
6. Change the values to the new, improved ones:
Keypad.prototype.LONGPRESS_INTERVAL=500;Keypad.prototype.IDLE_INTERVAL=400;
7. Save the file.
Step 3: Repackage the Application
1. Go back to the main keyboard.gaiamobile.org folder on your computer.
2. Select ALL the files and folders (js, style, index.html, manifest.webapp, etc.).
3. Create a new ZIP archive from these selected items.
Important: The archive must be named application.zip.
Ensure the archive's structure is flat: when opened, you should immediately see the js folder and other files, not another folder containing them.
4. You can now delete the extracted folders (js, style, etc.) from the keyboard.gaiamobile.org directory, leaving only the new application.zip file and the original manifest.webapp file.
Step 4: Push the Modified App to the Phone's Data Partition
- Ensure your phone is still connected and ADB is working.
- In your command line, run the following command to create the webapps directory on your phone (if it doesn't exist) and copy your modified keyboard app:
adb push keyboard.gaiamobile.org /data/local/webapps
Note: Now here you will get an error. First, install OmniSD and Wallace Toolbox. I explained this in my previous guide. After that, the adb push command above will work smoothly.
Remember, in Wallace Toolbox, press 1 to get root access. Now, paste the command again.
Step 5: Modify the WebApps Registry (webapps.json)
This step tells the phone to use your modified app from the /data partition instead of the original one in the /system partition.
1. Pull the webapps configuration file from your phone:
adb pull /data/local/webapps/webapps.json
This will copy the webapps.json file to your current directory on the computer.
2. Open webapps.json with your text editor.
3. Search for the entry related to the keyboard. It will be a JSON object containing a line like:
"basePath": "/system/b2g/webapps",
4. For the keyboard app, change this line to:
"basePath": "/data/local/webapps",
5. Validate your JSON! This is a critical step. A single missing comma or bracket will break your app registry and cause serious issues.
- Go to JSONLint.com.
- Copy and paste the entire contents of your modified webapps.json file into the validator.
- Click Validate JSON. If it shows Valid JSON, you are good to go. If it shows errors, fix them in your editor and validate again until it passes.
6. Save the file.
Step 6: Push the Modified Registry and Reboot
1. Once your webapps.json file is valid, push it back to the phone:
adb push webapps.json /data/local/webapps/
2. Finally, reboot your phone for the changes to take effect:
adb reboot
---
✅ Phase 3: Verification and Testing
1. After your phone reboots, test the keypad immediately. Open your messages app and start typing. You should notice a significant improvement:
- Letters should not repeat accidentally when pressed normally.
- Holding a key down should bring up the special character menu more quickly.
2. For advanced verification, you can use WebIDE to confirm the phone is using your modified file:
- Reconnect with WebIDE.
- Use the file browser to navigate to
/data/local/webapps/keyboard.gaiamobile.org/application.zip. You can extract and check the keypad.js file to confirm it contains your new values (500 and 400).
---
🆘 Troubleshooting
Issues And Their Solution
adb pull or adb push fails: Ensure USB Debugging is enabled (bug icon is visible). Try a different USB cable or port.
Phone behaves strangely after reboot: You likely have a syntax error in your webapps.json file. Restore the original file by pushing the backup you made (you did make a backup, right?) or simply perform a factory reset (`Settings > Device > Reset phone`), which will wipe your data but fix the issue.
No change in keypad behavior: The phone is still using the system app. Double-check that you correctly changed the basePath in the webapps.json file for the keyboard entry and that the JSON is valid.
---
This modification, courtesy of Sylvain D and Vivek from the BananaHackers community, is one of the most valuable quality-of-life improvements for the Nokia 8110 4G. Enjoy your newly responsive and much less frustrating typing experience.


Post A Comment:
0 comments:
Comment Policy
We’re eager to see your comment. However, Please Keep in mind that all comments are moderated manually by our human reviewers according to our comment policy, and all the links are nofollow. Using Keywords in the name field area is forbidden. Let’s enjoy a personal and evocative conversation.