从UserDictionary中删除单词?

bla*_*lah 5 android autocomplete android-softkeyboard android-userdictionary

使用UserDictionary.WordsWRITE_USER_DICTIONARY权限,可以单词添加到用户词典,但我没有看到任何删除单词的方法.

在这种情况下的动机是添加自动完成建议应用程序是本地的,并在退出应用程序时删除它们,但我也可以设想像应用程序一样自动删除意外添加的拼写错误.

有没有办法做到这一点?

ozb*_*bek 6

一种可能的解决方案是使用删除确切的单词ContentResolver.delete().例:

private int deleteWord(String word) {
    if (TextUtils.isEmpty(word)) {
        return -1;
    }

    return getContentResolver().delete(UserDictionary.Words.CONTENT_URI,
            UserDictionary.Words.WORD + "=?", new String[] { word });
}
Run Code Online (Sandbox Code Playgroud)

当然还需要

<uses-permission android:name="android.permission.WRITE_USER_DICTIONARY" />
Run Code Online (Sandbox Code Playgroud)

在清单中定义.

希望这可以帮助.