I’m also not quite sure what you want to do. Do you intend to use pre-rendered images (tiles) or do you want to store raw data on the phone and render it “live”?

If you are looking for an example of the former, have a look at Maps (-) - it downloads tiles and displays them as a map, and can also store them for offline use. I think (but don’t know for sure) that OsmAnd can do both tile display and live rendering from raw data. Navit does live rendering using data first converted into its own file format, but I don’t know how much of the code for the Android port is actually written in Java.

These are all OpenSource, so you should be able to figure out how they work internally. There’s also a List of OSM-related Android software if that helps you.