Android platform layer
The layer is a platform shell only; nothing duplicates or gates the SFS2X/HTTP game protocol — cleanly separable.
Permissions
CAMERA = avatar/chat photo upload + Zendesk support attachments; RECORD_AUDIO = Tencent GME/TRTC voice rooms + voice messages; READ/WRITE_CALENDAR = genuine event reminders via CalendarContract.
SDK inventory
| Category | SDK |
|---|---|
| Analytics/attribution | AppsFlyer, Firebase (Analytics/Crashlytics/FCM), ThinkingData (China) |
| Anti-fraud | ShuMei (数美), device fingerprint, Obfuscator-LLVM hardened |
| Anti-cheat | Tencent ACE ("anogs"), root/inline-hook detection |
| Voice chat | Tencent GME/TRTC, own BoringSSL stack |
| IAP | Google Play Billing v8.3.0 (alt-billing programs) |
| Support | Two full SDKs bundled: Zendesk and AIHelp, switched server-side by remote-config flag |
| Ads | None (no AppLovin/ironSource/Unity Ads/AdMob); IAP-only monetization |
Cleartext & dead endpoints
usesCleartextTraffic="true" at manifest level; network security config permits cleartext with system CAs only. Two FunPlus plain-HTTP endpoints present but dead in 1.0.364 static: analyse-aps.readygo.tech/{postback,clientevent}.php (in RecordHttpUtil, no callers; PushRecordManager.RecordToHttp* bodies empty) and upload-img-aps.readygo.tech/get_apk_ver.php (side-load self-update, only for package com.readygo.aps.gp, not com.fun.lastwar.gp). Neither gates gameplay.
Remote kill switch static
libil2cpp.so calls Java class ConfigFetch → raw SSLSocket GET https://storage.googleapis.com/remote-config-analytics/?t= with a spoofed okhttp/3.12.1 User-Agent; integer body → native Java_com_common_ConfigFetch_setConfig, which calls exit(0) when the value is 1 on release builds (2 on debug) — confirmed by arm64 disassembly. Whether the request resolves is open (Base64.DEFAULT appends a newline to the encoded package name).
Anti-cheat JNI split
libanogs.so (Tencent ACE) has a dead Java wrapper com.gamesafe.ano.AnoSdk; C# calls native directly via [DllImport("anogs")] P/Invoke, bypassing Java. Detection/report data travels over a local Unix pipe to Tencent's own backend, not the FunPlus game-server wire.