Android unofficial REST Client of 9GAG.
⚠️ This project is no longer maintained. It was built in 2014 as a learning project to demonstrate Android development best practices of that era. The code and dependencies are outdated, but the project remains available for reference.
An unofficial Android client for 9GAG, built with Android Studio + Gradle, following Material Design guidelines.
app/src/main/java/me/storm/ninegag/
├── api/ # Network requests (Volley)
├── dao/ # Data access layer (SQLite)
├── data/ # Data sources
├── model/ # Data models (Feed, Category)
├── ui/ # Activities, Fragments & Adapters
├── util/ # Utilities (cache, bitmap, blur, etc.)
├── view/ # Custom views (SwipeBack)
└── App.java # Application entry| Category | Library |
|---|---|
| Network | Volley, OkHttp |
| Image Loading | Glide |
| View Binding | ButterKnife |
| UI Components | FoldableLayout, AndroidStaggeredGrid, Shimmer |
| Image Viewer | PhotoView |
| Memory Leak Detection | LeakCanary |
git clone https://github.com/stormzhang/9GAG.gitOpen the project in Android Studio and sync Gradle.
Note: This project uses Gradle 2.2.1 and Android Gradle Plugin 1.5.0. You may need an older version of Android Studio or manual Gradle configuration to build successfully.
stormzhang — @stormzhang on GitHub
Copyright 2014 stormzhang
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.No open issues yet, or sync has not completed.