Just so I know how to answer, I want to clarify. Ignore pairing from the Android settings and just use the app. Does the Java code you have in your post make the app ask for a pin? It shouldn't, but I want to make sure.
If this is the case, will it work for you?
For your timing issue, I know it's kind of kludgy, but have you tried: