get Result
Retrieves the PreTransactionResult - never null. Call PreTransactionResult.getLoyaltyData on it to check whether loyalty card data was collected.
If waitForResult is true, blocks the calling thread until the background wait completes, or until cancel is called from another thread - which unblocks this call early with an PreTransactionResult whose PreTransactionResult.getLoyaltyData is null.
If waitForResult is false, returns immediately with a PreTransactionResult reflecting the current state: PreTransactionResult.getLoyaltyData returns the collected data once available, or null otherwise - whether because the wait has not collected anything yet or because it already finished without collecting anything. Callers that need to tell those two apart should use getResult(true)/cancel instead of polling with getResult(false).