アプリにアプリ内購入 v3 を実装しようとすると、null 例外が発生します。以下は私のコードです:
mServiceConn = new ServiceConnection() {
@Override
public void onServiceDisconnected(ComponentName name) {
mService = null;
}
@Override
public void onServiceConnected(ComponentName name, IBinder service) {
mService = IInAppBillingService.Stub.asInterface(service);
}
};
MainActivity.this.bindService(new Intent(
"com.android.vending.billing.InAppBillingService.BIND"),
mServiceConn, Context.BIND_AUTO_CREATE);
try {
System.out.println("mService " + mService);
Bundle buyIntentBundle = mService
.getBuyIntent(
3,
getPackageName(),
"android.test.purchases",
"inapp",
"aaa");
PendingIntent pendingIntent = buyIntentBundle
.getParcelable("BUY_INTENT");
startIntentSenderForResult(pendingIntent.getIntentSender(), 1001,
new Intent(), Integer.valueOf(0), Integer.valueOf(0),
Integer.valueOf(0));
} catch (RemoteException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SendIntentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
私が見る例外は、サービスがnullであることです。コードに配置した sysout は null を出力しています。上記のコードはすべて、私のアクティビティの onCreate メソッドの一部です。ポインタはありますか?