EhViewer 2.0.2.3 is built for E-Hentai on Android
EhViewer is a dedicated Android browser for E-Hentai and ExHentai. It brings gallery search, reading, downloads, favorites, history, comments, and account access into an app instead of a mobile browser. The project is Chinese-first. Its README includes an English one-line description and Linux build command, but the release notes and troubleshooting material are overwhelmingly Chinese. That language split matters because many practical details live in the changelog rather than a separate manual.
Release 2.0.2.3 arrived on August 1, 2026. Its notes mention fixes for delayed page numbers, reading-progress resets, image-decoding errors, and editable comments. Earlier 2026 entries cover download migration, resume behavior, WebView login, storage permissions, and several device-specific faults. This history describes an app under regular repair, with changes tied to real Android behavior. It also means readers should check recent notes before upgrading, especially when their local downloads matter.
Android 6 is supported, while the build targets Java 21
The app configuration sets a minimum SDK of 23, which corresponds to Android 6, and a target SDK of 30. It compiles against SDK 35 and asks for Java 21. Native libraries are built for armeabi-v7a, arm64-v8a, x86, and x86_64, so the repository carries more than ordinary Kotlin or Java application code. Our measured checkout contained 2,561 files, about 436,400 source lines, and occupied 36 MB before a build.
The README's Linux setup is only clone, change directory, and run ./gradlew app:assembleDebug. It does not explain Android SDK installation, environment variables, or wrapper permission repair. Gradle 9.5 is pinned in the wrapper configuration. Google services are conditional on a local google-services.json, so that file is not required for the base plugin setup shown in source. Anyone maintaining a fork will need to understand the Android toolchain beyond the four-line build section.
What happened when we ran it
Our sandbox install succeeded in 9 seconds at commit daa1510. The build stopped after 8 seconds with exit 126, and the last log line was bash: line 1: ./gradlew: Permission denied. The command never reached a Gradle compilation result. That distinction matters: the run proves the supplied invocation could not execute the wrapper in our fresh unprivileged container, but the log does not prove that the Java or native source fails to compile.
The test step ended the same way after 31 seconds. It returned exit 126 and printed ./gradlew: Permission denied, so no test result or test count was produced. Our scan found 2 CI workflow files, no Dockerfile, and no tests directory. Those signals do not replace a runnable suite. Before changing application code, a contributor should make the wrapper executable in a clean checkout and rerun the documented Gradle tasks.
Login still depends on cookies, WebView checks, and network conditions
E-Hentai access is where this client stops behaving like a standalone reader. The 2026 changelog discusses cookie login, Cloudflare verification, user-detail lookup, direct connections, SNI settings, and cases where web login needs a VPN. Issue 2831, opened on August 29, describes a user caught in a repeating human-verification screen even though the same VPN and account worked in a desktop browser. That report is still open, so it is a current limitation rather than old release history.
Storage behavior also deserves care. Version 2.0.1.4 moved users toward Android's manage-files permission for reading older galleries, while later releases changed download migration and recovery. One Watch X2 report describes pages failing to read or write across several 2.0.1.x releases, with a manual remove, clean, and redownload sequence as a workaround. A reader with a large offline library should back it up before changing builds and confirm that imported, moved, and resumed downloads still open.
Chinese documentation is detailed on fixes and thin on architecture
The README is 14,422 bytes and spends much of that space on dated release notes, download mirrors, acknowledgements, and a library list. A linked FAQ points to issue threads for common failures such as status 509, download errors, pToken errors, crashes, and ExHentai access. That material helps Chinese-speaking users search for a symptom. It gives an English-speaking developer little guidance on module layout, testing, release signing, or the login and storage model.
Licensing needs a human decision before redistribution. GitHub returns NOASSERTION instead of a recognized SPDX identifier. The 47,120-character LICENSE file begins with the GNU GPL version 3 text, then inserts Apache 2.0 text before continuing with more GPL material. A personal build does not require settling that mix. A company shipping a modified APK should ask the maintainer which terms cover the project and document the answer.
August activity is strong, while 548 open items need triage
The repository was pushed on August 28, 2026, and GitHub showed 26,564 stars when fetched. Its 548 open issues and pull requests split into 507 issues and 41 pull requests. New issue reports and feature pull requests were arriving during the final week of August, so the queue is active rather than simply abandoned. The size of that queue still makes search and reproduction important before filing another device or login report.
EhViewer earns its place for one narrow audience: Chinese-speaking Android users committed to E-Hentai. Mihon and Komikku are better fits when several manga sources and an extension model matter more. For source contributors, the immediate job is less glamorous: get ./gradlew to execute in a fresh checkout, record a real build and test result, and resolve the license text before distributing a fork.

