Feature: Changing the language in your app (localization)

Feature: Changing the language in your app (localization)

If your team could benefit from incorporating different languages into your applications, AppSheet makes this addition easy and flexible depending on your needs. Please note that at this time language changes will affect your application only and not your AppSheet editor.

First, a bit of how language translation takes place. We rely on whatโ€™s called localization, or locale, to translate your data. For those unfamiliar with localization, it is the adaptation of a product to meet the needs of a particular language or place. This can include a communicated language, numerical display, date, times and more. There are two different approaches to managing how language is portrayed in your apps. Weโ€™ll review both below.

For those that work with an audience that uses a single, non-english language, you can change your applicationโ€™s buttons and navigation by working with our โ€œLocalizeโ€ feature in the UX portion of your editor. To find this, open your appโ€™s editor, click on โ€œUXโ€ tab on the left. This will open up your UX navigation menu, โ€œlocalizeโ€ is the fifth tab. From here you can type in the appropriate terms in the language of your choosing.

If you are in need of an app that can address the needs of multiple languages, youโ€™ll want to dive a bit deeper into expressions and take advantage of USERLOCALE() This is a more advanced feature set and may take a bit of practice to learn. If you find this to be challenging, please donโ€™t hesitate to respond to this thread with a question or post your own question in the community for help.

Want to see localization in action? Hereโ€™s a sample app in Spanish to demonstrate this feature. You can also visit our portfolio portal to view other apps in a variety of languages.

8 25 8,168
  • UX
25 REPLIES 25

Useful post! Iโ€™m a bit concerned, however, about the use of USERLOCALE(). As an American who lives in Japan, I find it quite irritating when airlines etc. force me to read Japanese versions of their web pages merely because I happen to be located in Japan. Using USERLOCALE() to determine the display language might lead to similar problems. However, I think their may be another way to handle this:

Since the Localize feature allows expressions, it should be possible for the user to type his or own preferences (including display language) into the app and then for Localize to chose the proper display language based on that user designation.

I did it like that:

  • In the UserSettings I have a column [Language]
  • This is an ENUM with โ€œEnglishโ€ and โ€œDeutschโ€
  • I set an initial value =IF(CONTAINS(USERLOCALE() , "en") , "English" , "Deutsch")
  • Result: The App is initially set to the USERLOCALE() but the user can change this

TEXT() has been improved. Itโ€™s now possible to get English month and day names from dates using it:

However, this doesnโ€™t seem to work with other languages.

This page says that AppSheet will read the locale from the Google sheet but the weekdays still come out in English when I test it:

DDDD long name of the day of the week (Wednesday)

Am I misunderstanding something or do the new TEXT() functions only work in English?

Iโ€™m prompted to post here but the following discussion

I suspect that is the case.

Localization is very very useful, but a few words are missing or just i didnt find itโ€ฆ
โ€˜Release to sync.โ€™
โ€˜Pull to sync.โ€™
โ€˜Last updated โ€ฆ ago.โ€™
โ€˜Termsโ€™
โ€˜Privacyโ€™
โ€˜Licensesโ€™
โ€˜Versionโ€™

3X_3_5_35f68f9dfa9b34a0b47869ca4488cf1e9ff6f6e7.png

3X_1_8_18945e49f578b80d0e3583f1a209695de8b2be2b.png

Hi @Peter_Jambrik you are absolutely right. @Kirk_Masden mentioned this also.

Also, thereโ€™s a million error messages hard coded in appsheet that you canโ€™t affect yetโ€ฆ

Error? No, no error in my app never

Bahaha!

I'm not sure if this is the right place to post but I'd like to ask about localization of the editing interface.  I've looked but this doesn't seem to have been addressed anywhere.  I can set my Google account to show Japanese as my preferred language in order to check to see what my Japanese users are likely to see.  When I do this, all of my menus in Sheets, Google search, Documents, etc. change to Japanese.  AppSheet, however, remains unchanged.  Anyone know anything about this?  Has it been requested to people be able to set their app editing interface to another language?  If AppSheet is supposed to be easy for people all around the world, it shouldn't assume that everyone reads English without difficulty.

@jcadence I think this is the weekend for you but I hope that at some point you or someone else at AppSheet will be able to respond to this question.  Thanks!

Hi @Kirk_Masden I see a number of responses below, including one from @Koichi_Tsuji that it may be an iOS issue rather than and AppSheet issue. Have you been able to get an answer to your question or do you need additional information? 

Thanks for your response.  Primarily with the help of @dbaum , it has become clear to me that the AppSheet app does not respond to the language chosen by the user as the device's interface.  This is true of iOS, Android, and web browsers.  We, as creators, have significant potential to localize our apps but the AppSheet platform itself doesn't localize -- it's always in English regardless of who uses it.  That's why "Done" comes up on iOS, even when the app is in Japanese ("Done" is part of iOS that is not localized by the AppSheet app) .  So, in this sense, AppSheet is different from other Google apps, such as Chrome, etc. which do change the language of menus and messages in accord with the OS language selected by the user.  See the following for post for a more detailed explanation:
https://www.googlecloudcommunity.com/gc/Tips-Tricks/Feature-Changing-the-language-in-your-app-locali...

Does AppSheet have any plans to add such localization to the basic AppSheet interface (not just what we build inside it)?  Isn't it a bit ironic that AppSheet would see the value in allowing us to localize without localizing the basic platform (that is, the AppSheet app and/or the editing interface)?

One issue I just noticed:  Here's how I've set "Save" to be "ไฟๅญ˜" in Japanese:
Screenshot 2023-06-03 at 16.56.37.png

It works nicely:

Screenshot 2023-06-03 at 17.00.26.png

However, "Done" (which comes up on my iPhone when editing), doesn't work in the same why.  Here's the expression:

Screenshot 2023-06-03 at 16.54.34.png

And here's what I see on my iPhone when I try to edit a file:

IMG_2896 2.PNG

โ€ƒThe language interface on my phone is also in Japanese but that doesn't seem to matter.  @Koichi_Tsuji @takuya_miyai , I wonder if this has been an issue for your Japanese users.  Granted, most Japanese probably understand "Done" but I think they would be more comfortable with "OK."

P.S. This "Done" expression only seems to come up when editing a record on an iPhone -- my Android device is just like my browser -- nothing other than "Save" (or "ไฟๅญ˜")

That is not AppSheet issue, but iOS issue, as far as I know.

The thing is Japenese need to learn more about English...... to get more familiar with.....

For me, there is not difficulties to stay in English, but majorities of us do feel the English is challenging.

Thanks @Koichi_Tsuji !  I think it must be an iOS issue but I'm a little confused because my iPhone is set to Japanese (for testing purposes).  So, I'm surprised that the Japanese version of iOS would use "Done."

If you didn't already, confirm what appears for "Done" when you're typing in forms in other apps--even just in a webform (e.g., www.google.com).

Thanks!  I see "Done" only on iOS.  This appears when I tap "Edit" on an app I use regularly and begin to edit data in a record.  Here's how it works on iOS:

Screenshot 2023-06-04 at 16.09.08.png

The screenshot on the left shows how "Done" comes up when I tap on a space to begin editing (regardless of whether or not I have changed anything).  Then, after I tap "Done" (I guess to meet some requirement of the iOS interface), I can tap on "Save" and finish up.

On Android and on a computer browser I never see a "Done" button, just "Save":

Screenshot_20230604-155950.png

In English, it's OK because "Done" doesn't seem out of place with the English interface.  In Japanese, however, I can't figure out how to change "Done" to something that would be more appropriate so "Done" just stands out like a sore thumb, so to speak.

โ€ƒ

Yes--understood. I meant that you should confirm the iOS behavior using apps other than AppSheet. As @Koichi_Tsuji noted, the proximate source of the "Done" label that you're seeing is iOS--not AppSheet. If "Done" appears for all iOS apps when you're typing in an input box despite having set the iOS language to Japanese, then likely there's nothing AppSheet can do. On the other hand, if "Done" appears instead in Japanese in non-AppSheet apps then maybe there's some parameter available that AppSheet has overlooked in its code that drives iOS interactions.

Thanks for your response.  My take is slightly different.  I don't think it's a matter of the issue being iOS or AppSheet.  Rather, I think it must be something about how AppSheet is interacting with the iOS platform.  Clearly, there's something about the iOS platform that is different from both Android and web browsers but I haven't been able to replicate the issue in any other iOS Google apps (Slides, Sheets, etc.) or other popular iOS apps such as LINE or Facebook, etc.  So, as I say, I think it must have to something to do with how AppSheet is interacting with iOS.

A related question is, in AppSheet, what is "Done" in the localization settings anyway?  AppSheet allows us to localize "Done" and other words, but as far as I can see, we don't have access to clear explanations about when and how each of the terms we might localize can come up in our apps.  Of course, in some cases this is obvious.  But "Done" is one of several cases where I'm not sure exactly what I'm localizing.  If my localization of "Done" doesn't apply to this instance, what is it supposed to apply to?  I hope we can agree that this lack of a clear explanation is an AppSheet issue.

Finally, one note about the part of the iOS interface that displays "Done":
Screenshot 2023-06-05 at 10.28.45.png

Please look at the up and down arrows to the left of "Done."  This is a convenient tool for moving the editing cursor between fields.  Here AppSheet seems to be taking advantage of a feature that is unique to iOS.  I can't believe, however, that AppSheet doesn't have the capability to control the text on the "Done" mark too.

I hope an engineer who understands the details of how localization works in the AppSheet platform will look into this.   @jcadence Help please!


@Kirk_Masden wrote:

I think it must have to something to do with how AppSheet is interacting with iOS


Yes, it could be. That's why I suggest confirming what text appears in the position of "Done" when that iOS virtual keyboard displays for you to enter text in an input box in a non-AppSheet app. If for other apps "Done" appears in Japanese per your iOS settings, then that suggests that indeed AppSheet could set some parameter to likewise govern that behavior. If "Done" appears in English in non-AppSheet apps despite your iOS settings of Japanese, then the implication may be that it's not possible for AppSheet to govern its display.

Regardless, I doubt any text you enter in an AppSheet app's localization settings literally propagates to the iOS virtual keyboard's UI.


@Kirk_Masden wrote:

I hope we can agree that this lack of a clear explanation is an AppSheet issue.


Certainly no disagreement regarding that point--as it pertains to the topic of localization as well as many others.

Thanks very much for taking the time to respond.  I looked in other apps of mine to see if I could find "Done" in English in non-AppSheet apps but came up empty-handed.  Perhaps someone from AppSheet will be able to shed some light on this before too long.  Thanks again! ๐Ÿ™‚ 
P.S. As you say, this looks like it's part of the iOS virtual keyboard so you may indeed be right that AppSheet can't control that.

@dbaum Your response prompted me to search for "iOS virtual keyboard done" which led me to an answer.  In Safari, when the phone's system is set to Japanese, the iOS virtual keyboard behaves as it does in AppSheet in that a "Done" button appears --  but it's labeled in Japanese, not English:

IMG_2942 2.PNG

Now I think I understand the issue with "Done" in AppSheet: The AppSheet iPhone app ignores the language setting of the phone and always presents menus in English.  For example, please look at the following:

IMG_2943 2.PNG

This AppSheet interface is always in English regardless of the language to which iOS (or Android, etc.) is set to.

I've already ask why the editing interface is only in English.  I guess this is the same sort of issue.


@Kirk_Masden wrote:

In Safari


Consider testing also a non-Apple app, such as another web browser like Chrome or Firefox. Potentially, Safari is integrated with a device's iOS settings in a way unavailable to non-Apple products.

Test done.  Chrome adjusts the "Done" spot to "ๅฎŒไบ†" (appropriate Japanese term) so, technically, it should be possible for AppSheet to do the same.

Top Labels in this Space