Blood Donation Android App with Google Maps
A production-ready blood donation android app in Java/XML with Firebase Realtime Database and Google Maps API. Two apps—Donor and Hospital. Hospitals post blood requirements; donors nearby discover requests on the map/list and send donation requests. Hospitals approve/decline and the status updates in real time. Includes an NLP chatbot for eligibility and safety guidance.
- ✓Complete Android Studio project (Java/XML) + Firebase setup
- ✓Location-based matching with Google Maps markers & distance
- ✓Real-time approvals with secure role-based access
Project Objective
Build a reliable, privacy-aware blood donor finder app that connects hospitals and donors using geolocation. Hospitals publish verified blood requirements (type, units, urgency), donors nearby discover and request to donate, and hospitals confirm suitable donors with instant status updates. An NLP chatbot answers eligibility, preparation, and post-donation care queries.
How It Works
- Hospital App: Create a blood request post with blood group, units, hospital location (lat/lng), contact, and notes.
- Donor App: Fetch current location and load nearby requests on Google Maps & list (sorted by distance).
- Request to Donate: Donor taps a post → reads details → sends request; hospital receives a notification.
- Approve/Decline: Hospital reviews donor profile and approves/declines. Donor sees live status changes.
- NLP Chatbot & Videos: Built-in assistant and a video tab for donation safety, diet, and after-care tips.
Project Modules
Publish, manage, and close requests; approve/decline donors.
- Create/Edit/Delete posts
- Verify donor requests
- Mark fulfilled
Discover nearby requests and send donation requests.
- GPS location fetch
- Map & list views
- Live request status
Markers with info windows, directions deep links.
- Haversine sorting
- Radius filters
- Open in Maps
Donation eligibility Q&A and safety video hub.
- Contextual prompts
- Guardrails + FAQs
- YouTube/WebView tab
Firebase Realtime Database Structure (Example)
{ "hospitals": { "hospUid1": {"name":"City Hospital","role":"hospital","lat":18.5204,"lng":73.8567} }, "donors": { "donorUidX": {"name":"Amit","role":"donor","bloodGroup":"B+","lastDonatedAt":1723000000} }, "requests": { "reqId123": { "byHospital":"hospUid1", "bloodGroup":"A+", "units":2, "lat":18.521, "lng":73.857, "notes":"Urgent for surgery", "status":"open", "createdAt":1725345600 } }, "donationRequests": { "reqId123": { "donorUidX": { "status":"pending", // pending|approved|declined|completed "requestedAt":1725350001, "updatedAt":1725350001 } } } }
Sample Firebase Security Rules (High-Level)
// Realtime Database Rules (illustrative) { "rules": { ".read": false, ".write": false, "hospitals": { "$uid": { ".read": "auth != null", ".write": "auth != null && auth.uid === $uid" } }, "donors": { "$uid": { ".read": "auth != null && auth.uid === $uid", ".write": "auth != null && auth.uid === $uid" } }, "requests": { ".read": "auth != null", // donors need to read open requests "$reqId": { // only hospital who created can write/close ".write": "auth != null && root.child('requests/'+$reqId+'/byHospital').val() === auth.uid" } }, "donationRequests": { "$reqId": { "$donorUid": { // donor creates/updates own request; hospital updates status ".read": "auth != null && (auth.uid === $donorUid || root.child('requests/'+$reqId+'/byHospital').val() === auth.uid)", ".write": "auth != null && (auth.uid === $donorUid || root.child('requests/'+$reqId+'/byHospital').val() === auth.uid)" } } } } }
Key Features & Benefits
- Two-app workflow aligning hospital supply with donor availability.
- Maps-first UX to quickly locate nearby hospital requests.
- Real-time updates for request lifecycle and notifications.
- NLP assistant for donor eligibility, diet, and after-care.
- Secure roles with Firebase Authentication & Rules.
Android Integration Sketch (Java/XML)
// PSEUDO-CODE (illustrative) // DonorMapViewModel.java void loadNearby(double lat, double lng, double radiusKm) { // 1) Listen to /requests where status == open // 2) Compute distance Haversine; filter radius; sort by ascending distance // 3) Expose LiveData> to map & list adapters } // Donor sends request void sendDonationRequest(String reqId, String donorUid) { // Write /donationRequests/{reqId}/{donorUid} = {status:'pending', requestedAt:now} // Add listener for status changes to update UI in real time } // Hospital approval void setDonationStatus(String reqId, String donorUid, String newStatus) { // Only hospital owner can write; rules enforce this } // NLP Chatbot (Callable Function) exports.donorChatbot = functions.https.onCall((data, context) => { // Validate auth, sanitize input; apply prompt with safety guardrails // Return structured suggestions (eligibility, prep, after-care) });
What You Get
Item | Included | Notes |
---|---|---|
Android Source Code (Java/XML) — Donor & Hospital | ✅ | Clean architecture, comments, modular |
Firebase Setup | ✅ | Auth + Realtime DB + Rules templates |
Google Maps Integration | ✅ | Markers, clustering (optional), distance sort |
NLP Chatbot Integration | ✅ | Prompt templates + guardrails (Callable) |
Demo Video | ✅ | Setup & working walkthrough |
Report & PPT | ✅ | College-format templates |
Support | ✅ | Installation + viva Q&A (1 month) |
FAQs — Blood Donation Android App
Why Students Choose Tour2Tech
300+ projects delivered with top reviews & on-time submissions.
From setup to viva—demo videos, docs, and Q&A support.
Add analytics, dashboards, or donor verification flows.
Transparent kit + support model with coupon savings.
Project Buying Guide
Discuss Project Requirement
Connect with Yogesh Sir on Call or WhatsApp at +91 9172422245 for a free consultation. Get complete details on development and working.
Create a WhatsApp Group
Add your team to receive weekly updates, project source code, PPTs, and reports.
Advance Payment
Make 45% advance payment; remaining on completion. Invoice shared.
Project Demo & Teaching
Join a live demo with code explanation and recording. Minor changes included.
Installation & Support
We install & set up on your laptop and provide 1 month of support.
What Students Say
Real WhatsApp chats from students after delivery and submission. Add your screenshots below.
Looking for a placement-ready Android project?
Get the Blood Donation Android App with code, demo, docs, and support.
WhatsApp Us Now