I use Osmand+ on Android, and it is very good. It provides you a simple interface to download maps to use them offline and contains a lot of information, including, in some countries, public transportation routes (I want to go from a to b, using buses or local trains).
The one thing I don't like is searching for a specific address, but it's totally livable and it does it's job very competently. Made in Germany, based on open street map, which is a UK non profit.