Troubleshoot WeChat Login
Trace one login attempt from the app to WeChat and back to your server. Record a correlation ID at each step so you can identify where the flow stopped.
| Symptom | Check first | Next action |
|---|---|---|
| WeChat does not open | SDK initialization, app availability, and the request-dispatch result | Check the installed SDK and device; keep another login method available. |
| Authorization fails only in one build | Package/bundle ID and signing or callback configuration | Compare that exact build with the configuration supplied to NextAppMarket. |
| WeChat opens, but your app receives no result | Android callback activity or iOS URL/Universal Link forwarding | Trace the lifecycle callback into the SDK handler. |
| Callback arrives, but the backend rejects state | Attempt expiry, initiating session, and repeated submission | Start a new login attempt after resolving the mismatch. |
| Code exchange fails | AppID/AppSecret pairing, code age, and whether the attempt already completed | Use the assigned credentials and inspect the provider's error code. |
| A user is assigned the wrong local account | Identity namespace and account-linking logic | Use verified identity mappings and an authenticated linking flow. |
| Login works until the app restarts | Your own session storage and expiry | Fix local session persistence rather than repeating provider authorization on every launch. |
Handle cancellation normally
A customer can decline authorization or close WeChat. Return them to your login screen with a clear way to retry or choose another method. Do not exchange an absent code or automatically reopen the authorization screen.
Check the exact application
Compare the platform application ID, WeChat AppID, installed package/bundle, distribution signing configuration, and callback setup. These identifiers belong to different systems. Copying the platform ID into the WeChat SDK will not select your WeChat application.
Ask NextAppMarket to review the configuration
Provide the application ID, WeChat AppID, platform, OS and SDK versions, build version, callback stage reached, error code, and timestamp. Include the package/bundle and signing identity through the established configuration handoff when they changed. Omit AppSecret, authorization codes, and access tokens.
For backend failures, include your attempt correlation ID and whether the same attempt previously completed. This distinguishes an expired authorization from a session or account-mapping issue.