I am being asked to develop an iPad app that can't be closed until some actions are done, also it must prevent the use of screenshot feature and the home button. Is this possible? Is this legal? In case of this not being legal what would happen (in legal terms) if I do develop it?
-
1possible duplicate of [How to prevent an iPhone app from closing until all activity is done](http://stackoverflow.com/questions/3252526/how-to-prevent-an-iphone-app-from-closing-until-all-activity-is-done) – Rob W Jul 09 '13 at 20:35
-
1I don't know of any (public) API that disables the home button feature, at least as of iOS 6. But if you try to do anything that goes around Apple's API's, your app won't be approved for the Apple App Store. Unless you don't want to distribute on the app store, then you can get away with (almost) anything. – Michael Dautermann Jul 09 '13 at 20:36
-
3What is the target audience for this application? If it is for public app store distribution then it would not be allowed to my knowledge. If you are developing a kiosk type application for internal distribution only then there are options. – Brandon Campbell Jul 09 '13 at 20:38
-
2Take a look at this previous answer on how to disable home button http://stackoverflow.com/questions/5011774/lock-down-iphone-ipod-ipad-so-it-can-only-run-one-app/8994690#8994690 – sangony Jul 09 '13 at 20:42
-
@HalfCrazed This answers the question for ios4, is this still true for ios6? – Ricardo Mogg Jul 10 '13 at 15:20
-
@BrandonCampbell It will be a kiosk type application – Ricardo Mogg Jul 10 '13 at 15:22
4 Answers
Disabling the home button can either be done by
- Guided Access
- Apple Store Mode
Both possibilities are described in: How to prevent an iPhone app from closing until all activity is done Solution 2 will probably not pass the App Store, but can be used for Enterprise Apps.
Disabling screenshots:
The answer from user portforwardpodcast in iOS Detection of Screenshot? may work, but it is unsafe that this will work in next ios releases.
As far as disabling taking a screenshot, no. In the past it has been possible (via a hack) to detect when a screenshot is about to occur--in which case you can hide the content you don't wish to have shown. However, I don't think this works anymore. You might try it out.
As far as disabling the home button, no. You need to educate your client about what a better user experience is (eg: ensure that when the user backgrounds the app and returns later that they are returned to the exact place and state they where when they backgrounded.)

- 1
- 1

- 1,734
- 13
- 22
Yes, you can disable the iPad home button. Apple do this to all the ipads within the store to set them up as kiosks. I can email you a script that adds itself to your general settings, run the script and reboot the ipad, the first app you open will be locked in. Home button will not work. To remove this just restart the ipad again and go to settings and disable. This is a legal and legitimate way of doing it. You could also try and use guided access in iOS6 - its not very good but could achieve the same.
-
Thank you very much, I already saw this answer, and it is great but I am looking something inside my app, I mean something that doesn't invovle in my final user having to run scripts in their ipads – Ricardo Mogg Jul 10 '13 at 15:26
No, you can't disable the home button or prevent screenshots (and don't count on currently available hacks that detect screenshots to continue working) from within your app.
Yes, disabling the home button and preventing screenshots is possible.
Make your customer aware that a "kiosk mode" already exists in iOS 6: Guided Access. This allows disabling the home button, disabling app switching, disabling parts of the screen for touch sensitivity, requiring a code to unlock. While Guided Access is in effect, screenshots also can't be made.
You cannot activate Guided Access from your app, it has to be done manually in the device settings.

- 9,842
- 3
- 37
- 57
-
Thank you, Guided Access seems like it might do the trick, however I was looking to do this without having to move the settings in every ipad wanting to run this app – Ricardo Mogg Jul 10 '13 at 15:25