Sweet Juice plugins are first-party bridges between Go and native Android system APIs.
Plugin guides
- Permissions Plugin — Check and request runtime permissions.
- Notification Plugin — Post and cancel system notifications.
- Calls Plugin — Read device call history.
- SMS Plugin — Read SMS messages from inbox, sent, and drafts.
- WorkManager Plugin — Schedule background tasks.
- Special Permissions Plugin — Accessibility, battery exemption, notification access, and more.
- Notification Listener Plugin — React to notifications posted or removed by any app.
- DataDir Plugin — Read/write app internal storage and access standard directories.
More plugins are documented as they are stabilized and stress-tested.
Using a plugin from Go
Import the plugin package and call its methods. Each plugin bridges to native code through core.CallNativePlatform.
import "github.com/sweet-juice/sweetjuice/plugins/permission"
status, err := permission.RequestMultiple([]string{
"android.permission.READ_CALL_LOG",
"android.permission.READ_SMS",
})
AndroidManifest requirements
- Calls —
READ_CALL_LOG - SMS —
READ_SMS - Notifications —
POST_NOTIFICATIONS - Camera —
CAMERA - Biometric —
USE_BIOMETRIC,USE_FINGERPRINT,USE_FACE_AUTHENTICATION - All files access —
MANAGE_EXTERNAL_STORAGE - Foreground service —
FOREGROUND_SERVICE,FOREGROUND_SERVICE_SPECIAL_USE
See Android Manifest Guide for details.