Is there anything in the blackberry api or in j2me which would allow communications and/or pairing to a bluetooth device using the MAC address? (Assuming the device is not-discoverable)
Do you want to know how to generally connect to a device given the MAC address or are you interested in how to circumvent Blackberry specific security/permission issues? I have no idea for the latter case, but for the first case, here is an approach:
To do a service search on a remote device, you need an instance of the class javax.bluetooth.RemoteDevice, which you usually retrieve by a device search using a DiscoveryAgent. If you already have a device address you cannot create a RemoteDevice instance directly because the corresponding constructor of RemoteDevice is protected.
To circumvent this, you can create a new class extending RemoteDevice. In this derived class declare a public constructor which takes the device address. This public constructor is then able to call the protected super constructor:
public class MyRemoteDevice extends RemoteDevice {
public MyRemoteDevice(String addr) {
super(addr);
}
}
Now you have RemoteDevice for a specific device address without doing a device scan and without querying the known devices list.
Note: While this approach works according to my experience, it may still fail on a Blackberry device in case RIM implemented some hidden functionality in the RemoteDevice class which is ignored if a RemoteDevice instance gets created as shown here.