- 博客(36)
- 问答 (30)
- 收藏
- 关注
原创 Android-Jetpack-Lifecycle原理
目录使用方法使用方法class MainLifecycleObserver : LifecycleObserver { @OnLifecycleEvent(Lifecycle.Event.ON_ANY) private fun onAny() { // 每次有新的生命周期方法调用,都会调用 onAny MLog.i("onAny") } @OnLifecycleEvent(Lifecycle.Event.ON_CREATE) p
2021-08-16 15:21:56 196 1
原创 Android 启动优化
启动命令耗时// adb shell am start -S -W 包名/启动的Acitivityadb shell am start -S -W com.yitaixiang.app.prod/com.gcigb.box.module.login.FlashActivityStopping: com.yitaixiang.app.prodStarting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.L
2021-07-30 10:46:56 254
原创 Kotlin Flow 常用操作符
摘抄自 Kotlin 语言官网文档,为的是列出相关操作符,方便自己后期查看点我跳转 Kotlin 官网文档 Flow目录Flow 是什么?创建Flowflow{}flowOf(1,2,3).asFlow()emitcollect取消withTimeoutOrNull(250)转换maptransform限长操作符take末端操作符toList、toSetfirst、single、foldreducefilterflowOnbuffer合并conflatecollectLatestFlow 是什么?挂
2021-07-28 18:06:20 1048
原创 Java 数据结构对比
ArrayList优点:查找快,尾部插入(删除)快缺点:删除(插入) 头部(中间)的元素慢查找快:是因为内存是连续的,0xabcdefg + i * 4 可以快速找到元素尾部插入(删除)快:不需要 arrayCopyLinedList优点:插入(删除)速度快缺点:查找速度慢插入(删除)速度快:双向链表的数据接口,只需要修改指向(prv、next)就可以完成查找速度慢:验证链表一直往下找HashMap1.7 之前:数组 + 链表1.8 之后:数组 + 链表 + 红黑树优点:结
2021-07-23 17:32:11 223
原创 MySQL 常用函数 - 日期函数
目录当前日期返回当前时间返回当前日期和时间返回日期时间的各个部分返回年份返回天数部分返回月份值返回小时值返回分钟值返回秒钟值返回日期参数所对应的微妙数提取传入表达式的时间部分提取字符串中的值计算时间值计算起始日期 d 加上 n 天的日期时间 t 加上 n 秒的时间两个日期的想个天数计算起始日期 d 加上一个时间段后的日期,默认是天从日期减去指定的时间间隔日期减去 1 天后的日期时间减去 5 秒后的时间计算时间差值按表达式的要求显示日期将字符串转变为日期返回星期几:Friday返回在本月的第几天日期 d 今天
2020-09-21 16:02:03 137
原创 MySQL 常用函数 - 数字函数
目录平均数返回数量返回列中最大的值返回列中最小的值合计绝对值最接近小数的整数返回列表最大的值返回列表最小的值余数number 的 n 次方保留指定小数位数将弧度转为角度将角度转为弧度除数随机数返回圆周率平方根返回自然对数返回以 N 为底的对数返回 x 的符号,x 是负数、0、正数分别返回 -1、0 和 1求正切值,参数:弧度求正弦值,参数:弧度反余弦值,参数:弧度反正弦值反正切值余切值余弦值平均数SELECT AVG(money) FROM hero;返回数量SELECT COUNT(*) FRO
2020-09-21 15:37:03 270
原创 MySQL 常用函数 - 字符串
目录返回字符串的字符数将多个字符串合并成一个返回字符在字符串中的位置替换字符串格式化数字添加逗号分隔转换大小写在字符串中截取字符填充字符删除字符串中的空格重复字符串反转字符串返回 N 个空格比较字符串返回字符串的字符数SELECT CHAR_LENGTH('runoob');SELECT CHAR_LENGTH('runoob ');SELECT CHAR_LENGTH('这是一个');SELECT CHARACTER_LENGTH('runoob');SELECT CHARACTER_L
2020-09-21 15:16:15 83
原创 MySQL 操作练习
目录启动 MySQL登录本机 MySQL 数据库列出所有数据库列表选择要操作的数据库创建一个 hero 数据表删除 hero 表增删删除所有数据根据条件删除改查查询所有数据查询部分字段排序选取唯一不同的值Where 子句中的运算符查询两个数值之间的数据通配符查询指定数量数据别名JOIN启动 MySQLnet start mysql登录本机 MySQL 数据库mysql -u root -p列出所有数据库列表SHOW DATABASES;选择要操作的数据库USE study_databa
2020-09-16 14:51:16 362
原创 MySQL 练习
SHOW DATABASES;CREATE DATABASE testCreate;USE arrange;CREATE TABLE persons( id_p INT NOT NULL AUTO_INCREMENT, name_p VARCHAR(10) NOT NULL, gender VARCHAR(1) NOT NULL, age INT, email VARCHAR(255), city VARCHAR(20), PRIMARY KEY (id_p));INSE.
2020-09-15 15:41:51 211
原创 Android 偷懒小妙招儿
目录为Activity自动添加 android:screenOrientation="portrait" 属性android:screenOrientation="portrait" 报红问题为Activity自动添加 android:screenOrientation=“portrait” 属性$AS安装目录\plugins\android\lib\templates\activities\common\root\AndroidManifest.xml.ftl<manifest xmlns
2020-05-09 16:41:42 146
原创 Android 遇到过的问题汇总
目录小内存手机加载大图OOMTextView选择器小内存手机加载大图OOMpublic static boolean isLowMemory(){ int maxMemory = (int) (Runtime.getRuntime().maxMemory() / 1024 / 1024); if (maxMemory < 300) { return tru...
2020-04-24 17:05:28 170
原创 Android 在安装完成界面直接打开应用,按HOME回到桌面,再次点击应用图标,会重新走 android.intent.category.LAUNCHER Activity
Android 在安装完成界面直接打开应用,按HOME回到桌面,再次点击应用图标,会重新走 android.intent.category.LAUNCHER Activity,解决方案如下:在该Activity的onCreate加入如下代码,@Overrideprotected void onCreate(@Nullable Bundle savedInstanceState) { ...
2020-04-22 17:21:17 462
原创 Java 常用算法之排序算法
冒泡排序public class Sort1 { public static void main(String[] args) { int[] array = new int[]{3, 8, 9, 2, 0, 1, 10, 23, 524, 12, 234, 7, 230, 999, 123, 5, 10000}; for (int i = 0; i &...
2020-04-18 17:11:32 95
原创 Java 常用算法之查找算法
通用public static int[] getArray() { int[] array = new int[100]; for (int i = 0; i < array.length; i++) { array[i] = i + 1; } return array;}1、顺序查找publ...
2020-04-18 10:53:04 99
原创 Android 每日一问
持续更新中…您在项目开发中使用的屏幕适配方案是什么样的?使用dimens使用谷歌的自动布局或百分比布局自定义适配布局文件对于手机与平板的适配,使用Layout目录切入源码层实现...
2020-04-17 18:53:26 153
转载 Android 自定义View详细介绍
onMeasure用于测量子控件的宽高MeasureSpec在很大程度上决定了一个View的尺寸规格。三种模式:MeasureSpec.EXACTLYMeasureSpec.AT_MOSTMeasureSpec.UNSPECIFIEDEXACTLY:是写出具体的dp值AT_MOST:一般对应wrap_content,最大值不能超过父控件宽高UNSPECIFIED:一般在...
2020-04-04 14:51:16 203
原创 Android 自定义控件相关方法
View的绘制流程OnMeasure()——>OnLayout()——>OnDraw()各步骤的主要工作:OnMeasure():测量视图大小。从顶层父View到子View递归调用measure方法,measure方法又回调OnMeasure。OnLayout():确定View位置,进行页面布局。从顶层父View向子View的递归调用view.layout方法的过程,即父...
2020-04-04 14:30:06 99
原创 Android 三种自定义控件的应用
通常来说自定义控件分为三种:继承于View或ViewGroup继承于系统现有控件,如:Button、TextView、ImageView …基于组合控件,包含了其他控件组合控件当我们构建这样的菜单列表,不必每一个item在布局里都重写一次,可以提取相同的元素,将单个item封装成控件,需要时直接引用即可。思路:分析一下布局中的元素,左边的icon,中间的text,右边的箭头,右边...
2020-04-04 13:22:21 211
原创 Android 混合开发优缺点
混合应用开发正是结合原生和H5开发的一种开发模式。原生代码部分利用WebView控件或者其它的框架为H5提供了一个容器,在应用中比例非常自由,比方Web 占90%,原生占10%;或者各占50%;再或者原生占80%,Web占20%。优点开发效率高,节约时间同一套代码Android和IOS基本都可用;更新和部署比较方便,不需要每次升级都要上传到应用商店进行审核,只需要在服务器端升级就可以;...
2020-04-04 12:53:31 1171
原创 Android 单一工程vs组件化开发
单一工程顾名思义,就是一个代码工程(Project)对应一个APP了,这个APP的所有业务功能都是集中在同一个工程里实现的。组件化简单来说,就是将一个APP的业务功能进行拆分,每一个功能都是一个单独的工程(Module),每个工程都能独立运行,且只包含自己的业务,我们姑且叫这个独立的功能为一个组件服务,最后由一个空壳APP将多个拆分出的组件集成而成。单一工程缺点**对工程的任意修改...
2020-04-04 12:24:51 203
原创 Java 常用设计模式
先简单列举一下我常用的设计模式,有空再更新,嘿嘿嘿。。创建型单例模式工厂模式建造者模式结构型桥接模式适配器模式装饰器模式代理模式行为型模板方法模式观察者模式策略模式命令模式责任链模式访问模式...
2020-04-04 10:57:16 93
原创 Java 六大设计原则
六大设计原则分别为:依赖倒置原则-Dependency Inversion Principle (DIP)里氏替换原则-Liskov Substitution Principle (LSP)迪米特法则 - Least Knowledge Principle (LKP)单一职责原则-Single Responsibility Principle (SRP)接口隔离原则-Interface...
2020-04-04 10:39:13 168
原创 Android 迁移Androidx后,5.1系统版本 WebView 崩溃问题
由于公司项目是原生与H5混合开发,前段时间将项目迁移到了Androidx,今天早上用低版本测试机测试时,发现奔溃,已解决。记录一下,崩溃日志如下:解决方案如下:public class LollipopFixedWebView extends WebView { public LollipopFixedWebView(Context context) { ...
2020-04-01 14:11:17 1770 2
原创 Android 时间格式化(刚刚、x分钟前、x小时前、昨天、x天前、xx月xx日、xxxx年xx月xx日)
最近公司项目在搞动态相关的,产品昨天给出了时间格式,下午花了一点时间搞了一下,分享给大家。1 分钟以内:刚刚1-2分钟:1分钟以前过了1个小时(60分钟以内使用xx分钟以前):1小时以前过了1个24:00:昨天过了2个24:00:2天前不是本年:xxxx年xx月xx日public class TimeHelp { public static String...
2020-03-24 11:29:43 1677 1
原创 Linux 终端快捷键
在终端中删除很长一段字符用 backspace ?写了很长一段字符后发现,头部漏写了什么?试试下面的快捷键吧!Tab :自动补全Ctrl+a:光标移动到开始位置Ctrl+e:光标移动到末尾Ctrl+k:删除此处至末尾Ctrl+u:删除此处至开始Ctrl+d:删除当前字符Ctrl+h:删除前一个字符Ctrl+w:删除前一个单词Alt+d:删除后一个单词...
2020-03-23 23:18:43 93
原创 Sublime 编辑器常用快捷键
受老同事的影响,将石墨文档中的记录搬出来,不由得感到一阵舒服,嘿嘿。。。。。。1、通用↑↓← → 上下左右移动光标Alt 调出菜单Ctrl + Shift + P 调出命令板(Command Palette)Ctrl + ` 调出控制台2、编辑Ctrl + Enter 在当前行下面新增一行然后跳至该行Ctrl + Shift + Ent...
2020-03-23 23:11:28 312
原创 Android Studio 常用快捷键整理
熟练使用这些快捷键,可以使你的开发事半功倍!嘿嘿。。。。。。。。。。Ctrl+Alt+Shift+T 重构Alt+Insert 弹出快速代码生成框,有构造方法、getter/setter方法、toString方法Alt+鼠标左键长按 可以同时选中多行Alt+F7 搜索某个方法是否被调用Alt+F7 查看引用该方法的所有片段Alt+Q 显示当前类的标题Shift+F6...
2020-03-23 23:03:53 150
原创 Android 腾讯开源UI框架 - QMUI 点击效果修改
这两天受到老同事的影响,突然想要写博客了,以前都是写在石墨文档里,在线更新方便,嘿嘿。。好了,废话不多说。QMUI 作为腾讯开源的 github 上 star 数 10.4k 的优秀开源UI框架,相信做 Android APP 开发的小伙伴,都多多少少听说过,此框架内的按钮可以设置点击效果 alpha,但是只能在代码中设置开启这个属性,并且默认是 0.5f,并没有暴露在外面的设置透明值的方...
2020-03-23 22:57:43 681 1
原创 Android TextView 选择器踩过的坑
关于selector选择器,相信当家都不陌生,textColor、background等等都可以设置选择器。前几天把最近新加的功能跑到公司的测试机上发现,纷纷崩溃!心里仿佛一万只什么马奔腾而过,在我自己手机(Android Q)上一点儿毛病都没有,在公司的测试机上9.0以下全部崩溃,找了几个小时终于找到原因,特此记录以下。textColor<?xml version="1.0"...
2020-03-23 22:34:01 1262
原创 判断手机有无外置sd卡
private boolean haveSdcard(){StorageManager manager = (StorageManager) getSystemService(STORAGE_SERVICE);StorageVolume[] mVolumes=manager.getVolumeList();String ExternalStorage=null;for(St
2016-07-02 09:22:01 383
原创 关于设置听筒播放模式
AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);am.setSpeakerphoneOn(false); am.setMode(AudioManager.MODE_IN_COMMUNICATION);setVolumeControlStream(AudioManager.STRE
2016-07-01 17:54:47 1617 1
空空如也
anroid 存储一个文件,使恢复出厂设置不被清除!急!!!!!!
2017-11-01
隐藏状态栏,但是activity不要全屏显示
2017-07-20
android 7.0 launcher3 去掉二级菜单(AllAppsButton)
2017-06-07
android 系统源码性能优化
2017-03-15
有没有熟悉android6.0源码的大神呀!6.0权限的问题?
2017-02-07
android6.0 系统源码应用权限的问题
2016-12-19
android 6.0 的首选网络类型不能手动修改了吗?
2016-12-19
各位大神大仙快来帮帮小弟吧,是个关于TextToSpeech播放文本的问题
2016-11-29
关于手机是否校准的问题
2016-11-12
关于VidoeView 播放视频的问题,急!!!!!!!!
2016-11-02
急!!!!!!!!!!!!!!!111
2016-09-09
都快来看看!!!异常奇怪!!!
2016-08-16
actionBar 上的菜单按钮背景颜色怎么设置选择器,根据焦点来设置背景颜色
2016-08-03
VideoView 播放视频的问题
2016-08-02
关于VideoView播放视频出现的问题
2016-07-19
关于 Movie播放gif图片的问题
2016-07-18
关于自定义控件居中的问题
2016-07-14
关于ContentProvider修改数据的问题
2016-07-11
关于VideoView 显示 无法播放此视频
2016-07-04
关于使用videoview开发视频播放器
2016-07-02
关于旋转图片保存后变模糊
2016-07-01
关于删除sd卡中的文件
2016-06-29
关于跳转到系统相册的隐式意图
2016-06-15
老人机中音乐播放器A-B点循环播放
2016-06-06
关于设置sim卡1,卡2的来电铃声
2016-06-06
在别的app中获得手机中的闹钟数量以及名称
2016-06-06
listview重用item的问题
2016-05-10
android 5.1 听筒模式
2016-05-10
android源代码视频播放器
2016-04-12
哥哥姐姐们好,我有个关于android源码蓝牙的问题!求解。。。
2016-04-08
TA创建的收藏夹 TA关注的收藏夹
TA关注的人