• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

EnhancedIME - AOSP LatinIME Keyboard with enhancements! - NO ROOT REQUIRED

Would you like to see this app on the Play store for quick updates?

  • Yes

    Votes: 102 78.5%
  • No

    Votes: 11 8.5%
  • I don't care :P

    Votes: 17 13.1%

  • Total voters
    130
Search This thread

hardslog

Inactive Recognized Contributor
Nov 17, 2009
1,724
2,102
Hey all,

Somehow I got myself into a phone that has no bootloader unlock but I like and wanted to keep as many AOSP apps as possible. I really like the AOSP keyboard but didn't like the lack of features compared to some of the custom rom out there. What's a guy to do? Well this is an open-source community so MAKE ONE!

INTRODUCING EnhancedIME. BUILT COMPLETELY FROM STOCK AOSP SOURCES WITH A FEW ENHANCEMENTS

Enhancements include:
  • Numbers row at top
  • long press symbols on all letters
  • SWIPE (only if rooted with specific gapps installed)
  • NO ROOT NEEDED - INSTALL AS A REGULAR APP
  • OPEN-SOURCE!
  • Extra themes

Again all that is needed is to download the app and install as any regular app. It will overwrite the AOSP keyboard if you have that preinstalled (custom rom ppl, I'm looking at you :D ) as it shares the same package name and signatures.

DOWNLOAD LINK #1
MIRROR #1

CHANGELOG:
Aug 30 2016
  • Changed the Name of the app (not the package name)
  • Some tweaks to the hardslog themes to make them look more "material"
  • Merged in upstream AOSP changes
July 4 2016
  • Added a new theme - Blackout
  • New emoticon fun on numbers row
  • Unified tablet and phone layout
May 13 2016
  • Added a new theme - Hardslog Dark!
  • Few layout fixes (the C on the QWERTZ layout and numbers row in landscape on small tablets)
  • ¯_(ツ)_/¯
May 02 2016
  • Added Numbers row to QWERTZ, AZERTY and ARABIC
  • fixed alignment of numbers for Arabic Keyboard
  • Allow keys to popup on tablets
  • Symbols and more keys to QWERTZ, as well as some for AZERTY
April 26 2016
  • Initial Release


XDA:DevDB Information
EnhancedIME - AOSP LatinIME Keyboard with enhancements!, App for all devices (see above for details)

Contributors
hardslog, lj50036
Source Code: https://github.com/Hardslog/platform_packages_inputmethods_EnhancedIME


Version Information
Status: Stable
Current Stable Version: V1.0.4
Stable Release Date: 2016-08-30

Created 2016-04-26
Last Updated 2016-08-30
 

Attachments

  • EnhancedIME1.png
    EnhancedIME1.png
    190.5 KB · Views: 33,892
  • EnhancedIME2.png
    EnhancedIME2.png
    102.8 KB · Views: 33,443
  • ic_launcher_keyboard.png
    ic_launcher_keyboard.png
    11.6 KB · Views: 33,004

hardslog

Inactive Recognized Contributor
Nov 17, 2009
1,724
2,102
Build instructions


1) This application has been built in an AOSP tree. This means you need to get the AOSP sources and know how to compile in an AOSP tree. All instructions for this can be found HERE.
I cannot confirm because I have never tried it, but the app will likely build in any AOSP based rom tree (CyanogenMod, Omnirom, Raindrop etc.)

2) Navigate to the root of your source and Delete the LatinIME folder from here: /packages/inputmethods/

3) Open up a terminal and navigate to the same directory
Code:
cd ~/packages/inputmethods

4) Clone the enhanced IME
Code:
git clone https://github.com/Hardslog/platform_packages_inputmethods_EnhancedIME

5) Rename the folder just downloaded to: EnhancedIME

6) Go back to the root of the build directory

7) input the commands to build it:
Code:
. build/envsetup.sh
lunch (I choose #2 here - aosp_arm64)
make EnhancedIME

8) When finished the app will be in: /buid_root/out/target/product/generic_64/data/EnhancedIME/ where build_root is the directory where you have your AOSP tree


Of course an easier way to sync the keyboard would be to add a local_manifest.xml for the proper paths to create EnhancedIME in your tree!
 
Last edited:

lj50036

Senior Member
Feb 14, 2013
3,321
3,294
40
FUXDA
The more you know !!!!!!!

INSTALLATION INSTRUCTIONS

From a PC with adb

First-time installers, the apk has to be in the current directory.

Code:
adb install EnhancedIME_1.0.1.apk

If you have installed this app previously, then we need to -r argument.

Code:
adb install -r EnhancedIME_1.0.1.apk

------------------------------------------------------------------------------------------------------------------------------------------

Pushing to device with adb & installing with the OS's installer.

Code:
adb push EnhancedIME_1.0.1.apk /sdcard/Download/

Nav. to the ​Internal Storage, Download directory, make sure 'Unknown sources' is checked in settings, under security.

Also, after the apk is installed, don't forget to delete the apk from the Download directory.. :p

------------------------------------------------------------------------------------------------------------------------------------------
 
Last edited:

d.cortez

Senior Member
Dec 30, 2005
3,352
600
north texas
keyboard installed just fine on my Note5 w/MM 6.0.1, however, gesture typing isn't working on my device... do i need a specific library file, say from the Google Keyboard? thanks.
 

hardslog

Inactive Recognized Contributor
Nov 17, 2009
1,724
2,102
keyboard installed just fine on my Note5 w/MM 6.0.1, however, gesture typing isn't working on my device... do i need a specific library file, say from the Google Keyboard? thanks.

Gesture typing will not work unless you are rooted and have libjni_latinimegoogle.so in /system/lib

Many gapps packages will install that lib file.

For unrooted unfortunately all you can do for now is install the google keyboard along side it and when you want the gesture typing press the world icon on the bottom left of the keyboard to toggle google keyboard for the gestures, and then toggle it back to go back to aosp.

the swiping functionality is proprietary so it doesn't come included in the AOSP keyboard.
 
  • Like
Reactions: lj50036

d.cortez

Senior Member
Dec 30, 2005
3,352
600
north texas
Gesture typing will not work unless you are rooted and have libjni_latinimegoogle.so in /system/lib

Many gapps packages will install that lib file.

For unrooted unfortunately all you can do for now is install the google keyboard along side it and when you want the gesture typing press the world icon on the bottom left of the keyboard to toggle google keyboard for the gestures, and then toggle it back to go back to aosp.

the swiping functionality is proprietary so it doesn't come included in the AOSP keyboard.
i'm rooted for sure... is there a MM version of libjni_latinimegoogle.so that i need to install for the AOSP keyboard? or can i grab one from a version I used on LP 5.1.1? thanks for the quick reply.
 

hardslog

Inactive Recognized Contributor
Nov 17, 2009
1,724
2,102
i'm rooted for sure... is there a MM version of libjni_latinimegoogle.so that i need to install for the AOSP keyboard? or can i grab one from a version I used on LP 5.1.1? thanks for the quick reply.

Not sure if the lp 5.1.1 would work. It won't hurt anything if you try it. Otherwise you can snatch the lib from an opengapps.org package. I know the nano has it inside of it. Of course I can just post the lib files too :). Just take the one for your architecture out of the zip file.
 

Attachments

  • Swipe_libs.zip
    656.2 KB · Views: 540

d.cortez

Senior Member
Dec 30, 2005
3,352
600
north texas
Not sure if the lp 5.1.1 would work. It won't hurt anything if you try it. Otherwise you can snatch the lib from an opengapps.org package. I know the nano has it inside of it. Of course I can just post the lib files too :). Just take the one for your architecture out of the zip file.
thanks for posting the library file. i had to copy the file to /system/lib64 (vs /system/lib) to get it to work. this is my favorite keyboard to use... very grateful you're sharing your work the community.:D
 

PacoRabanne2k

Senior Member
Dec 23, 2011
98
21
Thanks for this modded keyboard!
I eagerly need a light and fast keyboard to use on my old but reliable Galaxy S2, now powered by AICP ROM. This ROM uses AOSP keyboard by default, but miss easy symbols access.
Your mod is what I need.
In the past I loved TouchPal keyboard, but now is too heavy, so very slow to use. Unluckily also Swiftkey is slow. Other tested by me are nice and light, but complicated to configure (for example Multiling O), or miss something other important for me.
Only a little thing, if it's possible: could you increase size of symbols? On small display they are hard to see.

Thanks anyway!!!
 

hardslog

Inactive Recognized Contributor
Nov 17, 2009
1,724
2,102
Thanks for this modded keyboard!
I eagerly need a light and fast keyboard to use on my old but reliable Galaxy S2, now powered by AICP ROM. This ROM uses AOSP keyboard by default, but miss easy symbols access.
Your mod is what I need.
In the past I loved TouchPal keyboard, but now is too heavy, so very slow to use. Unluckily also Swiftkey is slow. Other tested by me are nice and light, but complicated to configure (for example Multiling O), or miss something other important for me.
Only a little thing, if it's possible: could you increase size of symbols? On small display they are hard to see.

Thanks anyway!!!

Sorry not sure what you mean by the symbols. Do you mean the small symbol icons that are on the keyboard layout itself (ie secondary/long press symbols) or something else?
 

PacoRabanne2k

Senior Member
Dec 23, 2011
98
21
Sorry not sure what you mean by the symbols. Do you mean the small symbol icons that are on the keyboard layout itself (ie secondary/long press symbols) or something else?
Yes, exactly the small symbol incons present on each key and available after long press.
Imagine this snapshot on a 4.3" display, is more or less 1/4 of what you see below:
xNhtDUb.png


So bigger symbols (and better with a different and bright color) should be readable.

THX!

P.S. but is it possible to make themes for this kind of keyboard?
 

hardslog

Inactive Recognized Contributor
Nov 17, 2009
1,724
2,102
Yes, exactly the small symbol incons present on each key and available after long press.
Imagine this snapshot on a 4.3" display, is more or less 1/4 of what you see below:


So bigger symbols (and better with a different and bright color) should be readable.

THX!

P.S. but is it possible to make themes for this kind of keyboard?

Bigger symbols will be tough, as I don't really want to be messing too much with that aspect of it. If you make them much bigger it might get confusing between what are the letters and what are the symbols.

As for themes it should be possible as there are options for themes already in it. It should not be too hard to create new ones. Again everything is on my github so people can clone and fork and pull request as much as they like :D
 
  • Like
Reactions: lj50036

PacoRabanne2k

Senior Member
Dec 23, 2011
98
21
Bigger symbols will be tough, as I don't really want to be messing too much with that aspect of it. If you make them much bigger it might get confusing between what are the letters and what are the symbols.
What I was asking only a little bigger. If you try to watch my snapshot on a 480x800 pixels display, large 4.3", symbols a too small and very difficult to recognize.
Maybe because not too blilliant...
OK, forget about...
As for themes it should be possible as there are options for themes already in it. It should not be too hard to create new ones. Again everything is on my github so people can clone and fork and pull request as much as they like :D
OK, I must firstly create on my PC the environment to develope Android apps, then Ican try to do it by myself.
Nice idea!
Thanks again!
 

hardslog

Inactive Recognized Contributor
Nov 17, 2009
1,724
2,102

Top Liked Posts

  • There are no posts matching your filters.
  • 60
    Hey all,

    Somehow I got myself into a phone that has no bootloader unlock but I like and wanted to keep as many AOSP apps as possible. I really like the AOSP keyboard but didn't like the lack of features compared to some of the custom rom out there. What's a guy to do? Well this is an open-source community so MAKE ONE!

    INTRODUCING EnhancedIME. BUILT COMPLETELY FROM STOCK AOSP SOURCES WITH A FEW ENHANCEMENTS

    Enhancements include:
    • Numbers row at top
    • long press symbols on all letters
    • SWIPE (only if rooted with specific gapps installed)
    • NO ROOT NEEDED - INSTALL AS A REGULAR APP
    • OPEN-SOURCE!
    • Extra themes

    Again all that is needed is to download the app and install as any regular app. It will overwrite the AOSP keyboard if you have that preinstalled (custom rom ppl, I'm looking at you :D ) as it shares the same package name and signatures.

    DOWNLOAD LINK #1
    MIRROR #1

    CHANGELOG:
    Aug 30 2016
    • Changed the Name of the app (not the package name)
    • Some tweaks to the hardslog themes to make them look more "material"
    • Merged in upstream AOSP changes
    July 4 2016
    • Added a new theme - Blackout
    • New emoticon fun on numbers row
    • Unified tablet and phone layout
    May 13 2016
    • Added a new theme - Hardslog Dark!
    • Few layout fixes (the C on the QWERTZ layout and numbers row in landscape on small tablets)
    • ¯_(ツ)_/¯
    May 02 2016
    • Added Numbers row to QWERTZ, AZERTY and ARABIC
    • fixed alignment of numbers for Arabic Keyboard
    • Allow keys to popup on tablets
    • Symbols and more keys to QWERTZ, as well as some for AZERTY
    April 26 2016
    • Initial Release


    XDA:DevDB Information
    EnhancedIME - AOSP LatinIME Keyboard with enhancements!, App for all devices (see above for details)

    Contributors
    hardslog, lj50036
    Source Code: https://github.com/Hardslog/platform_packages_inputmethods_EnhancedIME


    Version Information
    Status: Stable
    Current Stable Version: V1.0.4
    Stable Release Date: 2016-08-30

    Created 2016-04-26
    Last Updated 2016-08-30
    8
    Build instructions


    1) This application has been built in an AOSP tree. This means you need to get the AOSP sources and know how to compile in an AOSP tree. All instructions for this can be found HERE.
    I cannot confirm because I have never tried it, but the app will likely build in any AOSP based rom tree (CyanogenMod, Omnirom, Raindrop etc.)

    2) Navigate to the root of your source and Delete the LatinIME folder from here: /packages/inputmethods/

    3) Open up a terminal and navigate to the same directory
    Code:
    cd ~/packages/inputmethods

    4) Clone the enhanced IME
    Code:
    git clone https://github.com/Hardslog/platform_packages_inputmethods_EnhancedIME

    5) Rename the folder just downloaded to: EnhancedIME

    6) Go back to the root of the build directory

    7) input the commands to build it:
    Code:
    . build/envsetup.sh
    lunch (I choose #2 here - aosp_arm64)
    make EnhancedIME

    8) When finished the app will be in: /buid_root/out/target/product/generic_64/data/EnhancedIME/ where build_root is the directory where you have your AOSP tree


    Of course an easier way to sync the keyboard would be to add a local_manifest.xml for the proper paths to create EnhancedIME in your tree!
    6
    Update - Version 1.0.1!

    Bug: Number row only visible in QWERTY, not in QWERTZ.

    Please see downloads section for new version.

    Changelog
    • Added Numbers row to QWERTZ, AZERTY and ARABIC
    • fixed alignment of numbers for Arabic Keyboard
    • Allow keys to popup on tablets
    • Symbols and more keys to QWERTZ, as well as some for AZERTY
    6
    Update again

    Update!

    Changelog for this release:

    1) Fix the display issue when keyboard is on numbers only input (at least I think I did!)
    2) Increase the keys slightly and decrease the number keys slightly. I find this more comfortable
    3) Make tablet layout more in line with phone layout
    4) Moved the fun emoticons to the shifted symbols keyboard. This makes the regular keyboard number keys look better
    5) Added proper additional keys like ½ to the numbers row
    6) Added two new keys to fun emoticons, allowed shruggie to display like the rest of the interwebs and added more emoticon fun!

    Download is here: LINK
    5
    Update - Version 1.0.3!

    New Blackout theme in addition to the old ones
    Added new emoticon fun to the numbers rows
    Unified tablet and phone layout

    See more details in the OP