public final class WXPayHttpReporter extends java.lang.Object implements IWXPayReporter
IWXPayReporter: dedicated small thread pool + in-memory
batching + explicit stage-boundary flush + bounded queue, over HttpURLConnection (form-urlencoded POST).
Send-once on failure (no retry, aligned with iOS/HarmonyOS). Fully self-contained; any failure
is swallowed to never affect the host app.HttpURLConnection(form-urlencoded POST)。发送失败即静默丢弃、不重试(与 iOS/鸿蒙一致)。
完全自洽,任何异常都吞掉,绝不影响宿主 App。| Constructor and Description |
|---|
WXPayHttpReporter() |
| Modifier and Type | Method and Description |
|---|---|
void |
flush()
主动把攒批队列中的 pending 事件立即发出(用于拉起前、拉起结果和回包等阶段边界,
使正常成功路径的 HTTP 调用保持在最多 4 次)。
队列为空时应为 no-op;实现必须异步执行、失败静默、绝不抛出、不阻塞调用线程。
|
void |
report(java.util.List<WXPayReportEvent> events,
boolean immediate)
提交一批待上报事件。
|
public void report(java.util.List<WXPayReportEvent> events, boolean immediate)
IWXPayReporterreport in interface IWXPayReporterevents - 待上报事件(非空、至少 1 条)。immediate - true 表示尽快单独发送(用于 pay_start 发起立即单发);
false 表示进入攒批队列,等待阶段边界主动 flush。public void flush()
IWXPayReporterflush in interface IWXPayReporter