Question

The code I'm using below suppose to switch system active input / writing language to French , but It doesn't ( The same thing for any of the installed languages ).

I'm testing it on Nokia E7, Symbian Anna.

I'm using Symiban SDK S^3.

I have French language installed in my phone.

After using ActivateLanguageL(), I test to see what active language via CurrentLanguage(), and it returns me French, but in fact that doesn't happen.

 CPtiEngine* eng = CPtiEngine::NewL( ETrue );

 CleanupStack::PushL( eng );

 if ( eng->NumberOfLanguages() )

     {

         RArray<TInt> languages;

         eng->GetAvailableLanguagesL( languages );

         // see if French language is there in list of available input languages and if "yes", activate finnish input. 

         for(TInt i=0;i<languages.Count();i++)
            {
                 if(languages[i] ==ELangFrench)
                    {
                        eng->ActivateLanguageL(ELangFrench,eng->InputMode());

                        MPtiLanguage* x = eng->CurrentLanguage();

                        CEikonEnv::InfoWinL(x->LocalizedName(), _L(""));


                        eng->CloseCurrentLanguageL();

                     }

            }   

           languages.Close();

      }



CleanupStack::Pop(eng);

delete eng;

Many thanks in advance.

Was it helpful?

Solution 2

I contacted Nokia Technical Support, and they stated that to change system input / writing language we need to use an Internal APIs that requires partnering with Nokia, which is only available for companies not for individual developers.

OTHER TIPS

I wonder what would happen if you reboot the device? When you change language via phone's system tools then phone reboots itsself after language change

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top