![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android
文章平均质量分 66
zhangzhuo1024
1024
展开
-
Manifest merger failed with multiple errors, see logs
只合并属性,不合并嵌套的属性。合并规则中很重要的一个规则是节点标记,而merge 是默认行为,当manifest 各节点属性没有声明节点标记时候,就会使用默认值。当低优先级的清单文件属性合并到高优先级中,假如高优先级中没有对应的属性,则直接合并,假如有并且不一样,这时候就有了冲突,应该去解决,怎么解决?strict 严格的意思,就是不同的清单文件,相同属性的值应该一样,否则编译失败。清单文件合并是按照优先级进行合并的,低优先级的清单文件内容合并到高优先级的,假如合并的时候产生了冲突就需要解决冲突。..原创 2022-08-12 14:09:07 · 733 阅读 · 0 评论 -
Module、Library、Jar 的理解
Module、Library、Jar 的理解: 我们新建module的时候,可以新建普通的module项目,默认的普通项目包含代码、资源可以编译成apk;同时,也可以新建library这种module,library不是自己来用的,主要是将独立的功能包装好,方便作为功能包提供给别的module用的,新建的时候,可以新建Android Library也可以新建Java or Kotlin Library,前者是安卓lib后者是javalib,安卓lib包含代码加资源文件,javalib只包含...原创 2020-08-27 23:32:40 · 1863 阅读 · 0 评论 -
组件通信、线程通信、进程通信,你真的理清了吗?
通信从总体上来看,可以理解为“弱通信”和“强通信”两种。弱通信弱通信就是通过修改公共区的值,让两者都能获取,从而实现两者的信息传递。同进程不同组件弱通信:ActivityA中新建计算类CalculatorB,在CalculatorB中进行计算,计算结果保存至sharedpreference、保存到数据库、保存到文件中等。在保存后的数据在ActivityA读取刚才保存的数据然后刷洗界面,这就实现了两个组件的信息狡猾,注意,弱通信只有修改,没有通知,所以ActivityA读取的时间和Calculat原创 2020-05-10 01:00:27 · 297 阅读 · 0 评论 -
性能优化组合拳
一、启动优化二、运行时卡顿优化三、内存优化四、apk体积优化五、电量优化原创 2020-05-05 16:46:18 · 854 阅读 · 0 评论 -
View事件分发机制速查表
写自定义控件时,经常遇到事件冲突问题,之前事件分发问题零星的梳理过几遍,但奈何分发事件由于情况的多变,导致最后的结果种类太多,时间长了又没有印象了。又不能每次遇到问题就从源码梳理一遍,特此梳理一份全网最全的事件分发结果速查表此处不对源码做讲解,只提供事件分发流程快速查询结果,便于在平时工作中能够快速定位说明:1、方形虚线框是对应控件的相关方法。如ViewGroup1、View...原创 2020-04-25 17:44:57 · 275 阅读 · 0 评论