- 博客(17)
- 资源 (1)
- 收藏
- 关注
原创 Android Studio gradle 5.4 生成jar包
在module:app中添加如下代码:在gradle5.4中://生成jar包task makeJar(type: Copy) { delete 'src/main/libs/xxx.jar' from('build/intermediates/packaged-classes/debug/') //jar文件来源 into('src/main/libs') /...
2020-04-26 12:02:06
290
原创 Material Components(MDC)简单使用介绍
1.简介材料组件设计是为了让我们开发的程序有一个统一的样式、品牌效应、互动效果以及操作界面产生的动作,是在Android原生组件的基础上添加了更加丰富的功能和显示效果,遵循Android界面设计的规范,能够更方便的设计产品,缩短开发设计时间。2.开发步骤材料组件都包括那些东西?访问材料组件设计,这次主要介绍组件中最基础的,如按钮,输入框,导航栏等。1.添加依赖api 'c...
2020-04-12 16:31:18
3904
原创 Android VR View 入门
1.前言我们常常看到一些浏览器中嵌入VR View的广告来提升用户的体验,对于游戏的广告则体验更佳。不管是网页还是移动设备,都可以实现VR的视觉效果。2.实现准备2.1.下载程序首先下载起始程序,然后我们会通过简单的方式来学习如何添加VR View。$ git clone https://github.com/googlecodelabs/vr_view_app_101.gi...
2020-04-06 15:01:04
2493
1
原创 Android WorkManager,看这一篇就够了
1.简介Android上有许多可延期的后台工作选项。此代码实验室涵盖WorkManager,这是一个可延迟的后台工作的兼容,灵活且简单的库。WorkManager是Android上推荐的任务调度框架,用于可延缓的工作,并且可以执行。什么是WorkManagerWorkManager是Android Jetpack的一部分,是用于后台工作的架构组件,需要兼顾机会和有保证的执行。机会...
2020-04-05 15:55:49
12605
2
原创 Android Studio3.6 更新功能
前言 下载google CodeLab的程序时,提示要更新3.6版本才能运行程序,于是更新了一下,看看有什么新功能。界面设计工具 这次更新了一些设计工具,比如Layout Editor 和Resource Manager。 现在,在XML或设计工具的颜色选择器中,Android Studio会在您的应用程序中填充颜色资源,以便您快速选择和替换颜色资源值。...
2020-03-22 13:16:12
770
原创 android setting说明
1 前言 AndroidX 已经取消了PreferenceFragment, 并且让我们使用SettingsUse the AndroidX Preference Library for consistent behavior across all devices. For more information on using the AndroidX Preference Librar...
2020-02-04 14:55:07
598
原创 requestLayout()和invalidate()的区别
初探:只要调用addView、setVisbility、setText方法,就会重新调用 requestLayout,重新执行 view的绘制流程,requestLayout在onMeasure之后调用;这种重新绘制和第一次view绘制不一样,比如一次性添加10个TextView,它会等你全部添加完后才会执行一遍onMeasure,不可能是添加1个TextView就调用一次onMeasure好...
2020-02-04 14:39:14
734
原创 room+livedata+ViewModel+RecyclerView
1 简介1.1 room android 官方推荐的数据库框架,room主要包含三个组件:roomDatabase,entity,Dao. 使用 Room 数据库来获取与该数据库关联的数据访问对象 (DAO)。然后,应用使用每个 DAO 从数据库中获取实体, 然后再将对这些实体的所有更改保存回数据库中。最后,应用使用实体来获取和设置与数据库中的表列相对应的值。1.2...
2020-02-04 14:14:15
3816
1
原创 Android Studio3.5更新内容
前言每一次更新Android Studio都会有种莫名的兴奋,又有什么新的变化呢?让我们一起来看看吧。改善软件的质量和稳定性作为项目基石的一部分,这次升级更加专注于改善稳定性,内存泄漏,挂起以及核心用户功能的改进,具体描述如下1 内存管理设置如果您使用具有至少5 GB RAM的64位操作系统,则现在可以配置操作系统应分配给Android Studio进程(例如核心IDE,Gra...
2019-10-31 18:18:53
1168
原创 Android技能必备之Okhttp3
前言想要使用retrofit2或者Okgo等网络框架,熟悉并且掌握Okhttp3是很有必要的。HTTP是现代应用常用的一种交换数据和媒体的网络方式,高效地使用HTTP能让资源加载更快,节省带宽。OkHttp是一个高效的HTTP客户端,它有一下特性:http/2支持所有同一个主机地址的请求分享相同的socket通道 连接池减少请求延时 GZIP压缩减少下载数据 缓冲响应内容,避免重复请...
2019-10-30 20:42:01
175
原创 Android增量更新
前言增量更新和普通更新的差别是下载包较小,也可以叫做省流量更新。增量更新是在后台服务器将升级包和旧版本的安装包进行二进制比较得到一个较小的差分包,差分包一般比升级包来的小;在用户升级时只需下载差分包,然后在客户端上,旧版本的安装包与差分包合成一个新的安装包。服务端的实现参考:Android应用的增量更新,主要是通过linux工具bsdiff计算新老apk文件的差异,将差异记录为一个体积较小...
2019-10-29 19:54:54
292
原创 Android技能必备之RxJava
观察者模式中除了用过EventBus外,Rxjava也是必需掌握的一个框架,本文主要介绍Rxjava的主要功能以及使用方式。概念 在RxJava中,函数响应式编程具体表现为一个观察者(Observer)订阅一个可观察对象(Observable),通过创建可观察对象发射数据流,经过一系列操作符(Operators)加工处理和线程调度器(Scheduler)在不同线...
2019-10-29 15:45:02
137
原创 反射基础二
上节遗留两个知识点,分别是获取泛型的超类和获取泛型接口的方法://获取泛型的超类public Type getGenericSuperclass();//获取泛型接口的方法public Type[] getGenericInterfaces();这节具体介绍如何获取泛型的超类和接口。1.获取泛型超类我们先创建一个类和子类://Point泛型类的实现publi...
2019-06-27 17:37:06
337
原创 反射基础一
1 获取类型的方法在类的生命周期中,包括装载,链接,初始化;类只会装载一次,利用装载的类可以实例化出各种不同的对象。而反射就是通过获取装载的类来做出各种操作,装载的类我们称类类型,装载的类产生的实例我们称类实例。//方法一:Person person = new Person(); Class a = person.getClass() //方法二:Class b = Pers...
2019-06-27 14:28:16
117
原创 获取所传类类型的所有继承的接口列表
/** * 获取所传类类型的所有继承的接口列表 * @param clazz * @return */public Class<?>[] getAllInterface(Class<?> clazz){ //获取自身的所有接口 Class<?>[] interSelf = clazz.getInterfaces(); //...
2019-06-27 10:39:20
364
转载 泛型的介绍和使用二
1 类型绑定extends为什么要适用类型绑定?public interface Comparable<T>{ public boolean compareTo(T i);}但如果我们直接通过函数来比较类型的大小,肯定会报错,因为编译器根本不知道什么类型?又怎么比较呢?所以需要让编译器知道是什么类型,这就是类型绑定的用处了。定义形式:<T e...
2019-06-27 10:06:01
115
原创 泛型的介绍和使用
1 什么是泛型?通俗的讲就是可以代替其它类型,为什么要使用泛型?类似于抽象归类,每个类型都可以使用同一个方法或者类或者接口来调用。//设置Integer类型的点坐标class IntegerPoint{ private Integer x ; // 表示X坐标 private Integer y ; // 表示Y坐标 public v...
2019-06-26 16:44:50
169
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人