The unhelpful answer is: it depends.
Obviously, you should design your application to reach as many people as you can with a core set of functionality. For us, this means passing on possibilities that work only on a small set of devices. (Unless that small pool can generate enormous revenue)
Further, we add nice-to-have features to our core app that can be switched on and off at build or run-time by our QA team depending on the device.
Sorry I can't be more specific. If you're looking for more information feel free to email me. :-)