A full-stack android App project that leverages machine learning to detect and filter spam SMS messages in real-time for Swahili-speaking users.
# Swahili SMS Filter
A full-stack android application that leverages machine learning to detect and filter spam SMS messages in real-time for Swahili-speaking users. The project consists of a native Android app that performs on-device spam classification using a pre-trained logistic regression model.
## Features
- **On-device SMS Spam Detection:** Classify incoming messages as spam or legitimate using a custom pre-trained logistic regression model.
- **Real-time Notifications:** Instant alerts about detected spam messages.
- **Message History:** Track and review all processed messages.
- **SMS Receiver Integration:** Automatic processing of incoming SMS.
- **Local Database Storage:** Secure storage of message history.
- **User-friendly Interface:** Clean and intuitive UI for easy navigation.
## Project Structure
```
swahili-sms-filter-android/
├── app/
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/com/example/swahilismsfilter/
│ │ │ │ ├── MainActivity.java # Main application interface
│ │ │ │ ├── MessageDatabaseHelper.java # Database operations
│ │ │ │ ├── MessageHistoryAdapter.java # RecyclerView adapter for message history
│ │ │ │ ├── NotificationHelper.java # Handles system notifications
│ │ │ │ ├── SmsProcessingService.java # Background service for SMS processing
│ │ │ │ ├── SmsReceiver.java # Broadcast receiver for incoming SMS
│ │ │ │ └── SpamClassifier.java # ML model implementation
│ │ │ ├── res/ # Android resources
│ │ │ └── AndroidManifest.xml # App configuration
│ │ └── androidTest/ # Instrumentation tests
│ └── build.gradle # App-level build configuration
├── gradle/ # Gradle wrapper
├── build.gradle # Project-level build configuration
└── REA …