How to force the mobile data (3G/4G) connection on a single app like Google voice recognition? When an android phone is connected by both wifi and mobile data (3G/4G), it will preferentially use wifi since this saves battery and mobile data bandwidth.  However, my  mobile connection is more reliable than my wifi, and there are some apps that use only a small amount of data but which I want to operate reliably.  Google voice recognition is the primary example.

My understanding is that each app has it's own preferred connection type (almost always set to wifi) at the level of the operating system, but that this setting is not not available to the user.  How can I change an app's preference to mobile data? If necessary, I am open to solutions that only work for Google voice recognition (e.g. a buried user option).
There is an app on the Play Store called "NoRoot Firewall" which may be used for this purpose.

Inside the app you can select which app you want to connect to WiFi or mobile data.