overrideMediaVolumeForRing parsed and logged the fraction argument but called the no-arg override, which always forced STREAM_MUSIC to the device maximum. On-device logcat confirmed it: the Dart side sent fraction=0.5 yet the stream was set to index=30 of 30. Combined with the player now ramping to its full range, the ring peaked at 100% of the device maximum instead of the configured 50%. The override now sets the stream to round(max * fraction), clamped to at least 1 so rounding can never mute the ring. With fraction=0.5 the stream caps at half the device maximum and the player ramps up to that cap, so the ring peaks at the configured level and the opening buffer click drops to the configured fraction rather than full scale.