最后笔者收集整理了一份Flutter高级入门进阶资料PDF
以下是资料目录和内容部分截图
里面包括详细的知识点讲解分析,带你一个星期入门Flutter。还有130个进阶学习项目实战视频教程,让你秒变大前端。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
-
- ① 添加Hilt依赖
-
②添加ViewModel依赖
-
二、Hilt使用
-
三、ViewModel使用
-
四、数据流
-
五、源码
===============================================================
在上一篇文章中我们构建了网络框架了,现在可以在页面中通过liveData的Observe回调中看到网络数据的返回。
===============================================================
Compose组件和Jetpack中其他的组件可以很有效的结合起来,会使我们的程序解耦的更彻底。下面来使用它们吧
添加依赖有两个部分,一个是Hilt的,一个是ViewModel。
① 添加Hilt依赖
首先是在项目的build.gradle中,先定义Hilt的版本。
hilt_version = ‘2.38.1’
然后添加插件依赖:
dependencies {
classpath “com.google.dagger:hilt-android-gradle-plugin:$hilt_version”
}
添加位置如下图所示:
下面是在app的build.gradle中的配置:在顶部plugins{}闭包中添加:
id ‘kotlin-kapt’
id ‘dagger.hilt.android.plugin’
这里增加hilt插件。然后在dependencies{}闭包中添加如下依赖:
implementation “com.google.dagger:hilt-android:$hilt_version”
kapt “com.google.dagger:hilt-android-compiler:$hilt_version”
如下图所示:
至此我们Hilt依赖添加完毕。
②添加ViewModel依赖
下面我们添加ViewModel的依赖,其实主要就是对于在Compose使用ViewModel的增强,依赖如下:
implementation ‘androidx.lifecycle:lifecycle-extensions:2.2.0’
implementation “androidx.lifecycle:lifecycle-viewmodel-ktx:2.4.1”
implementation “androidx.lifecycle:lifecycle-livedata-ktx:2.4.1”
implementation “androidx.lifecycle:lifecycle-viewmodel-compose:2.4.1”
implementation “androidx.compose.runtime:runtime-livedata:$compose_version”
添加位置如下:
最后Sync Now,同步一下,然后你最好运行一下,先保证你添加的依赖没有问题,你再继续后面的开发比较好。
使用Hilt第一步就是添加@HiltAndroidApp注解,
这里的App类在上一篇文章中就已经写好了。然后我们定义EpidemicNewsRepository的作用域为@ViewModelScoped,并且注入。
定义了EpidemicNewsRepository在ViewModel中使用,下面在com.llw.goodnews包下新建viewmodel包,包下新建一个MainViewModel类,代码如下:
@HiltViewModel
class MainViewModel @Inject constructor(
repository: EpidemicNewsRepository
) : ViewModel() {
结语
由于篇幅限制,文档的详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!以下是目录截图:
由于整个文档比较全面,内容比较多,篇幅不允许,下面以截图方式展示 。
再附一部分Android架构面试视频讲解:
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!