Does the solar heater only heat air when the daytime hours are not overcast?
Nope. It does an effective job of converting any incident radiation (with a wavelength longer than ultra-violet) to heat. It doesn’t make much difference whether that radiation is from a point source (sun in a clear sky) or scattered (passed through diffusing clouds). The amount of heating that takes place is a function of solar flux.