I have some workflow questions re: the PIN entry dialog which appears for Roku apps. I'm having some trouble finding one concrete piece of documentation describing this in detail, but as I'll try my best to put it into what I think is happening. If anyone could verify, confirm or correct me, that would be fantastic.
1. A Roku PIN must be set-up on the user account in order to successfully make purchases. This PIN can be set up here: https://my.roku.com/account/pin 2. There are 3 different options for using the PIN: a. Prompt the user to enter their PIN for any purchases as well as when adding Channels from the Roku Channel Store b. Prompt the user to enter their PIN for purchases only c. Do not prompt the user to enter their PIN for purchases or downloads 3. For Users with Account Settings 2a. & 2b.: A PIN Entry Dialog box will appear when a user attempts to make an In-App Purchase from a Screen which implements the roChannelStore. The app will not proceed with the DoOrder() function until the user has entered their PIN, selected the 'Purchase' button, and the PIN has been approved. 4. For Users with Account Settings 2c.: No PIN Entry Dialog box will appear when a user attempts to make an In-App Purchase. The app will proceed immediately with the DoOrder() function to continue with the transaction process.
I believe that is it, however, I see there is also a component specific to PIN Entry Dialog Boxes. I haven't tested this, but I seem to have gotten this far without using it. Is this possibly an artifact of versions past? Or are there specific use cases in which this component might be necessary?
What about more modern Scene Graph implementations? I don't need a full explanation of how these are implemented, but I'm assuming that apps developed using the Scene Graph API are more likely to use the PinDialog box. One would also assume that there would then be a way to detect whether or not the user wants to be prompted for a PIN via their account settings.
roPinEntryScreen has nothing to do with anything. It's just a way to get a number input from the user in a non-Scene Graph channel. The channel can use this component for whatever it wants. For example, the Amazon.com channel uses the roPinEntryScreen to get the user to input a pin code when purchasing a movie. The pin code must match the one set up by the user in the Amazon.com account via the amazon.com/pin web page.
roPinEntryScreen cannot be used in Scene Graph applications. Instead, a PinPad node (or PinDialog node) is used.
"Motorcykey" wrote: I believe that is it, however, I see there is also a component specific to PIN Entry Dialog Boxes. I haven't tested this, but I seem to have gotten this far without using it. Is this possibly an artifact of versions past? Or are there specific use cases in which this component might be necessary?
Two completely different things. The first one was Roku account owner's protection PIN, which is handled entirely internally by RokuCo - to you it's just informational that during purchase user might have been asked to enter PIN - but you don't even know in what mode their account is.
OTOH, roPinEntryDialog is UI component that allows you to ask for PINs for your apps own sake, whatever that may be.