audienceFraction property

double? audienceFraction
final

This package's answer: the fraction of the track's audience that has been given this release. Null when that cannot be said.

PlayReleaseStatus.audienceFraction is the rule, so it has one definition rather than a copy here and another in a consumer's fixtures — the asymmetry that cost PlayReleaseStatus.serving a round trip through a consumer's tree before it was made public.

Named for what it measures rather than for the process, and that is the whole of why it is not rolloutFraction. On a PlayReleaseStatus.halted release rolloutFraction: 0.2 reads as "the rollout is at 20%", which sounds live, with serving: false beside it saying otherwise — a pair correct in only one reading order, which is exactly the mechanism AppStoreBuildEntry.needsNewUpload was renamed to escape. Who has it is true in every state on its own.

Three things it is not, because a bare number is read as more than it is:

  • Not a fraction of the app's users. It is a fraction of the track's audience, and an internal track's audience is a list of addresses.
  • Not adjusted for country targeting. Play can restrict a release to a set of countries; this document carries neither that field nor its includeRestOfWorld flag, so a targeted rollout's fraction is a fraction of the targeted set.
  • Not a statement about which devices. Play chooses who is eligible.

Implementation

final double? audienceFraction;