gradle概念全局配置文件全局配置的使用 概念Gradle的官方定义:Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置。个人通俗的理解为:Gradle是一个构建工具,是用来帮我们执行编译、打包APP等过程的,并且我们可以自己配置构建规则,Gradle
转载 2024-04-07 15:28:36
73阅读
什么是EasyBundleEasyBundle是开源基础组件集成库EasyAndroid中的基础组件之一。其作用是:优雅的进行Bundle数据存取EasyAndroid作为一款集成组件库,此库中所集成的组件,均包含以下特点,你可以放心使用~~精简: 作为一款集成库,我不希望有那种大组件,尽量控制好集成库的大小。不要有冗余代码内聚: 尽量减少甚至避免单一组件对别的模块进行依赖。做到组件间独立。得益于
转载 2024-04-07 20:41:23
45阅读
抽取一个通用的Android的Loading页面我们知道,在Android应用程序开发过程中,我们有很多页面需要去请求网络数据,请求网络是一个耗时操作,这时,一般我们不允许用户进行其它操作。为了解决用户在等待中出现不耐烦或者误因为应用假死的情况出现,我们这时需要在请求网络的过程中,显示一个页面提示用户当前的网络请求状态的页面,通常是一个圆形进度条或者比较可爱的卡通动画的一个Loading页面。这样
ToolBar简介ToolBar是Android 5.0推出的一个新的导航控件用于取代之前的ActionBar,由于其高度的可定制性、灵活性、具有Material Design风格等优点,越来越多的应用也用上了ToolBar,比如常用的知乎软件其顶部导航栏正是使用ToolBar。官方考虑到仍有一部分用户的手机版本号低于5.0,所以,ToolBar也放进了support v7包内,使得低版本的系统也
转载 2023-12-29 16:53:54
62阅读
一 广播按照类型分为两种,一种是全局广播,另外一种是本地广播全局广播的意思就是发出的广播可以被其他任意的应用程序接收,或者可以接收来自其他任意应用程序的广播。本地广播则是只能在应用程序的内部进行传递的广播,广播接收器也只能接收内部的广播,不能接受其他应用程序的广播之前所说是属于全局广播,存在有数据安全的问题,使用本地广播,只能在本地应用程序中发送与接收广播,可以起到保护数据安全的作用。回想一下,之
转载 2023-11-09 16:19:27
73阅读
简介我们的项目里都会遇到几种页面,分别为加载中、无网络、无数据、出错四种情况,这四种情况是我们在项目中不可避免要出现的。有一个挺牛逼的哥们把这几种情况封装成库了,方便大家使用,不过现在这个库已经停止维护了。原理比较简单,继承FrameLayout,在xml渲染完成后,加上加载中、无网络、无数据、出错四个页面,根据需要控制显示哪一层,花了些时间,开了很多方法出来,支持很多属性的设置,算是比较实用,源
 [2016-06-30]最新的全局异常处理DRCrashHandler已经集成在DR_support_lib库中具体请看: https://coding.net/u/wrcold520/p/DR_support_lib/git/tree/master[2016-06-28] 1 增加log4j的支持[2016-06-28] 2 增加全局异常处理(可自定义程序崩溃提示消息,自定
概述前面我们讲过了lifecycle的使用及原理。今天我们谈谈viewModel。原本使用和原理是准备分开写的,结果我看了下ViewModel的原理,很简单,所以决定把两者放在一起了。那么接下来,我们进入正题。ViewModel是什么?ViewModel旨在以注重生命周期的方式存储和管理界面相关的数据。我们知道当屏幕旋转时,Activity会销毁并且重建,而它让数据可在发生屏幕旋转等配置更改后继续
转载 2024-02-21 23:38:56
396阅读
前言在上一篇博客中,我们从总体上介绍了AAC架构组件,以及Lifecycle组件的使用和源码解析,现在我们来了解ViewModel组件的使用和源码。ViewModel的作用ViewModel是android架构组件中非常重要的一个组件,它是Android架构分层的核心,有关它的用法和资料可以可以参考官方给出的示例https://developer.android.google.cn/topic/l
转载 2024-06-22 07:18:04
20阅读
总结下各种View 的滑动监听滑动阈值:int touchSlop = ViewConfiguration.get(this).getScaledTouchSlop();getMeasuredHeight()是实际View的大小,与屏幕无关,而getHeight的大小此时则是屏幕的大小。当超出屏幕后, getMeasuredHeight() 等于 getHeight(
目录一、什么是ViewModel二、如何使用ViewModel三、ViewModel 的生命周期四、在 Fragment 之间共享数据五、ViewModel原理项目目录结构为如下 Jetpack系列文章Android Jetpack架构组件-Lifecycle使用Android Jetpack架构组件-LiveData使用Android Jetpack架构组件-ViewModel的使用及原理An
概述在Android开发过程中通常在有网络请求的页面,需要设计加载中、加载失败等UI效果,来提升用户体验。本文就此需求实现了一个简单的LoadingLayout控件,可以比较方便的实现加载中、加载失败、网络错误等UI效果,并提供失败点击重试等操作。实现思路常用一般有以下几种请求状态:LOADING_STATE 加载中状态LOAD_SUCCESS_STATE 加载成功状态LOAD_FAILURE_S
转载 2023-08-20 21:55:29
287阅读
说到全局变量,可能在教科书里面都不建议我们使用,但是在实际开发过程中,会发现全局变量其实带来了很大的便捷性。虽然Android在不同的Activity切换时可以把要传递的值传到Intent里面(iOS中也有类似的方法),但是当我们应用的页面很多,逻辑渐渐复杂了之后,全局变量就带来了非常大的便利。我个人总结了之后,把全局变量分成了两大类:程序生命周期之外的全局变量这种全局变量当程序被kill了之后,
一、什么是状态管理大到整个app的状态,用户使用app是登录状态,还是游客状态;小到一个按钮的状态,按钮是点击选中状态还是未点击状态等等,这些都是状态管理。二、命令式编程和声明式编程状态管理的区别iOS是如何管理状态的,一般都是获取这个控件然后设置你想要的状态 当你的 Flutter 应用的状态发生改变时(例如,用户在设置界面中点击了一个开关选项)你改变了状态,这将会触发用户界面的重绘。去改变用户
接着上一篇博客Lifecycle,这一篇我们就来说一下ViewModel,jetpack全家桶系列之一ViewModel的作用是什么? 引用官话:ViewModel 类旨在以注重生命周期的方式存储和管理界面相关的数据。ViewModel 类让数据可在发生屏幕旋转等配置更改后继续留存。就像上面说的我们先举个例子 现在有一种情况就是,就用官话说的屏幕旋转的时候,比如我的界面上有个Textview,里面
数据一般有以下保存方式实现:SharedPreferences 采用java.io.* 库所提供的I/O 接口,读写文件。SQLite 数据库ContentProvider 一.SharedPreferences   SharedPreferences 是一种轻量级的数据保存方式,比较类似于我们常用的ini文件,用来保存运用程序的一些属性设置,较简单的参数设
转载 2024-01-03 21:46:05
45阅读
目录介绍01.界面状态有哪些02.采用include方式管理03.在Base类中处理逻辑04.如何降低偶性和入侵性05.封装低入侵性状态库 5.1 自定义帧布局5.2 自定义状态管理器5.3 如何管理多种状态06.封装库极致优化点说明 6.1 用ViewStub显示布局6.2 处理重新加载逻辑07.如何使用该封装库好消息博客笔记大汇总【16年3月到至今】,包括Java基础及深入知识
转载 2024-01-27 14:12:37
64阅读
Android数据存储——SharedPreferences 一、数据存储选项:Data Storage ——Storage Options【重点】 1、Shared Preferences Store private primitive data in key-value pairs. 保存简单的键值对数据。
转载 2024-03-15 22:36:29
25阅读
本文翻译自android官方文档,结合自己测试,整理如下。Android提供了一些永久保存数据的方法,可以根据具体的需求决定使用哪种方式存储,例如私有数据,外部程序是否可以访问等等。有以下几种方法存储:Shared Preferences 使用键值对存储私有数据类型Internal Storage(或称为文件存储) 使用内部存储保存私有数据External Storage 使用外部存储保存公
异常处理需求Android app 出现 crash 时,会出现 “程序异常退出” 的提示并关闭,体验不好,另外主要是无法知道哪里出现的崩溃,需要知道哪里造成的异常,就需要一个全局抓取异常的处理方式,可以把异常保存到手机或者上传到指定的服务器上,这样有利于 bug 的解决。通过微信订阅号的文章发现了一个全局处理该方式的接口UncaughtExceptionHandler。接口UncaughtExc
转载 2023-06-14 15:59:23
105阅读
  • 1
  • 2
  • 3
  • 4
  • 5