[ Web Proxy ]
URL:
Viewing: https://developer.android.com/reference/androidx/lifecycle/viewmodel/ViewModelStoreOwnerFactory [Back]  [Original]

ViewModelStoreOwnerFactory  |  API reference  |  Android Developers Skip to main content
Essentials Design & Plan Develop Google Play Blog
Search:
Android Studio
Android Developers [Android Developers]
Stay organized with collections Save and categorize content based on your preferences.

ViewModelStoreOwnerFactory

Added in 2.11.0

public final class ViewModelStoreOwnerFactory


Summary

Public methods

static final @NonNull ViewModelStoreOwner
create(
    @NonNull ViewModelStore viewModelStore,
    @NonNull SavedState defaultArgs,
    @NonNull CreationExtras defaultCreationExtras,
    @NonNull ViewModelProvider.Factory defaultFactory
)

Creates a ViewModelStoreOwner by composing a store, factory, and creation extras.

static final @NonNull ViewModelStoreOwner
create(
    @NonNull ViewModelStore viewModelStore,
    @NonNull SavedStateRegistryOwner savedStateRegistryOwner,
    @NonNull SavedState defaultArgs,
    @NonNull CreationExtras defaultCreationExtras,
    @NonNull ViewModelProvider.Factory defaultFactory
)

Creates a ViewModelStoreOwner that also acts as a SavedStateRegistryOwner, composing a store, state registry, lifecycle, factory, and creation extras.

static final @NonNull ViewModelStoreOwner
create(
    @NonNull ViewModelStore viewModelStore,
    @NonNull SavedStateRegistry savedStateRegistry,
    @NonNull Lifecycle lifecycle,
    @NonNull SavedState defaultArgs,
    @NonNull CreationExtras defaultCreationExtras,
    @NonNull ViewModelProvider.Factory defaultFactory
)

Creates a ViewModelStoreOwner that also acts as a SavedStateRegistryOwner, composing a store, state registry, lifecycle, factory, and creation extras.

Public methods

public static final @NonNull ViewModelStoreOwner create(
    @NonNull ViewModelStore viewModelStore,
    @NonNull SavedState defaultArgs,
    @NonNull CreationExtras defaultCreationExtras,
    @NonNull ViewModelProvider.Factory defaultFactory
)

Creates a ViewModelStoreOwner by composing a store, factory, and creation extras.

public static final @NonNull ViewModelStoreOwner create(
    @NonNull ViewModelStore viewModelStore,
    @NonNull SavedStateRegistryOwner savedStateRegistryOwner,
    @NonNull SavedState defaultArgs,
    @NonNull CreationExtras defaultCreationExtras,
    @NonNull ViewModelProvider.Factory defaultFactory
)

Creates a ViewModelStoreOwner that also acts as a SavedStateRegistryOwner, composing a store, state registry, lifecycle, factory, and creation extras.

While the simpler ViewModelStoreOwner factory handles standard ViewModels, this overload provides the necessary infrastructure for ViewModels that rely on SavedStateHandle. By bundling the SavedStateRegistryOwner with the store, it creates a fully equipped scope capable of properly wiring up state-saving mechanisms for its ViewModels.

public static final @NonNull ViewModelStoreOwner create(
    @NonNull ViewModelStore viewModelStore,
    @NonNull SavedStateRegistry savedStateRegistry,
    @NonNull Lifecycle lifecycle,
    @NonNull SavedState defaultArgs,
    @NonNull CreationExtras defaultCreationExtras,
    @NonNull ViewModelProvider.Factory defaultFactory
)

Creates a ViewModelStoreOwner that also acts as a SavedStateRegistryOwner, composing a store, state registry, lifecycle, factory, and creation extras.

While the simpler ViewModelStoreOwner factory handles standard ViewModels, this overload provides the necessary infrastructure for ViewModels that rely on SavedStateHandle. By bundling the SavedStateRegistry and Lifecycle with the store, it creates a fully equipped scope capable of properly wiring up state-saving mechanisms for its ViewModels.

Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Last updated 2026-06-24 UTC.

[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2026-06-24 UTC."],[],[]]

Web Proxy Viewer  |  New URL  |  Original Page