Is it possible to localize the app icon and Default.png? - iphone

Is it possible to localize the app icon and Default.png files? Do I just drop them in the respective language folders or must I do something else?

As per my comment, there's an answer elsewhere, but you can read more in the Internationalizing Your Application section of the iPhone Application Programming Guide. There's an example of how to structure your language files in your app bundle, for example.

The correct answer is that it is not possible to localize the app icon.
An iOS application should be internationalized and have a
language.lproj folder for each language it supports. In addition to
providing localized versions of your application’s custom resources,
you can also localize your application icons and launch images by
placing files with the same name in your language-specific project
directories. Even if you provide localized versions, however, you
should always include a default version of these files at the
top-level of your application bundle. The default version is used in
situations where a specific localization is not available. For more
information about localized resources, see “Localized Resources in
Bundles.”
https://developer.apple.com/library/ios/#documentation/CoreFoundation/Conceptual/CFBundles/BundleTypes/BundleTypes.html
Apple docs update/change frequently. This is the correct link at this point in time. Also, I haven't actually tried localizing the app icon/default images, but Apple says it works so why not :-)
This same question appears numerous times on stackoverflow.

Related

How do iOS processes get their name?

Is there a default way iOS names
Them? I'm trying to find some sort of pattern to link them to an app name/bundleID so I can retrieve that apps information from the App Store search API. From what I've seen many apps process names are simply their name (eg Dropbox, Skype) but I figure someone has a better idea
In the Info.plist of the App, the relevant key-pair name is CFBundleExecutable.
The default value is set to the Xcode project name (naturally, eg "Dropbox", "Skype", etc). Look at any app's Info.plist via Xcode or by opening up a packaged app.
Documentation for ${EXECUTABLE_NAME}: http://developer.apple.com/library/mac/#documentation/DeveloperTools/Reference/XcodeBuildSettingRef/1-Build_Setting_Reference/build_setting_ref.html#//apple_ref/doc/uid/TP40003931-CH3-SW71
Source: I built iHasApp, an app-detection framework, so I spent a lot of time looking into what you're interesting in doing.

Is a Dynamically Linked Framework possible on iOS?

The keyword here is possible. I know of a few resources that talk about this and how to create static frameworks - here: https://github.com/kstenerud/iOS-Universal-Framework and here: http://db-in.com/blog/2011/07/universal-framework-iphone-ios-2-0/
I'm interested to see if it's possible to create a dynamically linked framework in an app that will not be submitted to the app store. I know it's impossible to write to the application bundle on a device without jailbreaking it. Is it possible to say, download a compiled framework file, put it in the documents directory and then access it via the application (think plug-in architecture). I know that if it is, you would be turned away from the app store for submitting it, but let's say this was an enterprise app, or an ad-hoc distributed app where Apple would not have to approve.
In my initial research I haven't found anything supporting that it is possible, but I feel like this may be such a fringe case that no one has published anything about it. Looking for a guru to give me a definite "no" before I give up.
not sure if this is what you are after but according to Apple there dynamically linked libraries even usable in iOS - for example the system libraries... XCode contains copies of them and references them via symbolic links...
see near the end of this http://developer.apple.com/library/ios/#documentation/Miscellaneous/Conceptual/iPhoneOSTechOverview/iPhoneOSFrameworks/iPhoneOSFrameworks.html#//apple_ref/doc/uid/TP40007898-CH6-SW3
just an idea:
put the .dylib + include files you want to use into the respective folders where XCode expects the system libraries... use themn and then put symlinks into your bundle on deployment... let the symlinks point where ou copy the .dylib
I believe the answer is no. Apps on the iPhone are sandboxed. That is, aside from Apple supplied frameworks, an app cannot access anything outside of its own build.
This is possible now with IOS 8 Xcode 6.

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

Localization of icon and default screen in iPhone

Can the app icon and default screen be localized in iPhone? Has anyone tried it?
In theory it should be possible as they're just image resources, but I found no explicit mention of this in the documentation, and I wouldn't like to have my app rejected or failing for this.
Official documentation quote:
"An iPhone application should be internationalized and have a language.lproj directory for each language it supports. In addition to providing localized versions of your application’s custom resources, you can also localize your application icon (Icon.png), default image (Default.png), and Settings icon (Icon-Settings.png) by placing files with the same name in your language-specific project directories. Even if you provide localized versions, however, you should always include a default version of these files at the top-level of your application bundle. The default version is used in situations where a specific localization is not available."
I'm trying to do the same, and I found this:
Until yesterday though I was never totally sure it was not possible. Then I spotted this thread in the Apple developer forums. There is a post by Bill Dudney, author of the excellent iPhone SDK Development book from Pragmatic Programmers and now an Apple employee. Bill confirms that localizing the application icon is not currently supported and suggests raising an enhancement request.
source:
http://useyourloaf.com/blog/2010/12/16/localizing-iphone-app-icon-is-not-supported.html
Cheers.

iPhone application Info.plist language property

Which property should I change on Info.plist in order to configure the list of languages shown in itunes store under my submitted application?
EDIT: My application will be in Greek and I want to see Greek as the only language under Languages in the App Store. How do I do that?
It seems that the "Localization native development region" value on the .plist file is related to the languages that appear on the app store after Languages.
What you list in the plist does not affect what is shown in iTunes. When you submit to itunesconnect, you will be asked to enter languages that are supported. Of course , you will want to match these languages up with what your app really can support, but iTunes will not just show the supported languages by default.
EDIT:
It appears the OP is just asking how to localize within the app. See here