# ViewModelProviders.DefaultFactory

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  
belongs to Maven artifact android.arch.lifecycle:extensions:1.1.1  
Deprecated since version 1.1.0  
Summary:[Ctors](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProviders.DefaultFactory#pubctors)\|[Inherited Methods](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProviders.DefaultFactory#inhmethods)  

# ViewModelProviders.DefaultFactory

| The`android.arch`Architecture Components packages are no longer maintained. They have been superseded by the corresponding[androidx.\*](https://developer.android.com/jetpack/androidx/migrate)packages. See[androidx.lifecycle.ViewModelProviders.DefaultFactory](https://developer.android.com/reference/androidx/lifecycle/ViewModelProviders.DefaultFactory)instead.

`
public
static


class
ViewModelProviders.DefaultFactory
`  
`


``


``

extends `[ViewModelProvider.AndroidViewModelFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.AndroidViewModelFactory)`


``


`

|---|---|---|----------------------------------------------------------|
| java.lang.Object                                                  ||||
| ↳ | [android.arch.lifecycle.ViewModelProvider.NewInstanceFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.NewInstanceFactory) |||
|   | ↳ | [android.arch.lifecycle.ViewModelProvider.AndroidViewModelFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.AndroidViewModelFactory) ||
|   |   | ↳ | android.arch.lifecycle.ViewModelProviders.DefaultFactory |

<br />

*** ** * ** ***

<br />

**This class was deprecated in API level 1.1.0.**   
Use[ViewModelProvider.AndroidViewModelFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.AndroidViewModelFactory)

[ViewModelProvider.Factory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.Factory)which may create[AndroidViewModel](https://developer.android.com/reference/android/arch/lifecycle/AndroidViewModel)and[ViewModel](https://developer.android.com/reference/android/arch/lifecycle/ViewModel), which have an empty constructor.

## Summary

|                                                                                                                                                                                                                                                                                                                                         ### Public constructors                                                                                                                                                                                                                                                                                                                                         ||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|
| ` `[ViewModelProviders.DefaultFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProviders.DefaultFactory#ViewModelProviders.DefaultFactory(android.app.Application))`(`[Application](https://developer.android.com/reference/android/app/Application.html)` application) ` *This constructor was deprecated in API level 1.1.0. Use[ViewModelProvider.AndroidViewModelFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.AndroidViewModelFactory)or[getInstance(Application)](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.AndroidViewModelFactory#getInstance(android.app.Application)).* |

| ### Inherited methods |
|-----------------------|---|
| From class` `[android.arch.lifecycle.ViewModelProvider.AndroidViewModelFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.AndroidViewModelFactory)` ` |-----------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` <T extends `[ViewModel](https://developer.android.com/reference/android/arch/lifecycle/ViewModel)`> T`                                                        | ` `[create](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.AndroidViewModelFactory#create(java.lang.Class<T>))`(Class<T> modelClass) ` Creates a new instance of the given`Class`.                                                                                                            | | ` static `[ViewModelProvider.AndroidViewModelFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.AndroidViewModelFactory) | ` `[getInstance](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.AndroidViewModelFactory#getInstance(android.app.Application))`(`[Application](https://developer.android.com/reference/android/app/Application.html)` application) ` Retrieve a singleton instance of AndroidViewModelFactory. | ||
| From class` `[android.arch.lifecycle.ViewModelProvider.NewInstanceFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.NewInstanceFactory)` ` |----------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` <T extends `[ViewModel](https://developer.android.com/reference/android/arch/lifecycle/ViewModel)`> T` | ` `[create](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.NewInstanceFactory#create(java.lang.Class<T>))`(Class<T> modelClass) ` Creates a new instance of the given`Class`. | ||
| From class` java.lang.Object ` |-------------------|-------------------------------| | ` Object`         | ` clone() `                   | | ` boolean`        | ` equals(Object arg0) `       | | ` void`           | ` finalize() `                | | ` final Class<?>` | ` getClass() `                | | ` int`            | ` hashCode() `                | | ` final void`     | ` notify() `                  | | ` final void`     | ` notifyAll() `               | | ` String`         | ` toString() `                | | ` final void`     | ` wait(long arg0, int arg1) ` | | ` final void`     | ` wait(long arg0) `           | | ` final void`     | ` wait() `                    | ||
| From interface` `[android.arch.lifecycle.ViewModelProvider.Factory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.Factory)` ` |-------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` abstract <T extends `[ViewModel](https://developer.android.com/reference/android/arch/lifecycle/ViewModel)`> T` | ` `[create](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.Factory#create(java.lang.Class<T>))`(Class<T> modelClass) ` Creates a new instance of the given`Class`. | ||

## Public constructors

### ViewModelProviders.DefaultFactory

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
ViewModelProviders.DefaultFactory (Application application)
```

<br />

**This constructor was deprecated in API level 1.1.0.**   
Use[ViewModelProvider.AndroidViewModelFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.AndroidViewModelFactory)or[getInstance(Application)](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.AndroidViewModelFactory#getInstance(android.app.Application)).

Creates a`AndroidViewModelFactory`

<br />

|                                                                            Parameters                                                                             ||
|---------------|----------------------------------------------------------------------------------------------------------------------------------------------------|
| `application` | `Application`: an application to pass in[AndroidViewModel](https://developer.android.com/reference/android/arch/lifecycle/AndroidViewModel) <br /> |

-

  ## Annotations

  - [OnLifecycleEvent](https://developer.android.com/reference/android/arch/lifecycle/OnLifecycleEvent)
-

  ## Interfaces

  - [DefaultLifecycleObserver](https://developer.android.com/reference/android/arch/lifecycle/DefaultLifecycleObserver)
  - [LifecycleObserver](https://developer.android.com/reference/android/arch/lifecycle/LifecycleObserver)
  - [LifecycleOwner](https://developer.android.com/reference/android/arch/lifecycle/LifecycleOwner)
  - [LifecycleRegistryOwner](https://developer.android.com/reference/android/arch/lifecycle/LifecycleRegistryOwner)
  - [Observer](https://developer.android.com/reference/android/arch/lifecycle/Observer)
  - [ViewModelProvider.Factory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.Factory)
  - [ViewModelStoreOwner](https://developer.android.com/reference/android/arch/lifecycle/ViewModelStoreOwner)
-

  ## Classes

  - [AndroidViewModel](https://developer.android.com/reference/android/arch/lifecycle/AndroidViewModel)
  - [Lifecycle](https://developer.android.com/reference/android/arch/lifecycle/Lifecycle)
  - [LifecycleRegistry](https://developer.android.com/reference/android/arch/lifecycle/LifecycleRegistry)
  - [LifecycleService](https://developer.android.com/reference/android/arch/lifecycle/LifecycleService)
  - [LiveData](https://developer.android.com/reference/android/arch/lifecycle/LiveData)
  - [LiveDataReactiveStreams](https://developer.android.com/reference/android/arch/lifecycle/LiveDataReactiveStreams)
  - [MediatorLiveData](https://developer.android.com/reference/android/arch/lifecycle/MediatorLiveData)
  - [MutableLiveData](https://developer.android.com/reference/android/arch/lifecycle/MutableLiveData)
  - [ProcessLifecycleOwner](https://developer.android.com/reference/android/arch/lifecycle/ProcessLifecycleOwner)
  - [ServiceLifecycleDispatcher](https://developer.android.com/reference/android/arch/lifecycle/ServiceLifecycleDispatcher)
  - [Transformations](https://developer.android.com/reference/android/arch/lifecycle/Transformations)
  - [ViewModel](https://developer.android.com/reference/android/arch/lifecycle/ViewModel)
  - [ViewModelProvider](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider)
  - [ViewModelProvider.AndroidViewModelFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.AndroidViewModelFactory)
  - [ViewModelProvider.NewInstanceFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.NewInstanceFactory)
  - [ViewModelProviders](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProviders)
  - [ViewModelProviders.DefaultFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProviders.DefaultFactory)
  - [ViewModelStore](https://developer.android.com/reference/android/arch/lifecycle/ViewModelStore)
  - [ViewModelStores](https://developer.android.com/reference/android/arch/lifecycle/ViewModelStores)
-

  ## Enums

  - [Lifecycle.Event](https://developer.android.com/reference/android/arch/lifecycle/Lifecycle.Event)
  - [Lifecycle.State](https://developer.android.com/reference/android/arch/lifecycle/Lifecycle.State)