On Android there is a single UserDictionary that works across all keyboards, and any app (with the appropriate permissions) can query, add and remove words. Here is some simple code to add a word to the dictionary (via XE8):
uses
Androidapi.JNI.Provider, Androidapi.Helpers, Androidapi.JNI.JavaTypes;
procedure AddUserWord(const AWord: string);
begin
// Need WRITE_USER_DICTIONARY permission
TJUserDictionary_Words.JavaClass.addWord(
SharedActivityContext, // Context
StringToJString(AWord),// Word to add
255, // Frequency: 1- 255
nil, // optional shortcut
SharedActivityContext.getResources.getConfiguration.locale
);
end;
If you also want to read the dictionary then you need to have the READ_USER_DICTIONARY permission. Check out the documentation for more information on the UserDictionary and it’s Words list.