1. Short Description
RJ Spin Reward is a premium, gamified "Play-to-Earn" Android application built with Jetpack Compose and Firebase. It allows users to earn virtual currency (coins) by completing interactive tasks such as spinning a wheel, scratching cards, and playing mini-games. The earned coins can be redeemed for real rewards through various withdrawal methods. The app features a high-end, "Binance-inspired" dark-themed UI with glassmorphism aesthetics.
2. Detailed Description
The application is designed as a complete ecosystem for user engagement and monetization. It leverages a cloud-first architecture using Firebase for authentication, real-time data storage, and remote configuration.
Users authenticate via Google Sign-In, ensuring a secure and frictionless onboarding process. Once logged in, they are presented with a sleek dashboard that tracks their progress, balance, and daily goals. The app's economy is tightly controlled via a remote configuration system in Firestore, allowing the administrator to adjust reward amounts, daily limits, and ad frequencies without requiring an app update.
3. Key Features
🎮 Earning Modules (Mini-Games)
Spin & Win: A classic lucky wheel game where users spin to win varying amounts of coins.
Scratch Cards: A digital scratch-to-reveal game providing a sense of surprise and instant gratification.
Tap Game: An interactive clicker-style game where users earn rewards through activity.
Watch & Earn: Direct monetization through incentivized video and interstitial ads.
🏆 Engagement & Retention
Daily Bonus: A 24-hour reward system with a visual countdown timer to encourage daily logins.
Global Leaderboard: A competitive ranking system displaying the top 30 users globally, featuring a podium for the top 3.
Task History: A detailed log of all earned coins and completed activities.
User Profiles: Customizable display names and profile pictures synced across devices via Google.
💰 Withdrawal & Economics
Dynamic Payment Gateways: Withdrawal methods (like JazzCash, Easypaisa, or PayPal) are fetched dynamically from Firestore.
Secure Redemptions: A robust withdrawal system that supports custom fields and screenshot/attachment uploads (via Firebase Storage) for verification.
Anti-Cheat Limits: Hard-coded and remote daily limits for every task type (e.g., max 50 spins per day) to prevent abuse.
📢 Monetization (AdMob)
Banner Ads: Persistent banners at the bottom of screens.
Interstitial Ads: Full-screen ads triggered by user activity (taps), with frequency controlled remotely via a tapThreshold setting.
4. Technical Architecture
Component Technology Role
Language Kotlin Core logic and UI development.
UI Framework Jetpack Compose Modern, declarative UI components.
Authentication Firebase Auth Google Sign-In and profile synchronization.
Database Cloud Firestore Real-time user data, global rankings, and app settings.
Storage Firebase Storage Hosting user-uploaded withdrawal proof screenshots.
Ad Engine Google AdMob Managing banner and interstitial ad delivery.
Navigation Compose Navigation Type-safe routing between screens.
Image Loading Coil Efficient loading of profile pictures and assets.
5. Working Mechanism
Sync & Initialize: On launch, the app initializes the GlobalAdManager and fetches the latest TaskSettings (rewards, limits, links) from Firestore.
Authentication: The user logs in via Google. FirebaseManager automatically creates or updates their profile in the users collection.
Task Execution: When a user completes a task (e.g., spins the wheel):
The app checks the daily limit for that task.
If allowed, it executes a Firestore Transaction to atomically increment the user's coins and record the event in task_history.
Ad Logic: A tapThreshold is tracked globally. Once the user taps the screen a certain number of times, an interstitial ad is pre-loaded and displayed to maximize revenue.
Redemption: When a user reaches the minWithdraw threshold, they submit a request. This creates a document in the withdrawals collection, which is then reviewed by the admin for manual payout.
6. Design Aesthetics
The app follows a "Fintech Premium" design language:
Color Palette: Deep midnight background (#0D0F14) with vibrant Binance Yellow (#FCD535) accents.
Glassmorphism: Extensive use of semi-transparent cards, specular highlights, and glowing borders to create a high-end, 3D glass look.
Micro-animations: Smooth transitions and glowing effects for the Daily Bonus and Game cards.
Demo APK
Download Apk Click Here
Admin Panel




.png)
.png)
