How to enable swype / gesture typing with Android 11?

Hi there,

hope this is the right forum section for my question :slight_smile:
I just installed /e/OS R (Android 11) onto a Samsung Galaxy S5. Previously I’ve been on Android 9 and always enabled swype / gesture typing by copying the libjni_latinimegoogle.so library to /system/lib/, according to the following description:

So I tried this proven method but it didn’t work this time and googleing didn’t yield an answer, yet.

Here is what I’ve been doing so far:

  • I’m using TWRP, bootet into recovery mode and accessed the file system via adb (root access).
  • “adb push libjni_latinimegoogle.so /system/lib/” move the library into its place (root access).
  • Swype wasn’t working on reboot, thus I confirmed the library is in its place and accessible via a normal user adb session (non-root):
klte:/ $ ls -l /system/lib/libjn*
ls: /system/lib/libjni_latinimegoogle.so: Permission denied
-rw-r--r-- 1 root root   7088 2009-01-01 01:00 /system/lib/libjni_pacprocessor.so
-rw-r--r-- 1 root root  13156 2009-01-01 01:00 /system/lib/libjnigraphics.so

Strangely, the library is not accessible by a normal user. But when using a root adb session it appears again:

klte:/ # ls -l /system/lib/libjn*                                                                                                                                                                                                            
-rw-r--r-- 1 root root 943652 2008-02-28 21:33 /system/lib/libjni_latinimegoogle.so
-rw-r--r-- 1 root root   7088 2009-01-01 01:00 /system/lib/libjni_pacprocessor.so
-rw-r--r-- 1 root root  13156 2009-01-01 01:00 /system/lib/libjnigraphics.so

I can only assume, that there is something very strange about the file permissions or even file system access at a user level. The file is clearly there, but not accessible for normal users. Currently, I assume that this is the reason for the missing swype / gesture typing.

Would be great if anybody had an idea on how to solve this issue.

Thanks for reading!

Hi friend.
Here is my last post (about @stef204 solution/tip) on this topic. Don’t know if it still work. Give it a try:

Hi aleam,

thanks for your reply! Actually I had already read the entire thread and tried different “adbs”:

  • adb from TWRP, which gives root access
  • adb from within /e/OS
  • adb with root from within /e/OS (adb root)

That’s how I obtained the above code snippets.
But the lib couldn’t be read as a normal user thus far. I also "chmod"ed the file properties to 777. Still the lib couldn’t be read as a normal user. And honestly, I can’t understand this behavior with my knowledge about Linux/Unix.

Besides this, the system is 32 bit, so no 64 directory for libs.

Have a good week!

I tested, and here is working:

First I allow the “add as root” in developer options:

Then, set the type of USB connection, in swipe down android menu, as PTP:
(I think in the past I choose the “transfer files” option, but whatever, adb only recognize it in PTP)

Then, in terminal (PC):

adb devices 
adb root
adb remount
add push libjni_latinimegoogle.so /system/lib/ (use the "/"in the end)
adb unroot
adb kill-server

Then, reboot the phone

1 Like

Also check out this thread.

Thank you so much @aleam! That worked.

I’m quite confused why this worked, while my previous attempts failed. Perhaps it’s been explicitly selecting PTP mode which I hadn’t done before.

Anyways, I’m very happy about the quick fix.

This topic was automatically closed after 90 days. New replies are no longer allowed.