Android Chess Mobile App
This project marked my introduction to Java, the Android SDK, and mobile app development. Through building this chess app, I not only learned how to implement Android-specific features but also gained experience in creating user-friendly interfaces, handling local data storage, and optimizing for performance on mobile devices.
Key features
Timers and Modes: Implemented various timer settings for gameplay flexibility (e.g., 5-minute blitz, 10-minute, and no-timer options) using Android’s CountDownTimer API. This allows for different game paces and caters to casual and serious players alike.
Free Setup Mode: In addition to regular gameplay, the free setup mode lets users place as many pieces as they want anywhere on the board, allowing for scenario-based study or experimental play. Implementing this feature required custom logic for board validation and flexibility, empowering users to explore unique configurations.
Openings Section: An integrated learning section provides brief, accessible guides to well-known chess openings like the Sicilian Defense enabling the app to introduce players to foundational chess strategies.
Offline Multiplayer: Built to operate fully offline, the app uses local multiplayer functionality so players can enjoy the game without needing an internet connection. The openings are also accessible offline.
Publishing experience
Publishing on Google Play Console: This was my first experience using Google Play Console to bring an app to a global audience. The process introduced me to essential publishing steps, such as preparing the app for different devices, creating a compelling store listing, and meeting Google’s quality and compliance standards.
Meeting Google’s Compliance Standards: One challenge was ensuring the app and ads met Google’s policies, especially around content and privacy requirements. I researched and implemented a clear privacy policy and adapted the app’s data handling practices to comply with Google’s standards.
Testing Process through Google Console: As part of Google Console's beta testing procedure, I hired 20 freelance testers to evaluate the app over a 14-day period. This experience provided valuable insights into managing a test team, gathering feedback, and implementing improvements to enhance user experience and stability.
AdMob Integration for In-App Monetization: Integrating Google AdMob for in-app ads was a new experience that introduced me to mobile monetization strategies and best practices. I implemented ads with the intent of creating a non-intrusive, user-friendly monetization model.
Chess Everywhere
I ended up removing the app from play store and removing ads from the code. I only started this project to learn about java, the android environment and how to publish apps. There are already a lot of chess apps out there.