When the device language changes, backgrounded apps quit themselves - ios

I've observed that if I change the device language, and after coming back to home screen, all background processes quit themselves. If I click on a running app icon again, it starts from scratch -- i.e., from application:didFinishLaunchingWithOptions:.
Am I wrong somewhere? What can I do to work around this?

I think this is a nothing odd and a default behavior.
You may want to look into this post if you want to make changes right from inside your application, though I am not sure on how good this is, as I have not personally implemented it.
language change only after restart on iphone
Let me know if you need more help.
Hope this helps you.

Related

UIAccessibilityTraitAllowsDirectInteraction and VoiceOver: issue or bug in iOS?

This is a quite strange behavior that 'persecutes' me since iOS 7.0 :) I hope someone of you can help me this time! As you probably know when you are using VoiceOver your gestures are totally different from the 'normal way'. When you need to bypass VoiceOver for a specific view you can set its accessibility traits as UIAccessibilityTraitAllowsDirectInteraction. When the view has this parameter set the user can interact with it as usual (like VoiceOver is not active in that particular view).
Quite often happens that this ability is randomly lost so VoiceOver acts in its normal way.
Did anyone of you encounter this problem in its experience? Did he solve it? Fortunately turning off and on VO seems to temporarily solve this issue (until next time it happens again)
Any idea? Thank you very much
I've seen this with other things as well. For example, notifications can be spotty, particular Screen Changed or Content Changed notifications. I believe this happens as a result of turning VoiceOver on and off. For example, if you were to turn VoiceOver on, leave it running, and open your application as a user would, you would never experience these issues.
However, if you use the VoiceOver shortcut. Or interrupt the application, re-install, and restart while using Xcode, you can disrupt the VoiceOver's connection to the application. It doesn't bond correctly. So, simple things like navigation work fine. But advanced features like notifications (and perhaps some of the more complicated traits) don't work.
Essentially, I would classify this as a bug, but a bug that only shows itself when you use VoiceOver in a way that only a developer would use it.

How to quit iPhone webapp programmatically

I want to make a couple buttons on my iPhone to control my stereo. I thought I might be able to do this by putting a couple webpages on my homescreen that issue stop, play, next, etc requests to my media server that quit shortly after being opened. Is there a way to tell safari to quit other than crashing it? If not, what's the best way to crash safari? I realize this isn't very elegant, but I really want to have buttons on the homescreen, not in an app, and this was the best solution I could come up with.
I realize I could make the buttons native apps, but I don't want my iPhone running any third party software, even from myself (I have very little iOS programming experience, and even though I'm pretty sure there's a lot of sandboxing/this is trivial, I'm worried I'll mess up my phone). If you think I shouldn't worry about that and think it would be better to make these buttons native applications, or have any other suggestions, please let me know.
Not only is there no need for your web clips to be closed - just issue the command once - crashing Safari is a bad idea at best.

Black screen on launch, but normal when press home button and enter the app again

As the title, my app will occasionally show a black screen at launch, but I don't know why.
When I press the home button, then entered it again, I saw it was running well. It seems the window could not be made visible randomly. But I don't know when or why does it happen.
You likely don't have a launch image set. When apps are loading their resources they display a launch image, you likely don't have one, which is why you get a black screen.
The reason it doesn't always appear is because if the app is in the background, but still alive, it keeps its resources available for a quick start from the background. It then does not need to display the launch image.
See the Apple documentation
I would say, that there is something wrong with the NavigationController/ViewController stack for Your application. I've had similar situations with exact same problem.
What You can do:
It is pretty hard to suggest something - usually needs tinkering around with the stack structure (maybe try to simplify the stack (remove unnecessary navigationControllers / any tabbarControllers?
Create a separate project, with the same navigationController/ViewController structure, to replicate the problem, upload somewhere, give access to us and we can take a look. But probably - when You will start tinkering around - You will fix the issue Yourself.

Taking a home screenshot and using it as background of your app

I want to fake a transparent background in my app, so I thought the best way would be to take a screenshot of the home and use it as background.
The only problem comes with the fact that you can't possibly have the app take a screenshot without actually launching the app, so my question would be:
Is there any way to tell my app to take a screenshot of the home?
You may want to rethink your design. You cannot do this without jailbreaking. It would also be very hard to maintain to ensure its up-to-date, and the user would see right past it. In addition, its highly unlikely an app with this method would pass through the review process.

What is the purpose of launch images in an iOS application?

How important is it to add Launch Images to an iOS application? I assume that these are like a cached file to show on the screen while the application is getting setup, when there might otherwise be nothing to show until it is fully running. Is this right?
If so, what should a launch image be if your app might start in different states, or does this not effect return to foreground when multitasking? If it is only for the very first initial launch of the app, then the launch image should just be the same as whatever graphic normally appears when you first start the app, right?
Apple must not care too much about whether your app actually includes these, since mine never have.
Note: as Zev mentions below, the Apple HIG recommendation has changed since I originally answered this question. Apple now recommends that you take all of the static elements of your first screen and make that into your default or launch page. All dynamic elements are to be removed, to give the impression that your app is going through an initialization process -- which in some cases may mean that your default screen is simply a background from your app. Thanks to Zev Eisenberg for pointing that out, "splash" pages are not recommended.
The launch image will show while your app is initializing, it's a good idea to have one. If you don't have one the user is likely to stare at a blank screen while waiting for your app to load. I believe the recommendation is to use an image that looks like the first page of your app. Here is the reference:
http://developer.apple.com/library/ios/#documentation/UserExperience/Conceptual/MobileHIG/IconsImages/IconsImages.html#//apple_ref/doc/uid/TP40006556-CH14-SW5
how about if app is starting immediately and no time passed ?
what if you see (or cannot see) for a 0.1 sec launch image ?
would it be still useful to have two images in main bundle that will never be seen or used ?

Resources