@akwankl here goes my design recommendation.
Design 1:
Consuming OOTB Push profile Schema: we can rely on appID field (which might different for Andriod and IOS builds, please check build packages naming convention with respective mobile dev) , platform field which will populate apns or fcm based on IOS/Andriod incase of different APN's consumed for integration.

Audience Strategy: Create combined audience with Andriod and IOS profiles first and create platform specific audience with exclusion of combined audience.

This approach will solve where you solution consumes OOTB AJO Push profile Schema.
Design 2:
If you are solution have established different custom schems with push details field group and more fields to differentiative two platforms consume those build the audiences as provided in #1.
Let me know if this solves your need.
~cheers,
Naresh Nakirikanti.