views:

159

answers:

6

is it possible and how to implement forbiden exit from application on iphone/ipad?

we have an application that must permanently work on ipad device. user should not have any way to exit from application. could you advise how to implement this functionality?

+1  A: 

There is no way to implement this functionality. You cannot do it.

BJ Homer
I've seen it implemented with glue.
Justin
excuse me, with which glue? what do you mean? use glue to seal button? please don't joke.
upsa
+5  A: 

By jailbreaking it and installing custom software that enables you to do that.

Or putting a lot of tape over all the buttons.

Anyways, you can't do this with a standard app on a standard device. Just think about it - would be a pretty annoying thing for apps to do, wouldn't it?

Matti Virkkunen
+1 Very bad design to disable OS built-in functionality
Merlyn Morgan-Graham
yes, it's really annoying :-) but we must have such ability :-) it's just "must be done" functionality.
upsa
Jailbreaking is the only answer here, but I agree with Merlyn, very bad design.
Barlow Tucker
i do not agree with you. business logic requires that app works without interrupts. and i must find technical solution for such behaviour.
upsa
@upsa: If I told you that warp drive was a "must be done" functionality that my business logic requires, would you invent it for me? I'd really like to be the captain of a warp-drive enabled ship.
Matti Virkkunen
@matti: To the best of my knowledge, force-opening an app doesn't involve the purification of dilithium crystals.
mattbasta
@mattbasta: But it's absolutely essential for my business logic!
Matti Virkkunen
I'm going to admit that I have no experience developing for iPhone or iPad, or any smart phone for that matter. But just last week I was listening to some graduate students talk about how to deal with a security hole in the Android OS caused by essentially this request: forcing an application to be always open. (In the case of AOS, I believe it was accomplished with a service that re-started the app immediately after it closed.)
Brian S
@Brian. Yes, it's good and acceptable solution. interesting, is it possible to implement the same approach on the iphone/ipad.
upsa
@upsa: You seem to have processed "re-started the app" while skipping over " **security hole** ". I don't know if the same thing is possible on iMumble, but it's not something you ought to do.
Brian S
A: 

CHOP OFF YOUR USERS FINGERS!!!!!

nevan
joker without fingers
upsa
your solution is inacceptable because user must interact with device. but +1 for creativity and positive thinking.
upsa
but what about other parts of body? users can use tounge or legs to exit from app. your solution doesn't work. we can't chop everything from users.
upsa
+2  A: 

Apple's own human interface design guidelines would forbid this. Your app can't encroach on the abilities of the OS that transcend your own application's responsibilities. The whole point is to have a consistent experience for the device and if you're modifying something as fundamental as switching apps, you're violating that principle.

If you can't exit the app, you're essentially turning your device into a single purpose unit. How do you expect to get back to the app list if you disable fast app switching and the home button?

Whatever solution you find would not be approved by the app store.

You should look at whether the current multitasking features can help chip away at your reasoning for needing the app to always run in the foreground.

Joost Schuur
thank you for detailed answer.we just look for cheap (or at least not expensive) sexy handheld device that can execute our custom multimedia application. app should play images, video and html and sometimes interact with user. app will work in public places so we can't allow to exit from app and have access to any device functionality, it's too dangerous.apple iphone/ipad devices looks very attractive to us but unfortunately some obstacles become irresistable.
upsa
What you're looking for is often called 'kiosk mode'. There's some brief discussion of it here, but it would have to be a jailbroken device.http://stackoverflow.com/questions/2166656/how-to-create-kiosk-mode-iphone-app
Joost Schuur
How about mounting it in a plastic case that prohibits touching the home button? That's about the best option you're going to find.
Michael
+2  A: 

If you are talking about an enterprise app locally distributed, you might be able to do this, though probably not.

The best idea would be to physically break or block the hardware button.

Or issue alerts to the device every 10 seconds making the thing effectively unusable when outside the application (you can ignore incoming notifications for you in-app).

Why do you have this requirement?

Kendall Helmstetter Gelner
please see explanations above in the my answer to @Joost Schuur
upsa
If it's a device mounted in a public place than you have an option of physically covering the home button. That is the only way to exit the application. If it's not mounted in such a way that it's covering a fair part of the sides, you will find it gone by morning.By the way, a need for a kiosk mode is totally unrelated to business logic, instead it is related to system requirements.
Kendall Helmstetter Gelner
"The best idea would be to physically break or block the hardware button." - What a brilliant elegant solution to the problem. A physical case that did this might be the best solution.
Toby Allen
That in itself seems like a really excellent idea, if the pad cannot be mounted in a fixed kiosk then some sort of lockable case that covered the button would suffice, or even an everyday case that had an opening for the button but you insert a thin steel plate behind... that would have to be monitored to keep people from removing the case, but then you'd want monitors anyway to keep people from carting off the iPad.
Kendall Helmstetter Gelner
+1  A: 

You can't do it, But if you jailbreak and configure the "Home-Button" settings you can :)

Btw, If you do it, the only way to quit will be a shutdown... And to shut down every time would be kinda annoying...

DailyDoggy