刘望舒 刘望舒
4年前
Android AOSP基础(五)Android Studio调试系统源码的三种方式
AOSP基础Android框架层本文首发于微信公众号「刘望舒」前言作为应用开发,我们将AOSP源码下载下来后,去查看源码已经足够用,如果想更进一步,可以学习调试源码,这样有助于了解系统源码和原理。调试系统源码的方式有很多种,今天分享出来的是比较适合应用开发的三种,分别是AOSP源码项目调试、导入部分源码调试、新建Android项目调试。需要注意的是,这三
2021年春招Android面试题,详细解说
来,发车了!1.战略定位:Android面试都会问些什么?要打败敌人首先需要摸清敌人。Android面试有它固有的套路。一般大厂的面试包括技术面3HR面1。技术面中一面考察基础知识,这一面相对容易,只要你把我下面给出的武林秘籍背熟就易如反掌。这一面大约占40%;二面侧重项目经历/应对问题能力,这一面要求普遍较高,需要学会应用知识,更注重于优
Stella981 Stella981
3年前
Maven项目使用打包时使用本地jar包库
在使用maven管理项目时,有时候我们可能会使用一些第三方的jar包依赖库,但是这些jar包依赖库又没有在共有的maven仓库。通常只能下来放到本项目的lib目录下。但是我们打包时如果不做处理,那么打包后的fatjar中不会有lib文件夹中的相关jar包。打包后无法运行起来,因此需要做特殊处理,让maven打包时能够把使用到外部jar打进去。主要就是在
Stella981 Stella981
3年前
Android WebView 的三种使用方式
关于原生开发好,还是混合模式开发好,还是套壳的方式好,在这里不是重点,没有最好的,只有相对适合的。重点是那种方式以最低的资源代价适合你的业务场景,适合你的团队,根据实际情况来做技术选型。1,使用h5替代android的viewxml前端将写好的h5页面放在android工程的asset目录,打包的时候会将h5页面一起打在apk里面,
Stella981 Stella981
3年前
Appium+android+Java混合模式的坑
  最近在玩自动化测试,小白玩自动化测试总是很辛苦,仅仅安装环境就要花好长时间。这几天安装环境,填了很多坑。下面我把我遇到的坑记录下来,包括填坑的过程。  首先,需要填的坑一:关于版本的问题。appium这款自动化工具,他对android版本有具体要求,android7.0必须是要appium1.8以上的版本,一开始我使用appium1.
Wesley13 Wesley13
3年前
SystemClock.sleep和Thread.sleep源码分析
一、在android中休眠3s钟有2中方法:1、SystemClock.sleep(3000);2、Thread.sleep(3000);二、通过系统源码区别1、SystemClock.sleep(longms)源码:publicstaticvoidsleep(longms){
Wesley13 Wesley13
3年前
7.1 安装软件包的三种方法 7.2 rpm包介绍 7.3 rpm工具用法 7.4 yum工具用法
7.1安装软件包的三种方法rpm工具rpm(RedhatPackageManager)RPM软件包管理器,是以一种数据库记录的方式来将我们所需要的套件安装到Linux主机的一套管理程序。rpm包是预先在Linux机器上编译好并打包好的文件,安装起来非常快捷。但是有一个缺点:安装环境必须与编译时的一致或相当;
Stella981 Stella981
3年前
2020Android开发陷入饱和,移动开发者未来的出路在哪里,我们该如何让应对?
Android开发的现状目前,移动开发已经处于饱和的阶段,Android开发也不如当年盛况,已经不再像前几年前那么火爆。正如一种编程语言如果经历过盛极一时,那么必然有这样的一条曲线,像我们学的正弦曲线先急速上升,然后到达顶点,然后再下降,最后再趋近一个平稳的值。可以看到,从2016年的下半年开始,移动互联网基本处于缓慢发展的
可莉 可莉
3年前
2020Android开发陷入饱和,移动开发者未来的出路在哪里,我们该如何让应对?
Android开发的现状目前,移动开发已经处于饱和的阶段,Android开发也不如当年盛况,已经不再像前几年前那么火爆。正如一种编程语言如果经历过盛极一时,那么必然有这样的一条曲线,像我们学的正弦曲线先急速上升,然后到达顶点,然后再下降,最后再趋近一个平稳的值。可以看到,从2016年的下半年开始,移动互联网基本处于缓慢发展的
Wesley13 Wesley13
3年前
JDK中的Atomic包中的类及使用
引言Java从JDK1.5开始提供了java.util.concurrent.atomic包,方便程序员在多线程环境下,无锁的进行原子操作。原子变量的底层使用了处理器提供的原子指令,但是不同的CPU架构可能提供的原子指令不一样,也有可能需要某种形式的内部锁,所以该方法不能绝对保证线程不被阻塞。Atomic包介绍在JDK1