code: public void scanDevices()
      {
          for (int deviceId : inputManager.getInputDeviceIds()) {
              addDevice(deviceId);
          }
          for (GVRGearCursorController controller : gearCursorControllers)
          {
              cache.put(CONTROLLER_CACHED_KEY + controller.getControllerID(), controller);
          }
      }
docs: Scan all the attached Android IO devices and gather
  information about them.
  <p>
  This function is called once at initialization to enumerate
  the Android devices. Calling it again is not harmful but
  will not gather additional information.