I know that, ViewModels should never keep a reference to a LifecycleOwner since it keeps a reference to a context and hence this causes a memory leak. But my question is, can I implement a LifecyclerOwner for ViewModel itself? with two valid callbacks, onCreate() triggered when view model's constructor is invoked and onDestroy() triggered when view model's onCleared() is invoked. Since LifecycleOwner is just an Java interface, I think this will not cause any memory leak. But to be on safer side, I'm asking this.
Can ViewModel implement LifecycleOwner?
733 views Asked by Sourav Kannantha B At
0
There are 0 answers
Related Questions in ANDROID
- Creating global Class holder
- Flutter + Dart: Editing name of a tab shows up a black screen
- android-pdf-viewer Received status code 401 from server: Unauthorized
- Sdk 34 WRITE_EXTERNAL_STORAGE not working
- ussd reader in Recket Native module
- Incorrect display of LinearGradientBrush in IOS
- The Binary Version Of its metadata is 1.8.0, expected Version is 1.6.0 build error
- I can't make TextInput to auto expand properly in Android
- Creating multiple instances of a class with different initializing values in Flutter
- How to create a lottie animation
- making android analyze with coverity sast tool
- Flutter plugin development android src not opening after opening example
- I initialize my ViewModel in the Activity with several fragments as tabs, but the fragments(tabs) return null for the updated livedata
- Node.js Server + Socket.IO + Android Mobile Applicatoin XHR Polling Error...?
- How I can use the shared preferences class?
Related Questions in VIEWMODEL
- Why do I get 'Failed to instantiate a ViewModel' when passing ViewModel class as an argument to a composable?
- Changes to my model/viewmodel are not charging what's on my view
- Android Koin - not found after update to 3.2.0
- Splash Screen Android XML
- Referencing SD card from Kotlin
- Proper way to return value from custom UserControl's DependencyProperty and uses viewModel?
- Blazor two-way data binding with InputSelect never enters VM property set
- LiveData Observer is not working in jetpack compose
- RelayCommand (MVVM Toolkit) Simple Demo explaination
- Hello i have created 3 viewModels and want to connect them to a single View(UI) but can't
- How to asynchronously update UI-related @Published variables in ViewModel?
- QueryProperty on ViewModel gets assigned to variable too late in .NET MAUI?
- Cannot create an instance of com.example.project.mainViewModel when using Jetpack Compose
- GUI doesn't update while running
- How to pass result from viewModelScope to activity
Related Questions in ANDROID-LIFECYCLE
- Can't find Transformations in androidx.lifecycle
- Activity unable to observe second livedata object within viewmodel
- Android BottomsheetDialogfragment lifecycle goes to onStop in android version <=12 & onPause >= 13 when ImagePicker is opened
- java.lang.IllegalStateException: No instantiated fragment for (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) crash in Android
- java.lang.illegalargumentexception: cannot add the same observer with different lifecycles
- unable to collect Stateflow in Lifecycle aware manner in onCreate function of a fragment
- How to Prevent Timeout Timer from Starting During System Prompts in Android App
- LifecycleStartEffect.onStopOrDispose is called twice on navigating to another screen
- CanvasFrontBufferRenderer is giving error as APP_SCOUT_WARNING
- Process is not killed even after swiping off from the recents screen
- kotlin-coroutine can not be launched
- Activity instance does not refill again after onDestroy
- update include tag data when app theme changed (recreating Activity)
- Clicking overview(recent) button on android device doesn't call onPause() and onStop() method. Why is that?
- Compose View Not Recomposing on state changes
Related Questions in LIFECYCLEOWNER
- LifecycleOwner migration in CustomView android
- How can I track liveData subscription?
- For my interceptor I need use ifecycleOwner, I use the interceptor in Hilt module. But I dont know how get ifecycleOwner in Hilt Module?
- FragmentContextWrapper cannot be cast to androidx.lifecycle.LifecycleOwner
- requireActivity instead of requireContext in fragment
- How to use Android LifecycleOwner in dialog
- View binding in traditional way using findViewbyId in LifecyclerObserver
- Unable to access the Fragment View's LifecycleOwner when getView() is null i.e., before onCreateView() or after onDestroyView()
- Can ViewModel implement LifecycleOwner?
- Pass activity to LifecycleObserver
- Is it safe to pass LifeCycleOwner into RecyclerView.Adapter
- Trying to create LifecycleCamera with destroyed lifecycle
- ViewModelProvider nested fragment can't receive data
- Android Workmanager
- Kotlin ViewModel onchange gets called multiple times when back from Fragment (using Lifecycle implementation)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)