Jump to content


Acer Liquid Dictionary - Autocomplete

- - - - -

28 replies to this topic

#1
JackTheMan18

JackTheMan18

    Newbie

  • Members
  • Pip
  • 27 posts
  • Devices:HTC Magic/Acer Liquid A1/N1
Has anyone (especially those who have used other Android phones before) noticed that the Liquid doesn't do autocomplete?

Is this because Acer forgot to ship it with a dictionary?

Can someone who has root check if there is a dictionary?


#2
00sully

00sully

    Newbie

  • Members
  • Pip
  • 17 posts
  • Devices:Acer Liquid
yep I can confirm this - thought it was a bug in mine but Acer obviously left out a decent dictionary - it actually does autocomplete a VERY SMALL portion of words - like you type "he" and it will sugges "he'll" but not "hello" there are a limited amount i've come across - maybe 3 in total!!! adding user words works so the keyboard does actually work.

we can hope acer fix this in a future update. in the meantime I recomment using the HTC_IME keyboard released over at xda developers!! its a little buggy on the liquid - See post below on screen resolution problem :/ but its worth it ;)

Edited by 00sully, 17 December 2009 - 03:54 PM.


#3
goa200

goa200

    Diehard

  • Members
  • PipPipPipPip
  • 336 posts

View Post00sully, on Dec 17 2009, 16:53, said:

yep I can confirm this - thought it was a bug in mine but Acer obviously left out a decent dictionary - it actually does autocomplete a VERY SMALL portion of words - like you type "he" and it will sugges "he'll" but not "hello" there are a limited amount i've come across - maybe 3 in total!!! adding user words works so the keyboard does actually work.

we can hope acer fix this in a future update. in the meantime I recomment using the HTC_IME keyboard released over at xda developers!! its a little buggy on the liquid - See post below on screen resolution problem :/ but its worth it ;)

link??
and what screenshots?


#4
JackTheMan18

JackTheMan18

    Newbie

  • Members
  • Pip
  • 27 posts
  • Devices:HTC Magic/Acer Liquid A1/N1

View Post00sully, on Dec 17 2009, 10:53, said:

yep I can confirm this - thought it was a bug in mine but Acer obviously left out a decent dictionary - it actually does autocomplete a VERY SMALL portion of words - like you type "he" and it will sugges "he'll" but not "hello" there are a limited amount i've come across - maybe 3 in total!!! adding user words works so the keyboard does actually work.

we can hope acer fix this in a future update. in the meantime I recomment using the HTC_IME keyboard released over at xda developers!! its a little buggy on the liquid - See post below on screen resolution problem :/ but its worth it ;)

Paul: Can you please notify Acer of this bug? (and others, I'm sure!)
I don't even know how/where to report it to them!
No website, no support, no feedback, no....


#5
00sully

00sully

    Newbie

  • Members
  • Pip
  • 17 posts
  • Devices:Acer Liquid
I assume you mean link for the HTC_IME??

http://forum.xda-dev...ad.php?t=567294

oh and it tends to truncate the screen in portrait mode after you've used the HTC keyboard to type with -  simple to fix tho a quick press of search button then back button and you are in business!

see here for details: http://android.modac...reen-truncated/

the keyboard does work - you need to download ASTRO file manager or some such to install it tho - load it to SD card then use astro to insall it ;)

the android keyboards autocomplete is useless - its not really a bug tho just a missing dictionary ;)

Edited by 00sully, 17 December 2009 - 06:31 PM.


#6
three_pineapples

three_pineapples

    Enthusiast

  • Members
  • PipPipPip
  • 214 posts
  • Devices:Acer Liquid, Nexus One
shouldn't there be some way to add a dictionary? I mean we can add words ourselves, but i don't feel like typing the whole dictionary. There has to be a way to mass add words surely...

Posted Image

#7
dsjr2006

dsjr2006

    Newbie

  • Members
  • Pip
  • 12 posts
  • Location:Los Angeles
  • Devices:Samsung Captivate SGH-I897
  • Twitter:@dwinsmith
There has got to be a way to add a dictionary.... anyone?


#8
setomoto

setomoto

    Newbie

  • Members
  • Pip
  • 8 posts
  • Devices:Acer Liquid
yeah it's pretty dumb that the autocomplete function just keeps advertising the OS itself when i type "and" and then it fixes it to spell out "Android"


#9
daniele8dj

daniele8dj

    Newbie

  • Members
  • Pip
  • 1 posts
  • Devices:Acer Liquid

View Postsetomoto, on Dec 25 2009, 22:21, said:

yeah it's pretty dumb that the autocomplete function just keeps advertising the OS itself when i type "and" and then it fixes it to spell out "Android"

i fixed that for the language of my country, f u can provide me an latinIME.apk from a magic or hero or other android device with a fully working dictionary i can fix it, it's  pretty simple, but it needs root acces to pull/push apk in /system folder..


#10
lucian785

lucian785

    Regular

  • Members
  • PipPip
  • 56 posts
  • Devices:Liquid by Acer
Is there any other keyboard like the Htc one?

Edited by lucian785, 01 January 2010 - 11:00 AM.


#11
saquib

saquib

    Regular

  • MoDaCo Ad Free
  • PipPip
  • 104 posts
Using betterkeyboard, works great. Search in the market.

Typed this message using it. Auto corrects and dictionary seems complete.  

View Postlucian785, on Jan 1 2010, 10:49, said:

Is there any other keyboard like the Htc one?


#12
greves

greves

    Newbie

  • Members
  • Pip
  • 13 posts
  • Devices:Acer Liquid A1
Hey this problem has been bugging me for a bit too, and I was looking around the android dev docs to see what I could find. Should be pretty straightforward for any programmers on here to write up a little app as android provides a method to add words to the dictionary:

http://developer.and...nary.Words.html

I would even be willing to make a list if necessary from something like this: http://en.wiktionary...y_lists#English

Then I could just note the frequency of each one which I notice is a parameter for the UserDictionary.Words.addword() function. Let me know if you're interested in doing this... I'd be willing to help but not really that experienced a programmer (I have the Android SDK and stuff installed already though).

greves

Edited by greves, 05 January 2010 - 05:50 AM.


#13
three_pineapples

three_pineapples

    Enthusiast

  • Members
  • PipPipPip
  • 214 posts
  • Devices:Acer Liquid, Nexus One
I tried making a program to add a word to the dictionary...it failed :) It just force closes.

If anyone has a suggestion as to what i'm doing wrong feel free to let me know. I'm competent in coding, i just don't have the time to spend 5 hours figuring out how to program for android when someone else could tell me in 5 minutes! So if someone solves the problem, i've already found a list of dictionary words so it would just be a matter of reading in the list and looping through the call to add the word to the dictionary!

package com.example.HelloAndroid;

import android.app.Activity;
import android.os.Bundle;
import android.provider.UserDictionary;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;

public class HelloAndroid extends Activity implements OnClickListener {
   /** Called when the activity is first created. */
   @Override
   
	protected void onCreate(Bundle savedInstanceState) {

	   super.onCreate(savedInstanceState); 
	   Button button = new Button(this);
		button.setText("Click Me");
		button.setOnClickListener(this);
		//setContentView(button);
	   //TextView tv = new TextView(this);
	   //tv.setText("Hello, Android");
	   setContentView(button);
	}
	
	// Implement the OnClickListener callback
	public void onClick(View v) {
	  // do something when the button is clicked
	
	   //UserDictionary.Words.addWord(getApplicationContext(), "hello", 1, UserDictionary.Words.LOCALE_TYPE_CURRENT);
		UserDictionary.Words.addWord(this, "what", 3, UserDictionary.Words.LOCALE_TYPE_CURRENT);
   
   }
}

Posted Image

#14
dsjr2006

dsjr2006

    Newbie

  • Members
  • Pip
  • 12 posts
  • Location:Los Angeles
  • Devices:Samsung Captivate SGH-I897
  • Twitter:@dwinsmith
Is it not easier to just get the dictionary from an Android device that has it??


#15
three_pineapples

three_pineapples

    Enthusiast

  • Members
  • PipPipPip
  • 214 posts
  • Devices:Acer Liquid, Nexus One
I figured out what i did wrong. I failed to set the correct permissions in the manifest file!
So when i find time, i'll try and write an app :)

Posted Image

#16
greves

greves

    Newbie

  • Members
  • Pip
  • 13 posts
  • Devices:Acer Liquid A1
So I just finished writing my little app with some help from three pineapples code.

This app is just a button that you press and it will fill your user dictionary with the 10,000 words found in those word lists I posted above, sorted by frequency. It takes a couple of minutes to run and there is no indication that it's doing anything but just give it a bit and when it turns gray again you can check your user dictionary to make sure it worked and then uninstall/delete the app as it serves no other purpose.

To use it just unzip / extract the .apk, then plug in your phone to the computer via USB, copy the file to your sdcard, and install it. It requests some access to your phone or whatever but there's nothing in the code as you can plainly see:

I'll try to add a counter / progress bar and a delete function if you want to clear your user dictionary at some point, but no guarantees.

Anyone can feel free to steal this code / fix it up / put it up on the market for free :)

Thanks,
greves

package com.greves.userdictionarywordlist;

import android.app.Activity;
import android.os.Bundle;
import android.provider.UserDictionary;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class UserDictionaryWordlist extends Activity implements OnClickListener {
	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		Button button = new Button(this);
		button.setText("Click me");
		button.setOnClickListener(this);
		setContentView(button);
	}
	
	public void onClick(View v) {
		try {
			BufferedReader wordlist = new BufferedReader(new InputStreamReader(getAssets().open("wordlist.txt")));
			String word = null;
			// start with the most common words freq = 255
			int freq = 255;
			int freqCount = 0;
			// go down 1 level of frequency every 40 words = 10,000 words in the list
			int freqDivision = 40;
			while ((word = wordlist.readLine()) != null) {
				UserDictionary.Words.addWord(this, word, freq, UserDictionary.Words.LOCALE_TYPE_CURRENT);
				freqCount++;
				if (freqCount == freqDivision) {
					freq--;
					freqCount = 0;
				}
			}
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

Attached Files



#17
pete.major

pete.major

    Regular

  • MoDaCo Ad Free
  • PipPip
  • 129 posts
  • Location:London, UK
  • Devices:HTC Desire
Very interesting!

What's the purpose of the "frequency" value, do you know?

---------------------
Currently:
HTC Desire
Previously:
Acer A1 Liquid,
iPhone 3G, HTC TyTN II,
HTC TyTN, XDA Mini S,
XDA IIi, SPV C500,
SPV E200, SPV E100
---------------------

#18
three_pineapples

three_pineapples

    Enthusiast

  • Members
  • PipPipPip
  • 214 posts
  • Devices:Acer Liquid, Nexus One
frequency is how often the word is used in normal text/speech.

I think you should rewrite your code to use this: http://www.bckelk.uk...words/wlist.zip
its a 60,000 word list with frequency values :)
The licence for the wordlist is also open source!

Posted Image

#19
tomdotcom

tomdotcom

    Newbie

  • Members
  • Pip
  • 37 posts
  • Location:Hong Kong
  • Devices:Acer Liquid A1
installing now... absolute life saver and a bit funny to see how "Acer" is not really trying to save their reputation by offering low quality products but somehow "forgetting" to add words into the dictionary

Many thanks for your hardwork!


#20
greves

greves

    Newbie

  • Members
  • Pip
  • 13 posts
  • Devices:Acer Liquid A1
Hopefully I'll get some more functions working this weekend, but I'll swap in that other dictionary tonight it looks a lot better. I'm not sure how to do the frequency index though since it is only a scale of 0-16 while the user dictionary does 1-255, which is much finer detail. Any suggestions? I'm looking into this one: http://www.kilgarrif...bnc-readme.html

As a side note, I won't be able to add a remove function as far as I can tell, the only way to remove entries is to remove everything in your user dictionary via: Menu -> Applications -> Manage applications -> com.android.provider.UserDictionary -> Clear data. This will clear everything, though.





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users