There's a a few threads on the forum discussing how to handle devices with built in 'external' storage.
I don't remember whether they came to any conclusion on the best way to deal with such devices though.
Problems arise when manufacturers use different paths for 'internal' external storage, and apps are hardcoded to use a path that is not compatible with the device.
Currently the OSMDroid cache folder location is hardcoded, there's a recent thread on this forum asking if it could me moved and there a few requests on the official OSMDroid issues page asking if the cache location could be made user definable but the OSMDroid developers have not made any such changes and seem to have no intention of doing so.
Presumably you try to run OSMDroid and it fails because it cannot find writeable external storage?
Do you see any relevant log messages when you try to run OSMDRoid on your Nexus?
I have an Ainol Elf-II tablet that has both internal storage and an SD card slot.
I just removed the SD card and rebooted the device and ran the Simple Map demo, it works fine,using the Elf's internal storage instead of the (removed) SD card.
Can you run this code on you Nexus 4 and post the log:
Code:
Sub Activity_Create(FirstTime As Boolean)
Log("File.ExternalWritable="&File.ExternalWritable)
Log("File.DirRootExternal="&File.DirRootExternal)
End Sub
Martin.