Android Creative Editor
Developed with native Android components, this SDK enables seamless integration and delivers powerful design editing capabilities optimized for mobile devices. Whether your app needs basic design tweaks or advanced creative workflows, this SDK is designed to meet those needs.
Explore Demo
Key Capabilities of the iOS Mobile Design Editor SDK#
Transforms
Perform operations like cropping, rotating, and resizing design elements.Templating
Create and apply design templates with placeholders and text variables for dynamic content.Placeholders & Lockable Design
Constrain templates to guide your users’ design and ensure brand consistency.Asset Management
Import and manage images, shapes, and other assets to build your designs.Design Collage
Arrange multiple elements on a single canvas to create complex layouts.Text Editing
Add and style text blocks with various fonts, colors, and effects.Client-Side Processing
All design editing operations are executed directly on the device, with no need for server dependencies.Headless & Automation
Programmatically edit designs within your application using the engine API.Customizable UI
Build and integrate custom UIs tailored to your application’s design needs.Supported Platforms#
The Android Mobile Design Editor SDK is compatible with Android applications developed using Kotlin or Java, offering full support for both languages.
Prerequisites#
Ensure that the IMGLYUI Android Library is added to your project. The SDK requires a valid license key, and optionally, unique user IDs for accurate user tracking.
Supported File Types#
The SDK supports various image formats for loading, editing, and exporting within your Android application, including:
- JPG
- PNG
- SVG
- WEBP
- TGA
Individual assets or entire designs can be exported as PDF, JPG, PNG, TGA or RBG8 binary files.
Understanding the Android Mobile Editor SDK Architecture & API#
The following sections provide an overview of the key components of the Android Mobile Design Editor UI and its API architecture.
If you're ready to start integrating the SDK into your Android application, check out our Getting Started guide or dive into the Essential Guides.
Design Editor UI#
The Android Design Editor UI is crafted for intuitive, mobile-friendly design creation and editing. Here are the main components and customizable elements within the UI:
- Canvas: The core interaction area where users can interact with and manipulate design elements.
- Tool Bar: Provides essential editing options like adjustments, filters, effects or adding text in order of relevance.
- Context Menu: Displays relevant editing options for each selected element, simplifying the editing process for users.
- Fragment or Activity Integration: The editor can be easily integrated into your existing activity or fragment.
CreativeEngine#
CreativeEngine is the backbone of the Android Mobile Editor SDK, responsible for rendering and managing design scenes. It offers key features such as:
- Scene Management: Create, load, save, and modify design scenes programmatically.
- Block Management: Manage design elements like shapes, text, and images.
- Asset Management: Load and manage assets such as images and SVGs from various sources.
- Variable Management: Define and manipulate variables for dynamic content within scenes.
- Event Handling: Subscribe to events like block creation or updates for real-time interaction.
Customizing the Android Mobile Design Editor#
The SDK offers extensive customization options to fit various use cases, ranging from simple configuration changes to more advanced customizations.
Role-Based Customization#
Switch between "Creator" and "Adopter" roles to control the editing experience. The "Creator" role allows setting constraints on template elements, while the "Adopter" role focuses on adapting these elements within defined limits.
- Creator: Set constraints and manage template settings.
- Adopter: Edit elements within the constraints set by the Creator.
Basic Customizations#
Configure the editor by passing a configuration object during initialization:
val engineConfiguration =remember {EngineConfiguration.getForDesign(license = "<your license here>",userId = "<your unique user id>",baseUri = Uri.parse("file:///android_asset/"),sceneUri = EngineConfiguration.defaultDesignSceneUri,renderTarget = EngineRenderTarget.SURFACE_VIEW,)}
Explore further customization options by visiting the configuration guide.