# PureNGA: an Xposed module that strips ads and noise from the NGA Android app

> PureNGA is a Kotlin Xposed module for the NGA forum app that skips the splash ad, filters feed ads, blocks the built-in browser and the update check, and ships in two forms, a standalone module and a repackaged APK. It suits Android users on NGA 9.9.x, and it comes with a signature caveat that the project itself documents.

**chr233/PureNGA** — NGA 去广告Xposed模块 支持 Lspatch

- Repository: https://github.com/chr233/PureNGA
- Website: https://github.com/Xposed-Modules-Repo/com.chrxw.purenga
- Stars: 1,129 · Forks: 14
- Language: Kotlin
- License: AGPL-3.0
- Published: 2026-10-19 · Updated: 2026-10-19 · Language: en
- Canonical page: https://hysenlabs.com/projects/chr233-purenga

## What PureNGA changes in the NGA app

PureNGA is described in one line as an NGA ad removal Xposed module, and the project description adds that it supports Lspatch. The target is the NGA mobile client, the forum app, and the module works by hooking the running application rather than by shipping a different app.

The feature list is the clearest statement of scope. It skips the splash screen advertisement, filters advertisements in the information feed, blocks the update check, blocks the built-in browser, fakes the share action, allows a custom home page, adds automatic check-in, changes the font, supports shortcuts, and filters the advertisement slots in the game recommendation area.

Most of those are cosmetic or behavioural tweaks rather than data features, but two of them are worth separating out. Blocking the update check is what makes the module independent of the official release cycle, and it is also the item most likely to be the reason someone moves to a different version of the app. Blocking the built-in browser redirects links out of the app, which changes how you open external content rather than what you see.

The primary language is Kotlin and the project is a normal Gradle Android build, with an app directory, build.gradle.kts, gradle.properties, settings.gradle.kts and the Gradle wrapper at the repository root. The licence is AGPL-3.0, which matters more than usual for a module that runs inside someone else's application, and there is a CHANGELOG.md alongside it.

## Two builds: the bundled APK and the standalone module

The project publishes two distinct artifacts, and the version table explains the trade-off in a single line each.

The bundled build, called the NGA purified version, does not need the Xposed framework, installs over the original app, and is large. The standalone module build depends on the Xposed framework, updates independently, and is small. The source repository is chr233/PureNGA and the Xposed repository is Xposed-Modules-Repo/com.chrxw.purenga, with separate release pages for each.

The reason for the size difference is mechanical. The bundled version repackages the APK, which means it carries a copy of the whole application, while the standalone module is only the hook code and rides along with the official app you already have.

The cost of the bundled version is signing. Repackaging produces a build whose signature does not match the official version, which is exactly what the FAQ describes. The project also maintains net disk mirrors for the downloads, on 123 pan and Quark pan, each with an extraction code.

If you use the standalone module you need a rooted device with Xposed, or a patched app via Lspatch. The project states that it is compatible with Lspatch and supports NGA client versions in the 9.9.x line, and that it is theoretically backward compatible.

## The compatibility notice that decides your version

The announcement section at the top of the README is the most important text in the document, and it is short. The current module is best adapted to version 9.9.61 and earlier. The next line says that newer versions are not necessarily going to be followed up.

That is an unusual and unusually honest statement, because an Xposed module breaks when the app it hooks changes, and the app in question is a fast moving forum client with frequent releases. A module that says it targets up to 9.9.61 and that later versions may not be supported is telling you that the work depends on the author having time to update the hooks.

It also has a second effect, because blocking the update check is one of the features. Users who install the module stay on the version the module supports, which is the point of the feature and also the reason it is listed.

The setting menu entry is version dependent in a smaller way. From version 1.16.0 onwards, the plugin menu can be opened from the about page, which is how you get to the module's own settings without an Xposed manager shortcut.

The last push to the repository was on 2026-10-15, and the recent releases are 3.4.0 from 2026-09-08, a 3.3.2-fix from 2026-08-20 and 3.3.2 from 2026-08-12, so the module itself is being maintained even where app compatibility is not guaranteed.

## Account risk, as the project describes it

The FAQ opens with the question users actually care about, whether they will get banned, and the answer is the technical reason the standalone module is the safer choice.

The stated principle is that the module is based on Xposed modification and does not directly modify the app itself, and that the official app currently has no mechanism to verify the client. In other words, the risk analysis in the project rests on the app not checking, which is a property of the current app version rather than a guarantee.

The repackaged build is a different matter, and the FAQ is explicit about it. The integrated version works by repackaging the APK, which makes the packaged build's signature differ from the official version, and the guidance is to trust it manually. A third entry says that repackaging affects the APK signature, so sharing the link instead, or using the standalone module, avoids the problem. The README repeats that instruction three times in a row above a table of third party resellers, which underlines how strongly the project feels about it.

This is the practical summary. The standalone module is the low friction path for anyone who has a working Xposed or Lspatch setup, and the bundled build is the path for people who do not, at the cost of a signature that differs from the official one.

## The anti-resale stance and the funding model

The disclaimer section is unusually explicit about money. The app is entirely free, and if you paid for it through any channel you are told to request a refund. The project does not tamper with, modify or obtain any personal information or forum account information. It asks users not to resell the app and says free distribution is unrestricted, and it states that anyone who uses the app is taken to accept the disclaimer.

On funding, the project says it only accepts sponsorship through 爱发电, and it states that sales on 闲鱼 and 淘宝 count as resale. Four images of what are described as third party resellers are placed under the heading that follows.

So the economic model is donations from users, with a hard line against the paid copies that circulate. The licence is AGPL-3.0, and the disclaimer language about users who break the rules of Chinese law bears in mind that this is a project used in the Chinese Android ecosystem.

None of this makes the project unusual, and none of it is a technical decision. It does mean the download channel matters: the releases on GitHub and the Xposed repository are the sources the project points at, and the net disk mirrors are mirrors rather than the primary channel.

## What the module does not do

The boundaries are worth stating plainly, because a reader who expects a modified client will find several gaps.

It does not change the content of the forum. Every item in the feature list is about advertisements, navigation and the shell of the application, not about the posts themselves. It does not add features to the app, and it does not provide any client other than the modified NGA client, so it is not a general purpose Xposed utility for other apps.

It does not remove the update check for the bundled build in a way that keeps the app current, because the bundled build carries its own copy of the application and therefore its own version. If you use the standalone module you get the app from the official source, which means you are relying on the module keeping up with the app it hooks, which is the same compatibility question from the other direction.

The FAQ does not cover a fallback if a hook fails, and the announcement does not say what happens to a module after the app version it targets is no longer served. The known failure mode of this kind of module is simply that the feature stops applying, and the project is candid that newer versions may not be followed up rather than promising otherwise.

## Conclusion

Adopt PureNGA if you read NGA on an Android device and want the splash ad, the feed ads and the in-app browser out of the way without waiting for the official app to change, because the module operates on the running app through Xposed and the standalone build keeps updates independent. Do not adopt the repackaged bundled build if you need a signed app that matches the official release, since the packaging changes the APK signature and the project tells you to use the link or the standalone module instead. Before you install, check the compatibility note, because the module states it is best matched to NGA 9.9.61 and earlier and that newer versions are not guaranteed to be followed.

## FAQ

### Will using PureNGA get my NGA account banned?

The project states that the module is based on Xposed modification and does not directly modify the app itself, and that the official app currently has no mechanism to verify the client. The repackaged bundled build is the different case, because its signature differs from the official version.

### Which NGA app versions does PureNGA support?

The announcement states that the current module is best adapted to version 9.9.61 and earlier, and that newer versions are not necessarily going to be followed up. The project also states that it supports NGA 9.9.x clients and is theoretically backward compatible, and that it works with Lspatch.

### What is the difference between the bundled and standalone versions of PureNGA?

The bundled NGA purified version needs no Xposed framework, installs over the original app and is large, while the standalone module depends on the Xposed framework, updates independently and is small. The bundled version works by repackaging the APK, which changes the signature relative to the official build.

### How do I open the PureNGA settings menu?

From version 1.16.0 onwards the plugin menu can be opened from the about page of the app.

## Sources

- [chr233/PureNGA on GitHub](https://github.com/chr233/PureNGA)
- [License: AGPL-3.0](https://github.com/chr233/PureNGA/blob/main/LICENSE)
- [Project website](https://github.com/Xposed-Modules-Repo/com.chrxw.purenga)
- [README](https://github.com/chr233/PureNGA/blob/main/README.md)
- [Releases](https://github.com/chr233/PureNGA/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/chr233-purenga
