编译Android源码需要经历以下几个步骤:
- 搭建编译环境
- 下载源代码
- 编译源码
- 刷入真机
有些步骤可能比较耗时,需要耐心等待;如果不出意外,按照本文介绍的步骤可顺利完成Android源码编译和刷写系统。
编译Android源码需要经历以下几个步骤:
有些步骤可能比较耗时,需要耐心等待;如果不出意外,按照本文介绍的步骤可顺利完成Android源码编译和刷写系统。
之前在Android Studio中编写NDK C/C++相关代码,通过Gradle和CMake编译成动态库,然后再利用JNI的方式进行调用。现在需要编译Android C/C++可执行程序,通过运行程序做一些小实验,而这些小实验都是纯C/C++编写,不包含任何Java代码,那么是否可以利用现成的环境进行开发呢?本文将一步步讲解怎样使用CMake编译Android可执行程序。
在AOP编程初体验中讨论了如何利用AspectJ在编译阶段插入Log代码,但是它也存在一些缺点,如:
当然它也有很多优势,如功能和切入点丰富,可以在不修改原有代码的情况下在编译阶段插入想要的代码,如果想要了解其中的原理,可以把本文作为入门之选。
某些情况发布SDK时,需要提供Demo的代码,通常将其打包成zip文件(如腾讯X5)。右键压缩一个文件夹是我们平时最常用的方法,Demo代码文件夹也可以通过右键压缩。在Demo.zip只需要提供一次的情况下,右键压缩无疑是最好最快的方法,当需要经常改动代码且频繁发布Demo.zip时,右键压缩可能就不是最好的解决方案了。下面将介绍如何借助Gradle打包Demo代码的方法。
之前通过WindowManager
添加一像素的View
来进行进程保活,虽然不会显示在最近任务列表中,也不会响应主页键和后退键,但是进程的oom_adj值4,且在灭屏后,进程还会被系统给清理掉,通过一像素的窗口保活也有其适用范围。那么网上说的一像素Activity
可不可以试试呢?有时间也不妨试试。
对于Android进程保活问题,网上已经有很多答案了。例如:
方案有很多种,但每一种方案的有其适用范围,且随着Android版本的更新和厂商对ROM的深度定制,所以昨天的方法,今天不一定适用。有没有完全之策呢?可以肯定的说没有。虽然没有百分之百可靠的方法,但这不该成为你去探索答案的阻碍。
在Android中使用OpenGLES主要有四种方法:
GLSurfaceView
配合GLSurfaceView.Renderer
的纯Java代码实现。GLSurfaceView
配合GLSurfaceView.Renderer
的半Java半C/C++代码实现。SurfaceView
的的半Java半C/C++代码实现。ANativeActivity
的纯C/C++代码实现。下面主要阐述这四种方法各自的特点。