Gamepad Soporte Android

Estoy intentando agregar compatibilidad con el gamepad a mi juego, pero no puedo encontrar en ningún lugar cómo obtener los eventos de movimiento de los joysticks de un gamepad.

Tengo algo como esto, pero nunca parece ser llamado o hacer nada. Estoy probando en un XOOM con JellyBean y mi gamepad funciona para navegar por los menús.

@Override
public boolean onGenericMotionEvent(MotionEvent e) {
    if ((e.getDevice().getSources() & InputDevice.SOURCE_CLASS_JOYSTICK) != 0) {
        float x = e.getX();
        float y = e.getY();
        mJoy1.set(x, y);
        mJoy2.set(-1,1);
        mRenderer.onAxisMoved(mJoy1, mJoy2);
        return true;
    }
    return false;
}

¿Cómo hago para leer los datos del eje desde el gamepad?

Respuestas a la pregunta(1)

Su respuesta a la pregunta