新建(New):线程对象已经产生但是未启动, 如通过new产生一个线程对象,但是未调用start()之前 就绪(Runnable):每个多线程系统都有排程器,排程器会从线程池...
新建(New):线程对象已经产生但是未启动, 如通过new产生一个线程对象,但是未调用start()之前 就绪(Runnable):每个多线程系统都有排程器,排程器会从线程池...
最近在网上看到一篇对于Binder讲解绝佳的文章,读完感觉对于自己帮助很大,遂原封不动的转载于此,顺便膜拜一下大神。原文的Github链接:写给 Android 应用工程师的...
1. 准备 把某系统双开的两个app的信息进行对比 1.1 目录的对比 1.1.1 data目录对比 原应用: 被复制的应用: 1.1.2 apk所在目录对比 原应用: /d...
参考 我的Android进阶之旅------>android Button上面的英文字符串自动大写的问题解决android在使用过程中,解决 Button 和 TabLayo...
关于重构的一些话 为什么我们需要重构? 重构改进软件设计 只为了短期目的或者在完全理解整体设计之前编写出来的代码,会导致程序逐渐失去自己的结构。这时如果没有重构,程序的设计会...
TicktockMusic 音乐播放器项目相关文章汇总: Clean Architecture 架构:https://www.jianshu.com/p/15ea0fecb6...
背景 近几年,Android 相关的新技术层出不穷。往往这个技术还没学完,下一个新技术又出来了。很多人都是一脸黑人问号?不少开发者甚至开始哀嚎:“求求你们别再创造新技术了,我...
Android.mk简介: Android.mk文件用来告知NDK Build系统关于Source的信息。Android.mk将是GNU Makefile的一部分,且将被Bu...
单元测试是应用程序测试策略中的基本测试,通过对代码进行单元测试,可以轻松地验证单个单元的逻辑是否正确,在每次构建之后运行单元测试,可以帮助您快速捕获和修复因代码更改(重构、优...
Android采用分层的架构,分为四层,从高层到底层分为应用程序层(app+System apps),应用程序框架层(Java API Framework),系统运行库和运行...
问题描述 在Android开发中,Toast的重复显示问题很早就有人提出了解决方案,具体做法就是全局使用一个Toast对象,就像下面这样: 相信大多数人的项目中都会有一个类似...
3.1 Android单元测试难点 在Android应用程序里写单元测试时,刚开始往往会有无从下手的感觉。他既有处理UI逻辑的代码,也有处理业务逻辑的代码,总感觉一团乱麻。根...
meta-data常见于我们使用第三方SDK时,比如友盟统计,比如讯飞SDK,配置appid会用到,而实际上,meta-data可做的远不止这些。在公司我的框架中某一功能是依...