public void payment(BA ba,double ossz,String uuid, int commrec, int custrec) {
//custrec / commrec: 1:ON,2:OFF,3:CONFIRMATION
int requestCode;
xba = ba;
try {
// Build the payment call
MyPOSPayment payment = MyPOSPayment.builder()
.productAmount(ossz)
.currency(Currency.HUF)
.foreignTransactionId(uuid)
.reference(uuid, ReferenceType.REFERENCE_NUMBER)
.printMerchantReceipt(commrec)
.printCustomerReceipt(custrec)
.fixedPinpad(true)
.build();
ion = new IOnActivityResult() {
@Override
public void ResultArrived(int resultCode, Intent data) {
pResultArrived("payment", resultCode, data);
}
};
try {
ba.startActivityForResult(ion, null); //<-- passing null instead of an intent
} catch (NullPointerException npe) {
BA.Log("ion "+npe.getMessage()); '<<-- exception here
}
BA.SharedProcessBA sba = ba.sharedProcessBA;
try {
Field f = BA.SharedProcessBA.class.getDeclaredField("onActivityResultCode");
f.setAccessible(true);
requestCode = f.getInt(sba) - 1;
} catch (Exception e) {
BA.Log("reqc "+e.getMessage());
throw new RuntimeException(e);
}
MyPOSAPI.openPaymentActivity(ba.activity, payment, requestCode);
} catch (Exception e) {
callResultProc( "payment", false, "Error " + e.getMessage());
}
}