I think the Nexus devices have an emulated sdcard, which is just a symlink so apps and such know where ti be installed.
Strange that preferExternal does not work, I would interpret it as if there is an sdcard, install there, else internal.
So maybe it’s really a problem of the sdcard path or something?
Glad it works now, though it seems like a workaround and not a solution.
Maybe arturo knows anything about that?