I initially also thought that gyro acceleration was measuring angular acceleration, but upon writing an android app I printed out these log statements:
07-08 13:29:48.473 12183-13701/<package name> V/GyroscopeManager: X: 0.9863281
07-08 13:29:48.473 12183-13701/<package name> V/GyroscopeManager: Y: -0.0014648438
07-08 13:29:48.473 12183-13701/<package name> V/GyroscopeManager: Z: -0.020019531
07-08 13:29:48.480 12183-13646/<package name> V/AccelerometerManager: X: 0.9863281
07-08 13:29:48.480 12183-13646/<package name> V/AccelerometerManager: Y: -0.0014648438
07-08 13:29:48.480 12183-13646/<package name> V/AccelerometerManager: Z: -0.020019531
These were printed while the band was at rest on a table, so there should be zero angular acceleration. To the contrary, the band registers the exact same as the accelerometer. I would be interested to hear the reason behind this. Furthermore, I have issues maintaining connectivity when streaming both accelerometer and gyroscope at high frequencies at the same time. To avoid this problem, they should really get rid of the BandAccelerometerEventListener class and have people just get acceleration from the gyroscope.
Edit:
Sorry, this might not be what you are looking for. I thought I was on something more like StackOverflow. The gyroscope also provides angular velocity, which the accelerometer doesn't provide. If I had to guess, I would say they come from the same physical sensor and just have more complex calculations to get the angular velocity.