I've researched a bit into this topic and have discovered that the last time this was asked (specifically for Google Maps), the answer was "it's illegal". Seeing as Google Maps now provides you with the ability to do Offline Caching yourself, why would it still be illegal?
Anyway, I have an app that I need to package a small map for (a few square miles). I've looked into doing osmdroid but it's very difficult to follow what they're doing. I've looked at their SVN repo's and checked out their sample app on the Play Store and was disappointed. The app itself shows pretty much exactly what I need, but it uses some weird form of their code, not included in the SDK. osmdroid seems like my best option at this point but there doesn't seem to be much references available.
If anyone could point me into the right direction of getting started with osmdroid OR just some other SDK that allows for packaged maps, I'd greatly appreciate it.
Note: I've tried doing it in osmdroid but when doing
mapView.setUseDataConnection(false);
The map loads nothing, even though the files appear to be in the correct directory (as it downloads all of its files there as well)