自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (2)
  • 收藏
  • 关注

原创 Derect local .aar file dependencies are not supported when building an AAR.

最近把lib库生成aar时,发生了Direct local .aar file dependencies are not supported when building an AAR 的构建错误,具体如下图所示: 原因是Lib库的libs文件夹下已经包含了一个本地的aar,导致再二次编译生成aar时出错,经过各种搜索总结,这里记录下最终解决方案,以供日后翻阅。方法步骤:把Lib库的libs文件夹下的aar拷贝至任意目录, AS工程目录下操作顺序依次是F...

2021-09-16 17:26:29 8772

原创 Android 缩减、混淆处理和优化应用

目录前言启用压缩、混淆和优化功能Proguard 混淆规则Keep命令简介基本指令保留选项CodeLab: 项目通用模板~混肴规则如下:前言为了尽可能减小应用的大小,在发布 build 中启用缩减功能来移除不使用的代码和资源。启用缩减功能后,会受益于两项功能。一项是混淆处理功能,该功能会缩短应用的类和成员的名称;另一项是优化功能,该功能会采用更积极的策略来进一步减小应用的大小。使用Android Gradle 插件 3....

2021-07-22 14:46:42 593 1

原创 Android res/raw和assets资源文件夹区别

相同点:两者目录下的文件在打包后不会被编译成二进制,而是直接保存在apk包中。不同点: 1、raw中的文件会被映射到 R 资源文件中,直接使用资源ID来访问,如:resources.openRawResource(R.raw.emoji_face);而 assets文件夹下的文件不会被映射到 R 文件中,需要AssetManager类来进行访问,如:context.getAssets().open(fileName)。2、raw不可以有多级目录结...

2021-07-22 09:33:20 328 1

原创 软件设计六大原则

1、[Single Responsibility Principle] 单一职责原则:[优化代码的第一步] —— 一个功能类只负责单一功能或一类的功能。例如:图片加载库:一个类负责加载功能,一个类负责缓存数据功能)2、[Open Close Principle] 开闭原则:[让程序更稳定、更灵活] —— 对扩展开放【尽量通过继承的方式去扩展实现,一般修改源代码和扩展代码会同时存在】,对修改关闭【尽量禁止修改原先的类的代码】),遵守开闭原则的手段就是 [抽象](接口,或者抽象类)。3、[Lisk

2020-09-27 17:01:00 161

原创 单例模式-总结

单例模式主要有如下几个关键点:(1)构造函数对外不开放,一般为Private;(2)通过一个静态方法或者枚举返回单例类对象;(3)单例类的对象确保有且只有一个(特别是在多线程环境下);(4)单例类对象在反序列化时确保不会重新构建对象。以下是几种常见的单例模式:1、饿汉式单例public class Singleton { private static final Singleton instance = new Singleton(); private Singleton () {}

2020-09-27 16:12:07 129

原创 Android UI绘制优化

UI绘制是靠CPU与GPU共同协作完成的,其中CPU负责控件的测量计算和布局,GPU负责绘制,所以优化从 绘制优化和 XML布局优化两个方面来分析:绘制优化GPU过度绘制的2种情况:自定义控件中,onDraw方法做了过多的重复绘制 布局层次太深,重叠性太强,用户看不到的区域也被绘制,导致耗时增加知道问题,我们就可以从这2方面入手优化:a、减少背景重复注意主题中的设置,去...

2020-03-19 11:15:43 144

原创 Service 总结

认识 Service 的误区Service作为Android四大组件之一,它的主要作用是在后台处理一些耗时的逻辑,或者去执行某些需要长期运行的任务。注意:这里的后台是指,它的运行是完全不依赖UI的。即使Activity被销毁,或者程序被关闭,只要进程还在,Service就可以继续运行。并且要注意Service 是运行在主线程里的、Service 是运行在主线程里的、Service 是运...

2019-04-24 17:08:45 155

原创 Android 应用支持RTL 阿语反转的UI适配处理看这一篇就够了

注意:应用程序支持RTL的布局需要在AndroidManifest.xml的<application>中,添加android:supportsRtl=true。该声明代表您的应用程序是否支持从右到左(RTL)布局。targetSdkVersion设置为17或更高,则系统将激活并使用各种RTL API,以便您的应用程序可以显示RTL布局。如果设置为false或者targetSdkVers...

2019-04-08 11:52:47 7429 1

原创 Room 数据库迁移采坑记

a、采坑之新增表:1、假设在表UserModel 实体里有一个int字段 id 是主键自增的,在migrate()方法中执行建表SQL语句时,id需要指定 NOT NULL,否则会报异常:java.lang.IllegalStateException: Migration didn't properly handle UserModel 。2、新建表UserModel 实体时,可以含有bo...

2019-04-08 10:57:00 2664 3

转载 自定义控件其实很简单1/12

尊重原创转载请注明:From AigeStudio(http://blog.csdn.net/aigestudio)Power by Aige 侵权必究!自定义View,很多初学Android的童鞋听到这么一句话绝逼是一脸膜拜!因为在很多初学者眼里,能够自己去画一个View绝逼是一件很屌很Cool的事!但是,同样而言,自定义View对初学者来说却往往可望而不可及,可望是因为看了很多自定

2015-02-28 10:06:33 580

小程序笔记

小程序初学习过程中,有一些需要注意的地方,简单的记录了一下

2018-07-27

正则表达式语法

介绍了正则表达式的一些基本语法,适合新手入门!

2013-06-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除