I am here to to ask something about the IOS UX.
I have an app entirely in French, not to be translated in any other language. But my problem is that we use one or two confirm windows.
Even if the content is in French, the rest isn't. We have "OK" "Cancel" or "Accept" "Decline"
I would like to know where and what I need to change so this is in French. I followed some tutorials, telling me to change the language in the -info.plist file, but nothing changed. I selected the French language basically everywhere I could select a language, but same results. Do I need to create a file and put French translations?
Thank you for your help !
Here is my config file (I just removed some stuff like some names)
<?xml version='1.0' encoding='utf-8'?>
app name
A sample Apache Cordova application that responds to the deviceready event.
Apache Cordova Team
-->
need camera access to take pictures
need photo library access to get pictures from there
French
fr_FR
Related
For example, my app supports French and I would like to use my French screenshots in both the French (fr-FR) app store, but also in the French Canadian (fr-CA) app store as well.
In the interest of time, I'd like to only run one of these during my screenshot creation phase, so I only have fr-FR under my languages option in my snapfile.
Therefor, is it possible to route the screenshots under fr-FR to fr-CA as well within iTunes Connect when running fastlane?
Looking through the upload_to_app_store documentation, I have not found anything that appears to address this.
I added a shell file that runs a copy script to create a new folder and copy the contents from French into the fr-CA folder.
I am trying to localize a pass and save it in the iOS wallet.
The problem is that while the text on the back of the pass properly localizes, the strip.png image does not.
The strip.png image will be the image that was originally exported from my app.
So if my app was currently using the Spanish language, the Spanish strip.png would be exported. If my language was set to English the English strip.png would be exported.
However, once it lives in the wallet app the strip.png no longer changes. If the strip.png was in English and I switch the language to Spanish, the strip.png would still persist while the text on the back of the pass would change to Spanish as expected.
My .pkpass object contains two folders: en.lproj and es.lproj.
They both have their own localized version of strip.png and pass.strings file.
What am I doing wrong?
If localizing a strip.png is not supported then what are some other alternatives?
You have come across a "feature" of Wallet, designed to save space on a user's device. The rationale behind this feature is that users rarely change their base locale.
Once a .pkpass bundle has been installed on a device, all of the unnecessary image assets are dropped.
If, as it sounds, your pass is installed with the correct locale image, then your bundle is correct. Unfortunately this means that to demo the locale functionality, you will need to delete and then reinstall the pass with a new language setting.
I am trying to change text in FBLoginView button but I have no luck so far. I've tried to read README from FacebookSDK and look at internet. I added 2 languages in project Localizations sections it creates 2 files in Supporting files for each language but I tried to change strings in there with example content of README (with changed string values) but even if I changed english file I always get default login string.
Then I tried to add some Bundle settings and change some files in there but with no luck too. Can someone tell me how can I achieve change facebook strings step by step? Thanks
Update:
The method described here is no longer applicable for the latest Facebook SDKs. So please refer to the answers given by #Erik van der Neut or #Ted, and use the bundle FacebookSDKStrings.bundle that ships with the SDK for string overrides.
The only way I found so far to localize/change the Facebook strings is described in their FAQ: https://developers.facebook.com/docs/ios/troubleshooting/
What I did was to copy the file FacebookSDKOverrides.bundle from the Scrumptious sample project that ships with the Facebook SDK. This is basically just a package that contains (can contain) different localization folders. If you want to add German strings, create a folder de.lproj within the bundle. This folder should contain a file Localizable.strings.
You can find a list of all overrideable strings in the file FacebookSDKResources.bundle.README. You can find it in the FacebookSDK folder:
FacebookSDK.framework/Resources/
or here: https://github.com/facebook/facebook-ios-sdk/blob/master/src/FacebookSDKResources.bundle.README
To add a German translation of the text of the login button, for example, you have to add the following to the file Localizable.strings in de.lproj:
"FBLV:LogInButton" = "Einloggen";
As a last step, you have to make sure that Facebook knows about the bundle. Therefore, you can add the following to your Info.plist:
<key>FacebookBundleName</key>
<string>FacebookSDKOverrides</string>
Alternatively, you can also specify this in code if you want to:
[FBSettings setResourceBundleName:#"FacebookSDKOverrides"];
This worked for me, although I would like to use my main bundle for overrides and just specify them in my normal app translations. This would come in more handy for the connection to translation tools as you don't need to translate multiple files per language.
As of Facebook SDK 4.9
If you have downloaded the Facebook SDK, theres a bundle named "FacebookSDKStrings.bundle"
add FacebookSDKStrings.bundle to your project
make sure you enable Base Internalization as described in Apple's documentation.
As an update to the accepted answer here from Flo:
For the latest Facebook SDK, the set of Facebook messages (and their identifying keys) has completely changed. For example, the "FBLV:LogInButton" key is no longer valid in the latest Fb SDK.
Because of this my Facebook strings were no longer getting localized, until I realized this and replaced all my Facebook messages with the latest FacebookSDKStrings.bundle (v4.2) from https://github.com/facebook/facebook-ios-sdk -- I simply removed my original FacebookSDKOverrides.bundle and included this whole bundle FacebookSDKStrings.bundle as is in my project (including the Resources sub folder in there), updated my project .plist files to point to it, and with that all the Facebook strings got localized again.
For example, the message for the default Login button label now looks like this:
/* The long label for the FBSDKLoginButton when the user is currently logged out */
"LoginButton.LogInLong" = "Log in with Facebook";
Luckily, Facebook's GitHub page now includes translations for these messages for lots of languages already (which in my case meant I no longer needed to run these past my translators).
I just copied all string from "FacebookSDK.strings" from folder of langauge you want like fr.lproj to my poject Localizable.strings (French) ...This way worked for me...
I'm developing multi languages application and intent to have DONE button localized. This button is appear in UIWebView when user clicked on dropdown ("select" tag) with multiselect:
By default, this is always in English. However, if you set CFBundleAllowMixedLocalizations to YES in .plist file, you will be able to get it in current SYSTEM language:
Here, DONE is written in Chinese, when text in select in Arabic. It is because current system languages (i.e. set in Settings) is Chinese, but inside app I selected Arabic so app is using Arabic bundle with Arabic strings file.
I wonder, is any possibility to localize "DONE" button to current Application's language, but not system language?
Don't use "Application's language". Simply use the system language, like all other applications do.
I'm sure it's possible to somehow achieve it, but you're simply taking the wrong approach to localization.
I wrote a game with cocos2d and translated all the image and text in the
game in two different language.
When the app launches, I load different resource according to the locale of
the device and this worked all OK.
Then when I upload this app for review, I first named it say "test".
Then in the localization part I add a language "Japanese".
But I found that in the "Japanese meta data part", I can edit a lot of
things except the "app name" which is "test". But I want my app to show
different names according to the locale of the device also.
Can somebody tell me how to get this work? Thanks in advance...
You can create a file called InfoPlist.strings in each of your language specific directories, and set a language specific value for CFBundleDisplayName.