This guide charts the optimal progression of a productivity app from a likely starting place to best-in-class. It's designed to help you think about improving your app over time, deciding what features to implement when. While every productivity app is different, consider these recommendations to achieve a best-in-class app.
Basic
A basic productivity app must support a subset of Android software and hardware features so it doesn't get in the way of user productivity.
- Accessibility
Follow Material Design guidelines to design and develop your app for accessibility. - Spellcheck
Implement spell checking in your app. - Sharing and app interoperability
Use photo picker to access existing photos and videos
Support copy and paste with views or with Compose. - Hardware input
Support keyboard navigation with views or with Compose.
Support alternative pointing devices such as mouse, trackpad, and stylus with views or with Compose. - Large screens
Support devices with larger screens, such as laptop and tablet devices.
Support folding devices with app continuity when transitioning between folded and unfolded states. - Expressive text
Support emoji with views or with Compose.
Better
- Large screens
Support fully adaptive layout, including window resizing. - Home screen integration
Have an app widget. - Hardware input
Support keyboard shortcuts, either with views or with Compose.
Support hover events for mouse/trackpad/stylus with views or with Compose. - Sharing and app interoperability
Support drag and drop with views or with Compose.
Support image keyboards and other rich content.
Use the Storage Access Framework to create and open documents that can be shared. - Printing and exporting to PDF
Support printers and other output devices.
Best
- Leverage AI
Use on-device or cloud-based generative AI to improve user productivity. - Hardware
Leverage foldable postures.
Directly support external displays.
Support drawing using a stylus, minimizing latency.
Support advanced stylus features such as tilt and pressure. - Multi-window
Support multiple app windows with concurrent documents for full desktop functionality.