How kieronquinn/smartspacer works
Smartspacer is an Android app that builds configurable At a Glance-style content from targets, complications, plugins, and context requirements, then serves it through multiple Smartspace surfaces. The main workflow is user configuration and plugin discovery, followed by runtime session updates that deliver content to a launcher, widget, or system surface. The tree and README identify several product branches, but sampled implementation is limited; unsampled branches are represented at their existing source directories and only documented capability links are shown.
Main entry points: smartspace Surface Sessions · SmartspacerSmartspaceService.kt Native Service · targets Targets · screens Configuration UI
Components 18
Configuration
- Configuration UI
app/src/main/java/com/kieronquinn/app/smartspacer/ui/screens - Plugin Repository
app/src/main/java/com/kieronquinn/app/smartspacer/ui/screens/repository/PluginRepositoryFragment.kt - App State
app/src/main/java/com/kieronquinn/app/smartspacer/model/database
Content Providers
- Plugin Providers
app/src/main/java/com/kieronquinn/app/smartspacer/components/smartspace - Targets
app/src/main/java/com/kieronquinn/app/smartspacer/components/smartspace/targets - Complications
app/src/main/java/com/kieronquinn/app/smartspacer/components/smartspace/complications - Requirements
app/src/main/java/com/kieronquinn/app/smartspacer/components/smartspace/requirements - Smartspace Widgets
app/src/main/java/com/kieronquinn/app/smartspacer/components/smartspace/widgets
Smartspace Runtime
- Manager Service
app/src/main/java/com/kieronquinn/app/smartspacer/service/SmartspacerManagerService.kt - Smartspace Manager
app/src/main/java/com/kieronquinn/app/smartspacer/components/smartspace/SmartspaceManager.kt - Surface Sessions
app/src/main/java/com/kieronquinn/app/smartspacer/components/smartspace - Native Service
app/src/main/java/com/kieronquinn/app/smartspacer/service/SmartspacerSmartspaceService.kt - Expanded Smartspace
app/src/main/java/com/kieronquinn/app/smartspacer/components/smartspace/ExpandedSmartspacerSession.kt - OEM Smartspace
app/src/main/java/com/kieronquinn/app/smartspacer/components/smartspace/OemSmartspacerSession.kt
Platform Integrations
- Android Smartspace
systemstubs/src/main/java/android/service/smartspace/SmartspaceService.java
Other components
- User
- Launcher / Widget
- Shizuku
Connections 17
- User → Configuration UI: configures
- User → Plugin Repository: browses plugins
- Configuration UI → App State: saves settings
- Plugin Repository → Plugin Providers: discovers plugins
- Plugin Providers → Targets: provides content
- Requirements → Targets: controls visibility
- Complications → Surface Sessions: adds content
- Targets → Surface Sessions: supplies targets
- Smartspace Widgets → Surface Sessions: supplies widgets
- Manager Service → Smartspace Manager: binds
- Smartspace Manager → Surface Sessions: manages sessions
- Native Service → Surface Sessions: creates sessions
- Native Service → Android Smartspace: updates targets
- Android Smartspace → Launcher / Widget: delivers content
- Surface Sessions → Expanded Smartspace: serves expanded view
- Surface Sessions → OEM Smartspace: supports OEM surface
- Shizuku → Native Service: enables Pixel upgrade