Info.plist does not change fields in Targets/MyApp/Info - swift

i'am having a strange problem. When i modify the Info.plist for example if i add a new field i can see it, but when i go to App/Targets(MyApp)/Info i son't see any changes. Plus i'am localizing my app with different languages (English, German, Italian) so i have a localized version of Info.plist with the Base and other languages too. In build settings the Info.plist is linked correctly to App/Info.plist where the file is, plus i don't know if it could be useful but i made the project with Ionic capacitor 3.
So if i want to see a change for example the app name, i have to modify the info in App/Targets while if i modify the Info.plist in App folder nothing changes.

Related

when Adding Localization, Appstore saying Name Already Exists?

Guys i am having a very small problem.
I have made an App name Litofinter. I wanted my App to have Spainsh Localization also as my client is from Spain.So what i have done that in my Litofinter.plist i added "Spanish" instead of "English" in the "Localization native development region". After that when i login to iTunesConnect to submit the app in Appstore i saw Manage Localization, so now i wanted to added Spainsh Localization there, but Appstore is saying "App Name Already Exists".But i wanted to submit it, so i submitted it Without that manage Localization.But my Client is Not able to see in Spainish Locale... What should i do now to have spainsh Localization?
I know i have done many Mistakes, but can anyone please correct them?
First Image showing what i see on iTunes Connect :-
Second Image Showing what i have done in .plist
There's no correlation between localizations in iTunes connect and the localizations in xcode. iTunes connect localizations are meant to be displayed in the appstore, while localizations in xcode are meant to be used on the device itself.
For example, you can localize your app in 20 languages, while leaving the app name & description in iTunes connect only in english. many developers do that.
Make sure your app contains Spanish, click on the project name from the left navigation, and check the "Localizations" section. you will also have to check that Localizable.strings and InfoPlist.strings exist and contain spanish version. You can view the file info (and add localizations) when you select the file and open the "File Inspector" via the main menu's "View" -> "Utilities" -> "File Inspector".
You can check it yourself by changing the language of your device to Spanish temporarily.
You don't have to build separate application for each localization.
Just provide translated XIB and strings files in your project.
You don't have to create a spanish duplicate in iTC. From your english app just use the "Manage localization" button (from application summary) then "Add new language" to specify new language and corresponding medias (description, keywords, etc.).
(You'd better discuss this on Apple dev's forums as most of this might be subject to NDA.)

How do I localize my app's name in the App Store

I'd like to change the name of my app on the App Store for some of the localizations I handle.
I've already seen That I can change the name of the app on the springboard using CFBundleDisplayName and that works pretty well.
But there is nothing about the localization on the App Store.
Is CFBundleDisplayName doing the job ? Is there something else to do ?
Have you looked into iTunes Connect? I know that the description can be localized there (under Manage apps -> App -> Version -> Manage Localizations). I'm not entirely sure if it can be done though, as the names in the App Store have to be unique and therefore I imagine that are bound to a certain app ID.
To localize the App Name you can do this like any other file. First click on the AppName-Info.plist file then open up the Identity Inspector (Left Pane Column), under the document tag is a Localization section. You can just click the add button to add the different languages that you want (say, first English, then Italian). Than you just have to individual change each of the names in the AppName-Info.plist (English) and AppName-Info.plist (Italian) files.

Adding localizable files to project on Xcode 4

I'm developing an App that needs Localization.
I've followed these steps:
I've created the es.lproj, it.lproj, en.lproj folders in the root of the project with finder.
I've created the Localizable.strings file in each folder with the key pair values corresponding to the target language.
I've imported with Add Files To option from Xcode.
When I test the App in the iphone simulator all works fine. I configure the iphone to any localizaed language and the app is translated properly.
But when I run the App in the device, only shows the strings in english.
I've made a test following these steps.
From Xcode 4 right button over Supporting Files Folder, New File.
Create Localizable.strings file
In file inspector, section Localization. I've added the rest of languages. Creating the file like a folder with all Localizable files in the tree.
In the root folder of the project, the xcode created a folder for each language.
After editing every file, I've executed in simulator and all works fine. I've tested in 3 different devices and the only language is English.
In the Project -> Info -> localization I've added every language.
In the Build Phases I've observed that only is referenced the Localizable.string file in the en.lproj folder. I've tried to add the rest of files, but only accepts one more Localizable file. I've tested in device with the "extra" added language but doesn't works.
Can someone help me please?
Thanks in advance.
Try this: Remove the app from the device, clean project, make sure that the files appear in Build Phases>Copy Bundle Resources and run again.
Are you sure you are testing properly on your device ? I just tried making a simple localization test, just a Hello world in different languages, and when i
I used Xcode 4 and followed the same steps as you. Changed my device language, reloaded the app, and there it was.
You might need to do a clean install in order for this to work. Do the clean install after you changed your device language to "something you haven't seen yet" ;]
Maybe this tutorial can help you : Localization Tutorial with XCode
Have you tried to delete the app from the device and then reinstalling?
EDIT: I have checked in a project of mine and the names I see are: English.lproj, French.lproj, etc.
Don't know if this could make a difference, but you could try it. Also, you can go to the app binary for the iPhone with the Finder and select Show package content to inspect its content and make sure the localization files are there This could help to pin down the problem...
If it can be run in the simulator ok, but the device has a problem with the localization, then the link provided here by Nils Munch has the answer. In troubleshooting it says "Unlike the iPhone simulator, the iPhone only recognizes strings files that are formatted UTF-16. Always test your localizations on the device, as the simulator and the device do not always behave the same way."
I think the problem here might be the file is UTF-8. The simulator can handle that but the device can't.

Lock my iPhone app to a specific language (Localization)

I have an Xcode4 project where I have support for several languages (localization files) .. My text and xib files change correct when I change languange on my iPhone ..
My Question is;
Can I make a release to a specific languange, even if I have several localization files?
Force my app to use only one localization?
My idea would be to set a flag in the info.plist file like;
Localization = English (Lock my app to the enligsh language)
You can do this by deleting localized strings and nib files. I don't think you can lock your app to a particular language (If localization support is there for other language).
If the localized.lproj folders are in the bundle, iOS will use them. The easiest way would be to remove your localized resources folders from the bundle and build the app.
You could probably programmatically set code a workaround in your main.m class file, by stating only to use en.lproj but I can't imagine this will be either pretty or useful.
Side note: You can set your default project localisation in the Target > Info pane. Look for key: Localization native development region

do personal fonts carry over?

if i have a font that I made and use it in my app, will it uploaded with my binary etc and display when i run it on my iphone?
If it's in your bundle, it'll go with your app. Using it though is another story. The iPhone doesn't support custom fonts out of the box. You have to write a wrapper on UILabel or whatever to use it. That, or get an open source one.
If you want information on loading your custom fonts, check out this question: Can I embed a custom font in an iPhone application?
The ultimate answer is in the app bundle you build. Locate the bundle (it has file name extension "app") in the Finder, right-click it and select "Show Package Contents". Whatever is there gets into the IPA package distributed to your customers through the App Store.
With regard to fonts included in your app, see benwong's comment. You should add the font files to the Xcode project and add all the font names under the key UIAppFonts (aka "Fonts provided by application") to the Info.plist.