Hi All,
We are developing a J2ME midlet (MIDP 2.0 ,CLDC 1.1)which makes bluetooth connection to other devices.The bluetooth connection is working perfectly on indian nokia phones with Airtel as carrier.But when we deploy the same midlet on Nokia E71 US phone with carrier as AT&T ,the bluetooth connection is not working.The sample code is as follows:
public void run(){
try{
StreamConnection connection = (StreamConnection)Connector.open(btConnectionURL);
//
// open an input stream to get some data
//
InputStream in = connection.openInputStream();
byte[] serialData;
readData = true;
while(readData == true){
int lengthavai=0;
lengthavai = in.available();
if(lengthavai > 0){
serialData = new byte[lengthavai];
int length = in.read(serialData);
System.out.println("data read: " + new
String(serialData));
dataViewForm.append(new String(serialData));
}
}
in.close();
connection.close();
}catch(IOException ioe){
ioe.printStackTrace();
}
when we try to connect on
US Phones,the execution hangs at the following line of code:
StreamConnection connection = (StreamConnection)Connector.open(btConnectionURL);
No exception is caught.
Our midlet is not signed.
In the Forums it is said that the problem is with the unsigned midlet.AS some of the US carriers block the secure API usage on Unsigned midlet.
But our question is, if we buy a code signing certificate from Verisign or Thawte and sign the midlet, will this problem be solved.
Any other alternative solutions for this ???
Immediate help will be appreciated.
Thanks,
Mari Raja