Android Question DPAD Control and Hardware Declaration documentation

Full HD Streaming

Member
Licensed User
Hi guys I uploaded my app hoping to pass all Android TV tests but I'm getting my app rejected because of this:

App Bundle:1 Missing DPad functionality Your app requires user interaction for menus or app navigation. Please make sure that menus and app navigation needed for the app’s core functionality are fully functional using a DPad. Please refer to our DPAD Control and Hardware Declaration documentation.

Is there any solution to this i saw someone posted about this but I was not able to apply that fix...
 

JohnC

Expert
Licensed User
Longtime User
What they are saying is that every view (button, checkbox, textfield, menu, etc) needs to be able to get "focus" by the user just pressing the left, right, up and down buttons (DPAD) while running your app.

If some views can only be selected by touching the screen, then thats not a good thing because Android TV devices usually don't have a touch-screen.

What this means is that you might need to trap the arrow keys in the Key_Press event and programmically move the focus to controls that are otherwise are not able to get focus using the arrow keys.
 
Upvote 0

Full HD Streaming

Member
Licensed User

JohnC thanks for the reply any idea of how can I solve this I'm new to developing and this D-PAD stuff is the only thing why they rejected my app for Android TV is there any line that needs to be added to the manifest file for it to reflect the D-Pad?​

 
Upvote 0

JohnC

Expert
Licensed User
Longtime User

JohnC thanks for the reply any idea of how can I solve this I'm new to developing and this D-PAD stuff is the only thing why they rejected my app for Android TV is there any line that needs to be added to the manifest file for it to reflect the D-Pad?​

It's mostly a manual process that is unique to your app - there is no single change that will fix the issue app-wide - you need to create custom DPAD handler code in appropriate places in your app that will allow a user to access every view of your app by using just the remote control of the Android TV device (no view should require using a mouse or touch screen to access it).

Basically, you need to first see which views of your app can not be reached (get focus) by using just the remote control of an Android TV device. Then add code that will detect the arrow keypresses of the remote, and when appropriate, allow the user to bring focus to those unreachable views.

And if your app has any views that can not be fully manipulated with just a DPAD remote, then you may need to replace those views with ones that can be.
 
Last edited:
Upvote 0
Top