MCPcopy Create free account

hub / github.com/KunMinX/Jetpack-MVVM-Best-Practice / types & classes

Types & classes107 in github.com/KunMinX/Jetpack-MVVM-Best-Practice

ClassAPIs
Create by KunMinX at 2021/6/3
app/src/main/java/com/kunminx/puremusic/data/api/APIs.java:6
ClassAccountRequester
用户账户 Request <p> TODO tip 1:让 UI 和业务分离,让数据总是从生产者流向消费者 <p> UI逻辑和业务逻辑,本质区别在于,前者是数据的消费者,后者是数据的生产者, "领域层组件" 作为数据的生产者,职责应仅限于 "请求调度 和 结果分发", <p> 换言之,"领域层组件"
app/src/main/java/com/kunminx/puremusic/domain/request/AccountRequester.java:64
InterfaceAccountService
Create by KunMinX at 2021/6/3
app/src/main/java/com/kunminx/puremusic/data/api/AccountService.java:11
InterfaceAction
architecture/src/main/java/com/kunminx/architecture/domain/request/AsyncTask.java:32
ClassActivityLifecycleImpl
architecture/src/main/java/com/kunminx/architecture/utils/Utils.java:139
ClassAdaptScreenUtils
<pre> author: Blankj blog : http://blankj.com time : 2016/09/23 desc : AdaptScreenUtils </pre>
architecture/src/main/java/com/kunminx/architecture/utils/AdaptScreenUtils.java:17
ClassAsyncTask
Create by KunMinX at 2022/6/14
architecture/src/main/java/com/kunminx/architecture/domain/request/AsyncTask.java:16
ClassBarUtils
<pre> author: Blankj blog : http://blankj.com time : 2016/09/23 desc : utils about bar </pre>
architecture/src/main/java/com/kunminx/architecture/utils/BarUtils.java:38
ClassBaseActivity
Create by KunMinX at 19/8/1
architecture/src/main/java/com/kunminx/architecture/ui/page/BaseActivity.java:40
ClassBaseFragment
Create by KunMinX at 19/7/11
architecture/src/main/java/com/kunminx/architecture/ui/page/BaseFragment.java:35
ClassCanBeStoppedUseCase
UseCase 示例,实现 LifeCycle 接口,单独服务于 有 “叫停” 需求 的业务 <p> TODO tip: 同样是“下载”,我不是在数据层分别写两个方法, 而是遵循开闭原则,在 ViewModel 和 数据层之间,插入一个 UseCase,来专门负责可叫停的情况, 除了开闭原则,使用
app/src/main/java/com/kunminx/puremusic/domain/usecase/CanBeStoppedUseCase.java:44
ClassClickProxy
app/src/main/java/com/kunminx/puremusic/ui/page/SearchFragment.java:116
ClassClickProxy
app/src/main/java/com/kunminx/puremusic/ui/page/PlayerFragment.java:181
ClassClickProxy
app/src/main/java/com/kunminx/puremusic/ui/page/LoginFragment.java:123
ClassClickProxy
app/src/main/java/com/kunminx/puremusic/ui/page/DrawerFragment.java:92
ClassClickProxy
app/src/main/java/com/kunminx/puremusic/ui/page/MainFragment.java:141
ClassClickUtils
<pre> author: Blankj blog : http://blankj.com time : 2019/06/12 desc : utils about click </pre>
architecture/src/main/java/com/kunminx/architecture/utils/ClickUtils.java:16
ClassCommonBindingAdapter
Create by KunMinX at 19/9/18
app/src/main/java/com/kunminx/puremusic/ui/bind/CommonBindingAdapter.java:34
ClassCommonViewPagerAdapter
Create by KunMinX at 19/6/15
architecture/src/main/java/com/kunminx/architecture/ui/adapter/CommonViewPagerAdapter.java:29
InterfaceConfigs
TODO tip 1:消除 Android 项目 KeyValue 样板代码,让 key、value、get、put、init 缩减为一,不再 KV 爆炸。 如这么说无体会,详见 https://juejin.cn/post/7121955840319291428 <p> Create by Kun
app/src/main/java/com/kunminx/puremusic/data/config/Configs.java:32
ClassConst
Create by KunMinX at 2022/8/18
app/src/main/java/com/kunminx/puremusic/data/config/Const.java:10
ClassDataRepository
Create by KunMinX at 19/10/29
app/src/main/java/com/kunminx/puremusic/data/repository/DataRepository.java:53
ClassDataResult
TODO: 专用于数据层返回结果至 domain 层或 ViewModel,原因如下: <p> liveData 专用于页面开发、解决生命周期安全问题, 有时数据并非通过 liveData 分发给页面,也可是通过其他方式通知非页面组件, 这时 repo 方法中内定通过 liveData 分发便不合适
architecture/src/main/java/com/kunminx/architecture/data/response/DataResult.java:33
ClassDefaultInterface
Create by KunMinX at 2020/12/3
app/src/main/java/com/kunminx/puremusic/ui/page/helper/DefaultInterface.java:29
ClassDiffUtils
Create by KunMinX at 2020/7/19
app/src/main/java/com/kunminx/puremusic/ui/page/adapter/DiffUtils.java:28
ClassDisplayUtils
Create by KunMinX at 19/7/20
architecture/src/main/java/com/kunminx/architecture/utils/DisplayUtils.java:23
ClassDownloadEvent
Create by KunMinX at 2022/7/4
app/src/main/java/com/kunminx/puremusic/domain/event/DownloadEvent.java:8
ClassDownloadRequester
数据下载 Request <p> TODO tip 1:让 UI 和业务分离,让数据总是从生产者流向消费者 <p> UI逻辑和业务逻辑,本质区别在于,前者是数据的消费者,后者是数据的生产者, "领域层组件" 作为数据的生产者,职责应仅限于 "请求调度 和 结果分发", <p> 换言之,"领域层组件"
app/src/main/java/com/kunminx/puremusic/domain/request/DownloadRequester.java:41
ClassDownloadState
Create by KunMinX at 2022/7/15 <p> bean,原始数据,只读, Java 我们通过移除 setter kotlin 直接将字段设为 val 即可
app/src/main/java/com/kunminx/puremusic/data/bean/DownloadState.java:10
ClassDownloadUseCase
Create by KunMinX at 20/03/16
app/src/main/java/com/kunminx/puremusic/domain/usecase/DownloadUseCase.java:16
ClassDrawablesBindingAdapter
Created by linjiang on 2018/9/5.
architecture/src/main/java/com/kunminx/architecture/ui/bind/DrawablesBindingAdapter.java:26
ClassDrawerAdapter
Create by KunMinX at 20/4/19
app/src/main/java/com/kunminx/puremusic/ui/page/adapter/DrawerAdapter.java:33
ClassDrawerBindingAdapter
Create by KunMinX at 2020/3/13
app/src/main/java/com/kunminx/puremusic/ui/bind/DrawerBindingAdapter.java:10
ClassDrawerCoordinateManager
TODO tip 1:通过 Lifecycle 来实现 "抽屉侧滑禁用与否的判断" 的一致, <p> 每个 "需要注册和监听生命周期来判断" 的视图控制器,无需在各自内部手动书写解绑等操作。 如这么说无体会,详见《为你还原一个真实的 Jetpack Lifecycle》 https://xiaozh
app/src/main/java/com/kunminx/puremusic/domain/message/DrawerCoordinateManager.java:47
ClassDrawerFragment
Create by KunMinX at 19/10/29
app/src/main/java/com/kunminx/puremusic/ui/page/DrawerFragment.java:42
ClassDrawerStates
app/src/main/java/com/kunminx/puremusic/ui/page/DrawerFragment.java:104
ClassExampleInstrumentedTest
Instrumented test, which will execute on an Android device. @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
app/src/androidTest/java/com/kunminx/puremusic/ExampleInstrumentedTest.java:18
ClassExampleInstrumentedTest
Instrumented test, which will execute on an Android device. @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
architecture/src/androidTest/java/com/kunminx/architecture/ExampleInstrumentedTest.java:34
ClassExampleUnitTest
Example local unit test, which will execute on the development machine (host). @see <a href="http://d.android.com/tools/testing">Testing documentatio
app/src/test/java/com/kunminx/puremusic/ExampleUnitTest.java:12
ClassExampleUnitTest
Example local unit test, which will execute on the development machine (host). @see <a href="http://d.android.com/tools/testing">Testing documentatio
architecture/src/test/java/com/kunminx/architecture/ExampleUnitTest.java:28
ClassFileProvider4UtilCode
architecture/src/main/java/com/kunminx/architecture/utils/Utils.java:355
ClassIconBindingAdapter
Create by KunMinX at 2020/3/13
app/src/main/java/com/kunminx/puremusic/ui/bind/IconBindingAdapter.java:13
ClassImageUtils
<pre> author: Blankj blog : http://blankj.com time : 2016/08/12 desc : utils about image </pre>
architecture/src/main/java/com/kunminx/architecture/utils/ImageUtils.java:14
ClassInfoRequester
信息列表 Request <p> TODO tip 1:让 UI 和业务分离,让数据总是从生产者流向消费者 <p> UI逻辑和业务逻辑,本质区别在于,前者是数据的消费者,后者是数据的生产者, "领域层组件" 作为数据的生产者,职责应仅限于 "请求调度 和 结果分发", <p> 换言之,"领域层组件"
app/src/main/java/com/kunminx/puremusic/domain/request/InfoRequester.java:71
ClassLibraryInfo
Create by KunMinX at 19/11/2 <p> bean,原始数据,只读, Java 我们通过移除 setter kotlin 直接将字段设为 val 即可
app/src/main/java/com/kunminx/puremusic/data/bean/LibraryInfo.java:26
ClassListenerHandler
app/src/main/java/com/kunminx/puremusic/MainActivity.java:167
ClassListenerHandler
app/src/main/java/com/kunminx/puremusic/ui/page/PlayerFragment.java:213
ClassLoginFragment
Create by KunMinX at 20/04/26
app/src/main/java/com/kunminx/puremusic/ui/page/LoginFragment.java:44
ClassLoginStates
app/src/main/java/com/kunminx/puremusic/ui/page/LoginFragment.java:152
ClassMainActivity
Create by KunMinX at 19/10/16
app/src/main/java/com/kunminx/puremusic/MainActivity.java:39
ClassMainActivityStates
app/src/main/java/com/kunminx/puremusic/MainActivity.java:188
ClassMainFragment
Create by KunMinX at 19/10/29
app/src/main/java/com/kunminx/puremusic/ui/page/MainFragment.java:45
ClassMainStates
app/src/main/java/com/kunminx/puremusic/ui/page/MainFragment.java:175
ClassMessages
Create by KunMinX at 2022/7/4
app/src/main/java/com/kunminx/puremusic/domain/event/Messages.java:6
ClassMusicRequester
音乐资源 Request <p> TODO tip 1:让 UI 和业务分离,让数据总是从生产者流向消费者 <p> UI逻辑和业务逻辑,本质区别在于,前者是数据的消费者,后者是数据的生产者, "领域层组件" 作为数据的生产者,职责应仅限于 "请求调度 和 结果分发", <p> 换言之,"领域层组件
app/src/main/java/com/kunminx/puremusic/domain/request/MusicRequester.java:69
ClassNetworkStateManager
Create by KunMinX at 19/10/11
architecture/src/main/java/com/kunminx/architecture/data/response/manager/NetworkStateManager.java:31
ClassNetworkStateReceive
Create by KunMinX at 19/8/5
architecture/src/main/java/com/kunminx/architecture/data/response/manager/NetworkStateReceive.java:33
ClassNetworkUtils
<pre> author: Blankj blog : http://blankj.com time : 2016/08/02 desc : utils about network </pre>
architecture/src/main/java/com/kunminx/architecture/utils/NetworkUtils.java:19
InterfaceObserver
architecture/src/main/java/com/kunminx/architecture/domain/request/AsyncTask.java:36
InterfaceOnActivityDestroyedListener
architecture/src/main/java/com/kunminx/architecture/utils/Utils.java:131
InterfaceOnAppStatusChangedListener
architecture/src/main/java/com/kunminx/architecture/utils/Utils.java:125
ClassOnDebouncingClickListener
architecture/src/main/java/com/kunminx/architecture/utils/ClickUtils.java:78
InterfaceOnSeekBarChangeListener
app/src/main/java/com/kunminx/puremusic/ui/page/helper/DefaultInterface.java:31
ClassPageMessenger
TODO:Note 2022.07.04 ` PageMessenger 是一个领域层组件,可用于 "跨页面通信" 场景, 比如跳转到 login 页面完成登录后,login 页面反过来通知其他页面刷新状态, <p> PageMessenger 基于 MVI-Dispatcher 实现可靠的消
app/src/main/java/com/kunminx/puremusic/domain/message/PageMessenger.java:26
InterfacePanelSlideListener
app/src/main/java/com/kunminx/puremusic/ui/page/helper/DefaultInterface.java:45
ClassPlayPauseDrawable
app/src/main/java/com/kunminx/puremusic/ui/view/PlayPauseDrawable.java:19
ClassPlayPauseView
app/src/main/java/com/kunminx/puremusic/ui/view/PlayPauseView.java:23
ClassPlayerFragment
Create by KunMinX at 19/10/29
app/src/main/java/com/kunminx/puremusic/ui/page/PlayerFragment.java:51
ClassPlayerManager
Create by KunMinX at 19/10/31
app/src/main/java/com/kunminx/puremusic/domain/proxy/PlayerManager.java:41
ClassPlayerReceiver
app/src/main/java/com/kunminx/puremusic/domain/message/PlayerReceiver.java:29
ClassPlayerService
Create by KunMinX at 19/7/17
app/src/main/java/com/kunminx/puremusic/ui/widget/PlayerService.java:51
ClassPlayerSlideListener
Create by KunMinX at 19/10/29
app/src/main/java/com/kunminx/puremusic/ui/view/PlayerSlideListener.java:38
ClassPlayerStates
app/src/main/java/com/kunminx/puremusic/ui/page/PlayerFragment.java:226
ClassPlaylistAdapter
Create by KunMinX at 20/4/19
app/src/main/java/com/kunminx/puremusic/ui/page/adapter/PlaylistAdapter.java:33
ClassProxyDrawable
architecture/src/main/java/com/kunminx/architecture/ui/bind/DrawablesBindingAdapter.java:986
ClassRequestValues
app/src/main/java/com/kunminx/puremusic/domain/usecase/DownloadUseCase.java:40
ClassRequestValues
app/src/main/java/com/kunminx/puremusic/domain/usecase/CanBeStoppedUseCase.java:77
InterfaceRequestValues
Data passed to a request.
architecture/src/main/java/com/kunminx/architecture/domain/usecase/UseCase.java:40
ClassRequester
TODO tip 1: 基于单一职责原则,抽取 Jetpack ViewModel "作用域管理" 的能力作为 "领域层组件", TODO tip 2:让 UI 和业务分离,让数据总是从生产者流向消费者 UI逻辑和业务逻辑,本质区别在于,前者是数据的消费者,后者是数据的生产者, "领域层组件"
architecture/src/main/java/com/kunminx/architecture/domain/request/Requester.java:48
ClassRes
Create by KunMinX at 2023/6/5
architecture/src/main/java/com/kunminx/architecture/utils/Res.java:11
ClassResponseStatus
TODO:本类仅用作示例参考,请根据 "实际项目需求" 配置自定义的 "响应状态元信息" <p> Create by KunMinX at 19/10/11
architecture/src/main/java/com/kunminx/architecture/data/response/ResponseStatus.java:24
ClassResponseValue
app/src/main/java/com/kunminx/puremusic/domain/usecase/DownloadUseCase.java:66
ClassResponseValue
app/src/main/java/com/kunminx/puremusic/domain/usecase/CanBeStoppedUseCase.java:81
InterfaceResponseValue
Data received from a request.
architecture/src/main/java/com/kunminx/architecture/domain/usecase/UseCase.java:46
InterfaceResult
architecture/src/main/java/com/kunminx/architecture/data/response/DataResult.java:56
EnumResultSource
Create by KunMinX at 2020/11/30
architecture/src/main/java/com/kunminx/architecture/data/response/ResultSource.java:6
ClassScreenUtils
<pre> author: Blankj blog : http://blankj.com time : 2016/08/02 desc : utils about screen </pre>
architecture/src/main/java/com/kunminx/architecture/utils/ScreenUtils.java:32
ClassSearchFragment
Create by KunMinX at 19/10/29
app/src/main/java/com/kunminx/puremusic/ui/page/SearchFragment.java:40
ClassSearchStates
app/src/main/java/com/kunminx/puremusic/ui/page/SearchFragment.java:149
ClassSharedViewModel
TODO tip:本类专用于跨页面通信, 本类已被 PageMessenger 类代替,具体可参见 PageMessenger 类说明 <p> Create by KunMinX at 19/10/16
app/src/main/java/com/kunminx/puremusic/domain/message/SharedViewModel.java:30
ClassSlideAnimatorStates
TODO tip:使用 ObservableField 绑定,尽可能减少 View 实例 Null 安全一致性问题 <p> 如这么说无体会,详见 https://xiaozhuanlan.com/topic/9816742350 和 https://xiaozhuanlan.com/topic/2
app/src/main/java/com/kunminx/puremusic/ui/view/PlayerSlideListener.java:182
ClassStateHolder
Create by KunMinX at 2022/8/11
architecture/src/main/java/com/kunminx/architecture/ui/page/StateHolder.java:8
EnumStatus
app/src/main/java/com/kunminx/puremusic/ui/view/PlayerSlideListener.java:73
ClassTabPageBindingAdapter
Create by KunMinX at 2020/3/13
app/src/main/java/com/kunminx/puremusic/ui/bind/TabPageBindingAdapter.java:13
ClassTestAlbum
Create by KunMinX at 19/10/31 <p> bean,原始数据,只读 Java 我们通过移除 setter kotlin 直接将字段设为 val 即可
app/src/main/java/com/kunminx/puremusic/data/bean/TestAlbum.java:32
ClassTestArtist
app/src/main/java/com/kunminx/puremusic/data/bean/TestAlbum.java:55
ClassTestMusic
app/src/main/java/com/kunminx/puremusic/data/bean/TestAlbum.java:43
ClassToastUtils
Create by KunMinX at 2021/8/19
architecture/src/main/java/com/kunminx/architecture/utils/ToastUtils.java:8
ClassUiCallbackWrapper
architecture/src/main/java/com/kunminx/architecture/domain/usecase/UseCaseHandler.java:49
ClassUseCase
Use cases are the entry points to the domain layer. @param <Q> the request type @param <P> the response type
architecture/src/main/java/com/kunminx/architecture/domain/usecase/UseCase.java:9
next →1–100 of 107, ranked by callers