私は J2ME ベースのアプリケーションを持っていますが、IAP を購入するのは初めてです。私のシナリオでは、ユーザーが最初にアプリケーションを購入した後、アプリケーションを 1 か月間使用できるようになり、その後は再度購入する必要があります。同様に、さらに使用したい場合は、毎月購入する必要があります。だから私はブール変数を作成し、30 日ごとにそれを false にし、ユーザーがアプリ内購入でアプリケーションを購入した場合、この変数を true にすることができます。したがって、1 か月後にユーザーがさらに使用したい場合は、ボタンを押すことで再購入できます。このボタンでは、次のコードを使用しています。
int status = manager.purchaseProduct(PURCHASE_ID,
IAPClientPaymentManager.FORCED_AUTOMATIC_RESTORATION);
if (status != IAPClientPaymentManager.SUCCESS) {
System.out.println(Messages.getPaymentError(status));
return false;
}
return true;
そしてコールバックで....
public void purchaseCompleted(int status, String purchaseTicket) {
System.out.println("Purchase Completed : "+status+" "+purchaseTicket);
if (status == OK) {
System.out.println("ok");
} else {
System.out.println("Not ok");
}
}
しかし、コールバックでコードを取得しています:-35 ....理由はわかりません.... nokia asha 303シミュレーターを使用していることに注意してください。ローカルSDKにアプリ内シミュレーションを使用すると、応答コードが表示されますわかった。しかし、nokia サーバーを使用すると、エラー コード -35 in purchase completed が表示されます。