且行且记

  • Home

  • Archives

  • About

Android源码编译

Posted on 2020-04-05 | In Android

编译Android源码需要经历以下几个步骤:

  1. 搭建编译环境
  2. 下载源代码
  3. 编译源码
  4. 刷入真机

有些步骤可能比较耗时,需要耐心等待;如果不出意外,按照本文介绍的步骤可顺利完成Android源码编译和刷写系统。

Read more »

CMake编译Android可执行程序

Posted on 2019-08-19 | In Android

之前在Android Studio中编写NDK C/C++相关代码,通过Gradle和CMake编译成动态库,然后再利用JNI的方式进行调用。现在需要编译Android C/C++可执行程序,通过运行程序做一些小实验,而这些小实验都是纯C/C++编写,不包含任何Java代码,那么是否可以利用现成的环境进行开发呢?本文将一步步讲解怎样使用CMake编译Android可执行程序。

Read more »

Android注解处理器之编译插入Log代码

Posted on 2019-05-01 | In Android

在AOP编程初体验中讨论了如何利用AspectJ在编译阶段插入Log代码,但是它也存在一些缺点,如:

  • 增加方法数量。每在一个切入点插入代码,就会增加一个或者更多的方法。
  • 增加整体包的大小。导入AspectJ会增加大概73K+的大小,对于现在的APP动则上百MB来说不算什么,但是为了几句简单的代码引入这么多代码实则没有必要。
  • 如果切入点是方法,我暂时没有发现如何获取参数名和参数值,这也是为什么要自己编写注解处理器之编译插入Log代码的主要原因之一。

当然它也有很多优势,如功能和切入点丰富,可以在不修改原有代码的情况下在编译阶段插入想要的代码,如果想要了解其中的原理,可以把本文作为入门之选。

Read more »

记SDK发布之Demo打包

Posted on 2019-04-06 | In Android , Gradle

某些情况发布SDK时,需要提供Demo的代码,通常将其打包成zip文件(如腾讯X5)。右键压缩一个文件夹是我们平时最常用的方法,Demo代码文件夹也可以通过右键压缩。在Demo.zip只需要提供一次的情况下,右键压缩无疑是最好最快的方法,当需要经常改动代码且频繁发布Demo.zip时,右键压缩可能就不是最好的解决方案了。下面将介绍如何借助Gradle打包Demo代码的方法。

Read more »

Android进程保活之一像素Activity

Posted on 2019-03-31 | In Android , 性能优化

之前通过WindowManager添加一像素的View来进行进程保活,虽然不会显示在最近任务列表中,也不会响应主页键和后退键,但是进程的oom_adj值4,且在灭屏后,进程还会被系统给清理掉,通过一像素的窗口保活也有其适用范围。那么网上说的一像素Activity可不可以试试呢?有时间也不妨试试。

Read more »

记SDK发布

Posted on 2019-03-31 | In Android , Gradle

问题描述

  1. 对外发布SDK,SDK以aar格式发布,如sdk.aar;
  2. sdk.aar依赖于video.aar、audio.aar和file.aar,且这些aar都不能发布到公司外网的Meavn上,但均托管在公司内网的Meavn上。
    Read more »

Android进程保活之一像素悬浮窗

Posted on 2019-03-24 | Edited on 2019-03-31 | In Android , 性能优化

对于Android进程保活问题,网上已经有很多答案了。例如:

  • 【腾讯Bugly干货分享】Android 进程保活招式大全
  • Android保活/拉活(一)教程检索

方案有很多种,但每一种方案的有其适用范围,且随着Android版本的更新和厂商对ROM的深度定制,所以昨天的方法,今天不一定适用。有没有完全之策呢?可以肯定的说没有。虽然没有百分之百可靠的方法,但这不该成为你去探索答案的阻碍。

Read more »

AOP编程初体验

Posted on 2019-02-27 | Edited on 2019-05-01 | In Android

过去总是听到面向切面编程(Aspect Oriented Programming)话题,一直没有找到合适的机会去了解它。最近在不同项目之间切换,每次都要写一些重复的代码,想减轻一下工作量。正好每个项目都需要打log,那么就从最简单的打log开始吧。

Read more »

Retrofit简单使用

Posted on 2019-01-20 | In Android , JSON , Http

为什么要写这篇博客呢?

  • 由于主要从事系统应用的开发,很少涉及到网络相关的开发;
  • 最近要解决应用OTA问题,参考其他项目的代码,里面使用了Retrofit 库;
  • 平时看博客时,发现很多人都在使用Retrofit +RxJava+MVP/MVVM的模式进行开发网络应用。

正所谓天时地利人和,是时候学习下Retrofit 了。

Read more »

Android中使用OpenGLES的几种方法

Posted on 2018-10-28 | In Android , OpenGL ES

在Android中使用OpenGLES主要有四种方法:

  • 使用GLSurfaceView配合GLSurfaceView.Renderer的纯Java代码实现。
  • 使用GLSurfaceView配合GLSurfaceView.Renderer的半Java半C/C++代码实现。
  • 使用SurfaceView的的半Java半C/C++代码实现。
  • 使用ANativeActivity的纯C/C++代码实现。

下面主要阐述这四种方法各自的特点。

Read more »
12

Huntto

18 posts
16 categories
31 tags
© 2020 Huntto
Powered by Hexo v3.7.0
|
Theme — NexT.Pisces v6.3.0