android进阶
文章平均质量分 63
Ueming
游戏sdk开发者
展开
-
Android基于开源项目搭建自己的技术堆栈
timber是JakeWharton开发的一个日志记录库,它的特点是可扩展框架,开发者可以方便便捷地集成不同类型的日志记录方式,例如打印日志到Logcat,打印到日志文件、打印日志到网络等,timber通过一行代码可以调用多种方式。jackson是java语言的一个流行JSON函数库,并没有为Android优化定制过,因此函数包中含有很多非必要的api,相比其他JSON函数库,用于Android平台会更显著的增大最终生成APK的体积。从较高的层次讲,一个APP的整体架构可以分为两层,即应用层和基础框架层。原创 2022-12-13 17:05:43 · 1549 阅读 · 0 评论 -
Android点击事件的传递规则
4、某个view一旦开始处理事件,如果它不消耗ACTION_DOWN事件(onTouchEvent返回了false),那么同一事件序列中其他事件都不会再交给它来处理,并且事件将重新交给它的父元素处理,即父元素的onTouchEvent会被调用。5、如果View不消除ACTION_DOWN以外的其他事件,那么这个点击事件会消失,此时父元素的onTouchEvent并不会被调用,且当前View可以持续接收后续的事件,最终消失的点击事件会传递给Activity处理。6、ViewGroup默认不拦截任何事件。原创 2022-11-07 00:05:00 · 1803 阅读 · 0 评论 -
Android中IPC方式简介
ContentProvider是安卓中提供专门用于不同应用间进行数据共享的方式,它天生适合进程间的通信。Android是基于Linux,使得其并发读写文件可以没有限制的进行,甚至两个线程同时对一个文件进行写操作都是允许的。Messenger是以串行的方式处理客户端发来的消息,如果大量的消息同时发送到服务端,且需要并发处理,那么Messenger就不太合适了。Messenger是一种轻量级的IPC方案,它的底层实现是AIDL。共享文件也是一种不错的进程间通信方式,两个进程通过读写同一个文件来交换数据。原创 2022-11-02 17:58:07 · 982 阅读 · 0 评论 -
android中IPC机制简介
除了Binder,Android还支持Socket,通过Socket也可以实现任意两个终端之间的通信,当然同一个设备上的两个进程通过Socket通信也自然是可以的。什么是进程,进程和线程是截然不同的概念。按照操作系统中的描述,线程是cpu调度最小的单元,同时线程是一个有限的系统资源。IPC是Inter-Process Communication的缩写,含义为进程间通信或者跨进程通信,是指两个进程间进行数据交换的过程。最简单情况下,一个进程中可以只有一个线程,即主线程,安卓中为UI线程。原创 2022-10-25 15:27:39 · 1566 阅读 · 0 评论 -
Activity启动模式
这是一种单例模式,此模式下,只要栈中存在此Activity,那么多次启动此Activity都不会重复创建新实例,和singleTop一样,系统会回调其onNewIntent。当启动一个Activity后,系统首先会寻找栈中是否存在该Activity,存在,则把Activity调到栈顶,并回调onNewIntent方法。当Activity启动后,系统为其创建一个新的任务栈,然后Activity单独存在这个任务栈中,由于栈内复用的特性,后续请求均不会创建新的Activity,除非此任务栈被系统销毁。原创 2022-10-20 20:23:55 · 1875 阅读 · 0 评论