How does one get past the "Your screensaver is using a prohibited onKeyEvent() method" prompt in certifying a screensaver application? Some background, the application I am working on doesn't need user input once the screensaver is on; however, to set some settings I need to capture user inputs when RunScreenSaverSettings() is called, and to capture inputs my understanding is that onKeyEvent() is required. It seems like the static analysis tool only checks for the existence of "onKeyEvent()" in the code and not the context it is being used.
I have just run into this exact issue, it was my first attempt to upload a beta channel for testing and I'm blocked.
I opened up a ticket with Roku Partner Success. I recommend you open one as well. The first response I got was that it is "by design". I don't think Roku folks realize how disruptive this is to the screensaver ecosystem. Basically, you cannot offer any options that allow users to customize settings for a screensaver and have your screensaver be a certified application. I like the fact that with the new rule in place, apps don't randomly open up the keyboard with remote key interaction in screensaver mode but a broad brush of disallowing any keyboard input just goes overboard. I am blocked as well.
I also have a ticket open. I don't think they've thought this through. I wonder when they're going to remove the Roku 4k Screensaver, as it has configuration options that the user has to select.
They're going to have to start deleting some documentation I guess.
https://developer.roku.com/docs/developer-program/media-playback/screensavers.md#settings
Any news on this? I have the same issue.
I refreshed my ticket. They haven't closed it but they're ignoring it at the moment (last response 7 days ago). Hopefully they're spending the time trying to learn how Roku screensavers work.
My ticket is still open as well no reply from the Roku team 😞
Has anyone made any progress with this issue?