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

做网站怎么优化向日葵seo

做网站怎么优化,向日葵seo,cdr做网站流程,毕节做网站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.mmbaike.com/news/77296.html

相关文章:

  • 广西住房与建设厅网站网站 软件
  • 物流网络是指什么什么叫优化关键词
  • wordpress抽奖源码seo优化上海牛巨微
  • 做网站被骗该咋样做产品推广方法
  • logo生成器下载合肥优化推广公司
  • 为什么做域名跳转网站样式不见了搜索词排行榜
  • 实战营销型网站建设关键词排名快速提升
  • 深圳龙华大浪做网站公司如何宣传推广自己的店铺
  • 设计一个网站搜索引擎优化的具体措施
  • 聊城b2b网站建seo与sem的关系
  • 七台河新闻直播温州云优化seo
  • 上海最新传染病疫情今天做网站seo优化
  • asp网站搭建软件广州网络优化最早的公司
  • 做淘客一定要建网站吗网络营销的八大能力
  • 一家做特卖的网站叫什么时候网站seo链接购买
  • 孝感网站建设 付款方式 银行营销策略国内外文献综述
  • 杭州seo俱乐部seo全称英文怎么说
  • 成都网站的优化百度网址是多少
  • 徐州网站建设网站制作5g站长工具查询
  • php网站作业凡科建站怎么样
  • 成都网站建设排名广州seo优化外包公司
  • 30几岁的人想学做网站成都百度seo推广
  • 网站开发遇到的难点seo博客大全
  • 用html5做的静态网站网站亿驱动力竞价托管
  • 网站怎么做站群app推广注册赚钱
  • php动态网页制作搜索引擎优化概述
  • 请问做网站需要什么seo免费推广软件
  • 网站安全测试工具seo关键词分析
  • 做淘宝客要有网站吗小辉seo
  • 接app推广接单平台宁波seo服务快速推广