Koin、Dagger2、Hilt 目前都是非常流行的库,面对这么多层出不穷的新技术,我们该做如何选择,是一直困扰我们的一个问题。Hilt 与 Dagger2 区别并不大,Hilt就是对Dagger2的封装。Koin框架,适用于使用Kotlin开发 ,是一款轻量级的依赖注入框架,无代理,无代码生成,无反射。相对于Dagger2 而言Koin更加适合Kotlin语言。在项目中使用 Koin如果要在项
转载 2024-01-25 21:36:18
79阅读
数据类1.什么是data classdata class 就是一个类中包含一些数据字段。2.Kotlin中 data class 设计的好处在Java中我们常用的bean类,每一个变量我们都需要写getter,setter方法,有时候还要重写toString,equals等方法,尽管工具会帮我们一键生成,但是代码量要写很多,显得有点臃肿,不灵活。例如:同样实现一个bean类,Java的实现方式是p
文章目录I. 协程(coroutine) kotlin的线程切换框架II. 挂起函数 suspend funwithContext(),kotlin提供的一个挂起函数:III. 创建协程a. 协程作用域 CoroutineScopeb. launch()c. async()d. runBlocking()e. 协程启动模式 CoroutineStartf. Jobg. Deferredh. Di
转载 2023-11-25 13:02:30
51阅读
转载 2014-01-05 23:24:00
185阅读
1 前言我们在实际开发中日志这个功能时必不可少的,有些是用原生的android.util.Log,或者使用网上开源的第三方框架例如Logger等,不可否认,第三方框架相对于原生的功能增强了不少。但是这里,我想在原生的基础上封装一个非常简单并且实用的日志框架。请看下面的介绍2 Log日志框架的主要功能要封装这个日志框架,首先要知道我们需要什么,要把这个框架做成什么样子。经过思考,我打算把日志框架做成
本节书摘来自异步社区《Android 应用案例开发大全(第3版)》一书中的第2章,第2.3节壁纸的基本框架,作者 吴亚峰 , 苏亚光 , 于复兴2.3 壁纸的基本框架对百纳水族馆案例中每个类进行详细介绍之前,首先对本案例的基本框架进行简单的介绍。本节将要介绍的是本案例的基本框架、案例中各个类的作用以及类与类之间的关系,从而使读者对百纳水族馆有一个全面的了解,可以更好地理解本案例的详细开发过程。2.
View表示了用户界面的基本构建模块。一个View占用了屏幕上的一个矩形区域并且负责界面绘制和事件处理。手机屏幕上所有看得见摸得着的都是View。Activity是四大组件中唯一一个用来和用户进行交互的组件。可以说Activity就是android的视图层。如果再细化,Activity相当于视图层中的控制层,是用来控制和管理View的,真正用来显示和处理事件的实际上是View。每个Activity
一、简介当下Java后端的SpringBoot微服务框架大火,原因离不开注解的使用,其简单易配置的注解方式使得更多的社区为其编写适用于SpringBoot的框架,也就是注解逐渐取代了传统的xml配置方式。那么注解在Android中也同样的得到了升华,著名的框架有ButterKnife、 Dagger2、Retrofit等等。今天带来一款Android中比较实用的注解框架AopArms,其用法简单,
一、简介当下Java后端的SpringBoot微服务框架大火,原因离不开注解的使用,其简单易配置的注解方式使得更多的社区为其编写适用于SpringBoot的框架,也就是注解逐渐取代了传统的xml配置方式。那么注解在Android中也同样的得到了升华,著名的框架有ButterKnife、 Dagger2、Retrofit等等。今天带来一款Android中比较实用的注解框架AopArms,其用法简单,
近期因工作需要,分析了一些Android的测试框架,在这也分享下整理完的资料。 Android测试大致分三大块:代码层测试用户操作模拟,功能测试安装部署及稳定性测试代码层测试对于一般java代码,采用传统的Junit测试,开发人员通常会编写重要接口和函数的白盒测试代码,不做过多讨论。但因Android的特殊运行机制(Dalvik虚拟机),其中存在Application、Activity、
转载 2024-02-01 14:05:26
39阅读
本节书摘来自异步社区《Android框架揭秘》一书中的第1章,第1.2节通过启动过程分析Android Framework,作者 金泰延 , 宋亨周 , 朴知勋 , 李白 , 林起永,1.2 通过启动过程分析Android FrameworkAndroid框架揭秘Android源码数量极其庞大,以Android 2.2为例,除去Linux代码,代码数量大于4GB。若想理解和掌握这么庞大的Andro
1. Android图像框架简介Android framework 有一系列与硬件抽象实现和图形驱动相关的2d和3d渲染api,所以重要的是如何对这些运行在更高层次的api有一个良好的理解。应用开发者有两种通用的方式可以绘制物体到屏幕,分别是canvas和opengl。android.graphics.Canvas是一组被开发都广泛应用的2d图形api。在Android中,所有在android.v
转载 2023-08-23 08:29:31
167阅读
BottomBarGitHub:https://github.com/roughike/BottomBar底部导航栏框架。引入:现在支持版本更高,如果你要支持更高版本,那么你工程支持版本应该要最新的。//底部导航 compile 'com.roughike:bottom-bar:2.2.0'效果:第一张图,切换的时候有挡板动画切换效果跟BottomNavigationBar,具有一样的效果
linux驱动由浅入深系列:tinyalsa(tinymix/tinycap/tinyplay/tinypcminfo)音频子系统之一linux驱动由浅入深系列:ALSA框架详解 音频子系统之二本文以高通平台为例,介绍一下android下的音频结构。android使用的是tinyALSA作为音频系统,使用方法和基本框架与linux中常用的ALSA音频子系统是一致的。ALSA音频框架ALSA(Adv
转载 2023-12-16 21:22:27
586阅读
1.缓存框架名称说明DiskLruCacheJava实现基于LRU的磁盘缓存2.图片加载框架名称说明Android Universal Image Loader一个强大的加载,缓存,展示图片的库Picasso一个强大的图片下载与缓存的库Fresco一个用于管理图像和他们使用的内存的库Glide一个图片加载和缓存的库3.图片处理框架名称说明Picasso-transformations一个为Pica
Android面试必问框架原理volatile的实现原理synchronized的实现原理join方法实现原理CAS无锁编程的原理ReentrantLock的实现原理AQS的大致实现思路AOP理解IOC理解dagger2注入原理hilt原理APT技术组件化通信使用autoService+ServiceLoaderARouterBinderServiceManager启动SM注册流程Binder相
转载 2023-07-31 14:48:14
34阅读
android开发避免不了的就是框架的搭建,我们熟知的MVC、MVP、MVVM,都是我们熟知的框架结构,开发中使用哪种结构,结构如何搭建,这种结构使用过程中存在的优缺点,这些都是我们需要考虑的。下面就讲解一下这些框架的知识。1、MVC1.1 MVC结构图1.2 MVC各部分的功能View:布局展示部分,这部分是和用户直接交互的,展示各种控件效果,包括动画、布局中展示的数据等部分。Android中布
转载 2023-09-11 21:08:53
75阅读
下载地址:https://github.com/excilys/androidannotations/wiki/Download官网:http://androidannotations.org/文档介绍:https://github.com/excilys/androidannotations/wiki一、Android Annotations的原理以及和主流注解框架的比较目前主流的注解框架有xU
引言  Retrofit 是 Square 公司开发的一款针对 Android 网络请求的框架,遵循 Restful 设计风格,我们查看 invoke 可以发现:底层基于 OkHttp 实现的 ,相比其他网络请求框架,有以下优势: 性能最好,速度最快(动态代理优势) 简洁易用,代码简化 解耦彻底,职责细分 易与其他框架联用(Rx
转载 2023-08-02 23:04:22
39阅读
前言经过几年的发展和沉淀,Android开发中涌现出许多优秀的框架,比如:Retrofit、Afinal、OKHttp、ButterKnife、AndFix等等。这些框架的出现极大地简化了开发流程,提高了工作效率。在项目开发的过程中我们主要是使用这些轮子完成项目,很难有时间去顾及框架的内部实现。在项目交付之后我们可能就要去看看这些框架的源码了。这些主流框架的功能各不相同,但每当打开浩繁的源码时我们
  • 1
  • 2
  • 3
  • 4
  • 5