Localization of icon and default screen in iPhone - 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.

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.

Changing languages while running iPad app

Is there a way to apply the selected language in your iPad app?
Setting the langauge is not the problem, but applying it to the screens is difficult.
The project I've made is a master/detail storyboard app, so on both master and detail the choosen language should be applied. The languages are set via AppleLanguages.
===================EDIT, infos from APPLE============================================
In general, you should not change the iOS system language (via use of the AppleLanguages pref key) from within your application. This goes against the basic iOS user model for switching languages in the Settings app, and also uses a preference key that is not documented, meaning that at some point in the future, the key name could change, which would break your application.
If you want to switch languages in your application, you can do so via manually loading resource files in your bundle. You can use NSBundle:pathForResource:ofType:inDirectory:forLocalization: for this purpose, but keep in mind that your application would be responsible for all loading of localized data.
Regarding the exit(0) question, Apple DTS cannot comment on the app approval process. You should contact appreview#apple.com to get an answer for this question.
http://aggressive-mediocrity.blogspot.in/2010/03/custom-localization-system-for-your.html
This link may help you i guess. Thanks!

Which official document describes the icons and iTunesArtwork that has to be included in an app bundle?

I've got the iTunesConnect_DeveloperGuide.pdf, but a search for "Icon-Small" or "iTunesArtwork" returns no match.
There must be a different document which goes into detail what icons are needed, and specifically how the iTunesArtwork has to be created. Which one is it? I remember there was one which talked about iTunesArtwork and explicitely mentioning not to add an extension as well as not to add alpha, but that's almost 2 years ago.
Edit: Found it in the iTunesConnect_DeveloperGuide.pdf on page 11. It's in a blurry image, so search didn't work because of that. Anyways, I also remember there was a more detailed discussion about this somewhere else.
Look at Custom Icon and Image Creation Guidelines and the "App Icons on iPad and iPhone" Q&A too.
There is also this Programming Guide that talks about the subject.
Note: Got all this using a simple Google Search anyway
The "Custom Icon and Image Creation Guidelines" section of the iOS Human Interface Guidelines has detailed information about the various icons you need to create for your app: http://developer.apple.com/library/IOs/documentation/UserExperience/Conceptual/MobileHIG/IconsImages/IconsImages.html
Also, you don't need to include iTunesArtwork in your app bundle. See my answer to this question: iPhone/iPad and iTunesArtwork
Here you can find the guide lines for preparing an app to be submit to app store

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.

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

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.