Back to Projects
PhoneGap SMS Scheduler Plugin
Apache Cordova, PhoneGap, Android, Java
Published Jan 15, 2026
Engagement Overview
I was hired as a freelance engineer to rescue a PhoneGap Build application that needed reliable, battery-friendly scheduled SMS delivery without exposing the client’s proprietary codebase. After reviewing their PhoneGap prototype and requirements documents, I proposed shipping a dedicated plugin that would bridge JavaScript commands with Android’s native scheduling stack.
Solution Highlights
- Built a Cordova plugin that wraps the
de.appplant.cordova.plugin.local-notificationAlarmManager workflow, replacing notification payloads with SMS payloads. - Authored a lightweight Java background receiver that interprets IDs coming
from JavaScript, dispatches SMS jobs via
SmsManager, and exposesschedule,cancel, andgetScheduledIdscommands resemblingsetTimeout/clearTimeoutsemantics. - Ensured the plugin stayed compatible with PhoneGap Build by packaging all
native assets and documenting the exact
config.xmlentries and required Android permissions. - Provided runnable demo HTML/JS showing how to queue multiple messages, cancel them by ID, and keep the service dormant until AlarmManager wakes it—avoiding constant background execution and preserving battery life.
Impact
- Enabled the client to keep their existing PhoneGap Build workflow while gaining deterministic scheduled SMS delivery on Android.
- Reduced failure risk for penalty-sensitive reminders by surfacing explicit IDs for each job and offering cancellation hooks.
- Earned repeat freelance work and a performance bonus after thorough testing confirmed the plugin’s reliability.