Hi vishalgondal,
I could successfully retrieve my product data on Nokia 303 when I compiled my midlet with Nokia SDK 1.1 (beta) for Java with the following code:
Code:
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Form;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import com.nokia.mid.payment.IAPClientPaymentException;
import com.nokia.mid.payment.IAPClientPaymentListener;
import com.nokia.mid.payment.IAPClientPaymentManager;
import com.nokia.mid.payment.IAPClientProductData;
import com.nokia.mid.payment.IAPClientUserAndDeviceData;
public class IAPtest extends MIDlet implements IAPClientPaymentListener {
Form mainform;
Display display;
protected void destroyApp(boolean arg0) throws MIDletStateChangeException {}
protected void pauseApp() {}
protected void startApp() throws MIDletStateChangeException {
display=Display.getDisplay(this);
mainform=new Form("IAP");
display.setCurrent(mainform);
try {
IAPClientPaymentManager manager = IAPClientPaymentManager.getIAPClientPaymentManager();
IAPClientPaymentManager.setIAPClientPaymentListener(this);
int status = manager.getProductData("123456"); //Your ID here
if (status != IAPClientPaymentManager.SUCCESS) {
mainform.append("Not Product Data will be Received\n");
}
} catch (IAPClientPaymentException e) {
mainform.append("IAPClientPaymentException\n");
}
}
public void productDataReceived(int status, IAPClientProductData pd) {
if (status == IAPClientPaymentListener.OK) {
String title = pd.getTitle();
String price = pd.getPrice();
String sdesc = pd.getShortDescription();
mainform.append(title+"\n");
mainform.append(price+"\n");
mainform.append(sdesc+"\n");
}
else
{
System.out.println("Product data retrieval failed with code:" +status);
}
}
public void purchaseCompleted(int arg0, String arg1) {}
public void userAndDeviceDataReceived(int arg0,IAPClientUserAndDeviceData arg1) {}
public void productDataListReceived(int arg0, IAPClientProductData[] arg1) {}
public void restorableProductsReceived(int arg0, IAPClientProductData[] arg1) {}
public void restorationCompleted(int arg0, String arg1) {}
}
I assume that the status from the QA review of your content item is still set to "Passed". Can you verify this from your Nokia Publisher account?
Can you try the code above by just changing the Publisher ID to the one you are using?
Are you using a back end server to store the purchasable content or do you connect directly? If you are using a back end server, you might need to check this link:
http://library.developer.nokia.com/i...9EC5989D0.html