Check the [latest documentation](http://developer.android.com/about/versions/android-5.0.html#Enterprise).

This feature seems to be called Screen pinning now, and the App does not have to be the device owner. If the device owner is not set the user will be prompted to accept.


    There are two ways to activate screen pinning:
    
    Manually: Users can enable screen pinning in Settings > Security > Screen Pinning, and select the tasks they want to pin by touching the green pin icon in the recents screen.
    Programmatically: To activate screen pinning programmatically, call startLockTask() from your app. If the requesting app is not a device owner, the user is prompted for confirmation. A device owner app can call the setLockTaskPackages() method to enable apps to be pinnable without the user confirmation step.

**Edit :**
I have tried this in an emulator and the box does appear to accept, it does pin the screen, but you can exit by pressing two buttons. So not suitable for a kiosk. Pressing the pin in the recents does not seem to work.

I am not too sure about the following, it seems we need to set the device owner with NFC:

    To deploy and activate a device owner, you must perform an NFC data transfer from a programming app to the device while the device is in its unprovisioned state.

**Edit:**
Check the following [link](http://www.androidpolice.com/2014/10/17/lollipop-feature-spotlight-screen-pinning-allows-you-to-lock-your-device-to-a-single-app-before-handing-it-to-a-friend/) if you have a password on the device you get the option to require the password when you leave pinning mode. So the manual method looks like it could be used for a basic kiosk.