Thank you for this solution Daniel! This is very unpublicized.
The key difference is the string:
"createInsecureRfcommSocket"
versus the string used in the standard publicized hack:
"createRfcommSocket"
Apparently some devices demand it to be "unsecured" else it fails with
"permission Denied"
I'm having the exact same issue with the latest Xamarin build 4.2.2.
I was doing this same thing under "MyDocuments" just fine. But then I
swapped it out to ExternalStorage location, and everything works fine
*except* for code that tries to modify the "CreationTime" (for a Zip inflate
function).