当前位置: 首页 > news >正文

gps建站教程视频网站哪里有做的

gps建站教程视频,网站哪里有做的,第一接单网app,js网页特效案例Hilt 是 Android 的依赖项注入库,可减少在项目中执行手动依赖项注入的样板代码。执行手动依赖项注入要求您手动构造每个类及其依赖项,并借助容器重复使用和管理依赖项。依赖注入的英文是Dependency Injection,简称DI,简单说一个类中使用的依赖…

         Hilt 是 Android 的依赖项注入库,可减少在项目中执行手动依赖项注入的样板代码。执行手动依赖项注入要求您手动构造每个类及其依赖项,并借助容器重复使用和管理依赖项。依赖注入的英文是Dependency Injection,简称DI,简单说一个类中使用的依赖类不是类本身创建的,而是通过构造函数或者属性方法设置的,这种实现方式就称为依赖注入。

 Hilt优点: 使代码解耦,便于复用,重构和测试   缺点:1 有些情形gradle编译不通过,或编译时间较长 2 不便于他人快速接手

 用法如下:

  project/build.gradle

 id("com.google.dagger.hilt.android") version "2.44" apply false

app/build.gradle

plugins {xxxid 'kotlin-kapt'id 'com.google.dagger.hilt.android'
}dependencies {implementation("com.google.dagger:hilt-android:2.44")kapt("com.google.dagger:hilt-android-compiler:2.44")
}
@HiltAndroidApp
class HiltApp :Application() {
}
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.Log
import android.view.View
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject@AndroidEntryPoint
class MainActivity : AppCompatActivity() {@Injectlateinit var hiltPlay: HiltPlayoverride fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.activity_main)}fun click(v: View) {hiltPlay.play()}}
class HiltPlay @Inject constructor() {fun play() {Log.d("HiltPlay","play hilt")}
}

点击后输出:

2023-08-29 22:44:35.411 29864-29864 HiltPlay                com.kewpie.hiltplay                  D  play hilt

使用@HiltAndroidApp注解
        新建继承自Application的类并添加注解@HiltAndroidApp,触发 Hilt 的代码生成,其中包括可以使用依赖项注入的应用基类。应用容器是应用的父容器,这意味着其他容器可以访问其提供的依赖项。

使用@AndroidEntryPoint将依赖注入Android类。
         在 Application类中设置了Hilt且有了应用级组件后,Hilt 可以为带有 @AndroidEntryPoint 注解的其他 Android 类提供依赖项。

@Inject 注解让 Hilt 注入不同类型的实例。其实就是声明变量的时候用上这个注解

常见的依赖注入方式有:

方式1构造方法注入:
优点:在构造方法中体现出对其他类的依赖,一眼就能看出这个类需要其他那些类才能工作。一旦对象初始化成功了,这个对象的状态肯定是正确的。
缺点:造成构造函数会有很多参数。

方式2 方法参数注入:  创建对象后,通过自动调用某个方法来注入依赖。
优点:比较灵活。
缺点:新加入依赖时会破坏原有的方法签名,如果这个方法已经被其他很多模块用到就很麻烦,得需大量修改;与构造方法注入一样,会有很多参数。

方式3 Set方法注入:
优点:在对象的整个生命周期内,可以随时动态的改变依赖,非常灵活。
缺点:对象在创建后,不直观,无法清晰地表示哪些属性是必须的。

http://www.yayakq.cn/news/746752/

相关文章:

  • 主页面设计seo优化运营专员
  • 怎么给网站做404界面义乌婚介网站建设
  • 代理网站地址广州做网站系统
  • 建设政协网站的意义wordpress中国可以用吗
  • 网站建设html代码社区推广
  • 安徽专业网站建设营销推广方式都有哪些
  • 珠宝商城网站模板网站建设区别
  • 做网站公司简介模版亚马逊雨林有人类居住吗
  • 游戏网站建设一条龙企业网站内容如何搭建
  • 网站托管服务器html制作一个简单美食网页
  • 长春公司建站模板网站开发公司模板
  • 设计网站开发方案流程wordpress like
  • 网站改版301设置wordpress算数的插件
  • 网站建设哪家较好网络品牌推广
  • 网站开发与设计 信科中学网站源码
  • 网站建设哈尔滨网站优化4PHP网站开发与管理设计心得
  • 做网站除了dw企业网站建设代理加盟
  • 网站建设策划方案书下载延边网站开发depawo
  • 做金融在那个网站上找工作合肥专业做网站建设内容
  • 织梦做的网站怎么添加关键词做网站需要什么服务器配置
  • 深圳做公司网站美容院网站制作
  • 企业做网站400电话作用徐州网站的优化
  • 响应式网站建设过时吗网站建设创新互联公司
  • 网站上的流动图片怎么做的电影网站模板源代码
  • 织梦网站为什么容易被注入西部数码网站打不开
  • 阜阳做网站的公司标记位置的地图微信小程序开发教程
  • 福建省城乡和住房建设厅网站2017设计工作室做网站
  • 建网站 域名wordpress 清空 demo
  • 怎么增加网站收录郑州网页设计公司有哪些
  • 安丘网站建设制作做微商加入什么移动电商网站