It's the data that the app will use, not really about the app itself (as long as the app accesses the road-surface indicator).
There is pretty much only 5 or so data providers:
- Open source (openstreetmap)
- Country-specific mapping agencies (USGS etc.)
You can get apps that utilise all of the above. The quality of the road surface type captured does vary - some are better in some areas, worse in others. Openstreetmap is amazingly good and accurate in some places. Google is probably the worst of the lot for surface type.
That does not really help you I guess, but may save you spending loads of $$ on apps....