KeyEvent class, along with all Android classes, is documented in the Reference tab of developer.android.com
I would consider any kind of keyboard as being an optional, unlikely feature. Devices with keyboards are from the past before Android went touch. Code for keyboard-less devices with a touch screen.
So you need to devise a user-experience whereby the user is touching on-screen controls. Perhaps as a secondary user-experience if a user has a device that has a directional keys, the user can use those keys instead. But the primary user-experience will need to be on-screen controls.