在代码中添加信息提供了一种形式化的方法,使我们可以在稍后某个时刻非常方便地使用这些数据。这就是注解,比如@Override,@Deprecated。
我们使用ThreadLocal能够解决线程局部变量统一定义问题,多线程数据不能共享的问题,使得每一个线程单独维护自己线程内的变量值(set、get、remove)。
如果我需要在音视频app中的登录界面记住账号密码,并且在音视频的传输过程中,将编码后的mp4文件和aac文件保存,这个就需要用到Android数据存储。
RecyclerView,一个强大的控件,既支持纵向滚动,又支持横向滚动。 应用场景非常广泛,简单说ListView可以做的它可以做,ListView不支持的横向它也可以做。
Handler是一个优秀的内存共享方案。其内存管理和设计思路相当完整。 通过Handler来通知UI组件更新或者是处理对应消息。那么Handler消息机制是什么?
Android是基于事件驱动的,即所有的不管是Activity、Service生命周期都是通过handler事件驱动的。 那么Handler内部的线程是如何管理而且还能够保证安全。