The problem specific to not receiving data messages was not because of Firebase but becauses of the background handler as it didn't have @pragma('vm:entry-point')
so that Flutter doesn't remove the function when shaking down when trying to run in release as descibed in Firebase receive message documentation