简介 作为Android开发者,如果你不想开源你的应用,那么在应用发布前,就需要对代码进行混淆处理,从而让我们代码即使被反编译,也难以阅读。混淆概念虽然容易,但很多初学者也只...
简介 作为Android开发者,如果你不想开源你的应用,那么在应用发布前,就需要对代码进行混淆处理,从而让我们代码即使被反编译,也难以阅读。混淆概念虽然容易,但很多初学者也只...
DSL(领域特定语言)是Kotlin所带来的强大语法特性之一,也是Java中所不存在的功能,JetBrain也基于DSL开发出了众多的开源库,Kotlin的开发者可以使用DS...
一、写在前面 在开始之前,你需要知道下面几点:有一份编译好的 Android 源码,现在的 AS 基本能满足,动手跟着步骤走,理解更深刻对 Binder 机制有一定的了解本文...
1. 什么是JVM? JVM本质上就是一个软件,是计算机硬件的一层软件抽象,在这之上才能够运行Java程序,JAVA在编译后会生成类似于汇编语言的JVM字节码,与C语言编译后...
This Handler class should be static or leaks might occur (anonymous android.os.Handler)...
1. 内存泄漏 在android程序开发中,当一个对象已经不需要再使用了,本该被回收时,而另外一个正在使用的对象持有它的引用从而导致它不能被回收,这就导致本该被回收的对象不能...
一. 简单介绍 GLSurfaceView继承自SurfaceView,实现了SurfaceHolder.Callback2接口, 其实是对SurfaceView再做了一次封...
【声 明】 首先,这一系列文章均基于自己的理解和实践,可能有不对的地方,欢迎大家指正。其次,这是一个入门系列,涉及的知识也仅限于够用,深入的知识网上也有许许多多的博文供大家学...
| 前言 你是一位即将踏入Android应用开发领域的新手吗?或者你已经有一些经验,但对于如何选择适合的架构感到困惑?不要担心!本文将带你踏上一段有趣而富有挑战的架构演进之旅...
效果图 简介 基本上只要需要登录的APP,都会有验证码输入,所以说是比较常用的控件,而且花样也是很多的,这里列出来4种样式,分别是: 表格类型 方块类型 横线类型 圈圈类型 ...
第一节 清晰:一个观念,重构的你行动 看完这一小节过后,我们可以从:知易行难 >--< 知难行易 的区别是什么,为什么会导致这样的现象 这一方面进行如何目前的一个现象:大多数...
服务提供者框架 1.什么是服务提供者框架 服务提供者框架是指:多个服务提供者实现一个服务,系统为客户端提供多个实现,并把他们从多个实现中解耦出来。服务提供者的改变对它们的客户...
Activity 和 AppCompatActivity 的区别 Activity的实例化 ActivityThread.performLaunchActivity-->a...
1.布局文件: 2.kotlin对应的adapter代码: 3.注意点:我们看源码知道(只截取了重点部分),该静态抽象类里面有三个抽象方法,当我们继承一个抽象类的时候,需要实...