在iOS中的系統語言和應用程序語言之間有所作為


3

在系統語言和應用程序語言之間有所作為是最佳實踐嗎?

例如,您有一部使用英語系統語言的電話,但您想從例如法語的法國餐館列表應用程序接收推送通知。

但是您遇到了麻煩(在iOS中):可本地化文件僅在重新引導後在系統區域設置中交換。

請考慮以上配置:

  • 系統語言為英語。
  • 法國餐館應用程序語言為法語。

還有後果(或電話狀態)

  • 系統語言導致法國餐廳應用使用英語
  • 法國餐館應用程序語言導致您的服務器推送通知使用法語。
  • 法國餐廳的電子郵件通知也使用法語。
1

Make smart localization choices according to your audience, and allow users the choice if they want to live with your app even if it's not in their locale.


In theory, the best practice is to localize your apps for your audience.

Of course, in theory your audience could be anyone in the world. But you are not likely going to have your app localized for the 732+ locales that iOS recognizes (as of iOS 9, probably more now).

So practically speaking, if your app targets a second audience (for instance, France is the world's largest tourist destination and its cuisine is one of its attractions among world travellers) it makes sense to localize for those audiences. In this example, Germany and the UK are the largest sources of visitors to France, so you may choose to localize to German and British English. You probably won't localize to Urdu.

However, there is nothing preventing a Paktistani Francophile from downloading your app when they land in Charles de Gaulle and, with whatever level of knowledge of French they have, make use of the app. If they find the experience too discordant they may stop using it, but that will be their choice. From your perspective, you are at least leaving the option open to users.


Also note that, if I understand your example correctly, this type of app will always be a little discordant in terms of localization when you think beyond UI and message and into actual content. You will never be able to get every restaurant in all of France to provide you a description, let alone a menu, aptly translated into English and German. Reviews people leave will be in their native language, most likely. Machine translation services like Google translate will get you some of the way (we see it on sites like Trip Advisor) but it will never be perfect.


0

It depends on your app's users and how it is used.

What I can advise comes from my own experience as a user. As a bi-lingual user (Hebrew and English) I find myself in need for the ability to set an app's locale. My system is always in English since Hebrew doesn't fare well with technical jargon. Some of my apps, on the other hand, are in Hebrew - and these are apps that show local data (much like the restaurant example you have).

Moreover, it also depends on who uses my mobile. I'd I give it to my wife, I prefer changing settings of English apps to Hebrew since she's more fluent in that.

So bottom line: i can manage without the ability to change locale, but it can be a great feature for a specific type of apps.