
Android笔记
Simple_ R
这个作者很懒,什么都没留下…
展开
-
解开迷惑——Android Context究竟是什么
Android应用开发常会用到context,但是对于初学者来说,context的概念很抽象。那么Context究竟有什么用以及怎么用呢?首先看SDK对Context下的定义:Interface to global information about an application environment. This is an abstract class whose im原创 2014-11-05 10:39:47 · 724 阅读 · 1 评论 -
Android dependency '..' has different version for the compile (..) and runtime (..) classpath
报错详情Android dependency '..' has different version for the compile (..) and runtime (..) classpath解决方式把 implementation 这个依赖的方式改为 api 然后重新 rebuild 就好了分析原因todo...原创 2019-03-08 10:20:07 · 702 阅读 · 0 评论 -
OutOfMemoryError
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':common:compileDebugJavaWithJavac'. at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(Exe...原创 2019-03-06 14:07:01 · 473 阅读 · 0 评论 -
OkHttp源码分析
本篇只是听视频课的记录,写得比较乱。原创 2019-02-14 13:01:49 · 364 阅读 · 0 评论 -
Android中为什么主线程不会因为Looper.loop()里的死循环卡死?
这是很好的一个问题,涉及的知识有:Process/Thread,Android Binder IPC,Handler/Looper/MessageQueue消息机制,Linux pipe/epoll机制暂时还没认识那么深入,等准备充分之后,再来码这一篇.https://www.zhihu.com/question/34652589/answer/59578531消息机制角色:M...原创 2019-01-30 00:21:19 · 390 阅读 · 0 评论 -
Android应用开发常用架构比较
todo...mvpmvvmcleancomponent原创 2018-12-17 12:55:48 · 245 阅读 · 0 评论 -
Android中动态代理模式的应用
欲理解动态代理,可能先了解静态代理更容易理解.一,静态代理从静态代理UML图可以看到,主要有三个角色:共同接口,代理对象和被代理对象(真实对象),代理对象和真实对象都继承自共同的接口.同时,代理对象拥有真实对象的引用.//共同的接口public interface Subject { void operate1(); void operate2(String s...原创 2018-12-06 16:36:18 · 1486 阅读 · 0 评论 -
RxJava Introduction
整理自油管上一个RxJava的视频:https://www.youtube.com/watch?v=XLH2v9deew0&t=1sTools for async work:AsyncTask, Future, EventBus, Observable RX = Observables + LINQ + Schedulers 1) Represent asynchr...原创 2018-11-28 17:57:51 · 134 阅读 · 0 评论 -
探索Activity启动模式
LifecycleActivity记为A,LifecycleActivity2记为B一, Standard略.二, SingleTop打开App,启动第一个Activity(A1),看到taskId == 2215D/PRETTY_LOGGER: │ taskCount == 1D/PRETTY_LOGGER: │ taskId == 2215D/PRETTY_LOGGE...原创 2018-11-29 18:56:26 · 180 阅读 · 0 评论 -
两个Activity切换时的生命周期
两个Activity切换时的生命周期:旧Activity记为ActivityOld,新Activity记为ActivityNew,从旧Activity开启新Activity开始记录:ActivityOld#onPause()ActivityNew#onCreate()ActivityNew#onStart()ActivityNew#onResume()ActivityOld...原创 2018-11-29 15:33:44 · 1013 阅读 · 0 评论 -
用实验方法学习View的事件传递机制
我写了一个UI界面,最外层是OuterLinearLayout,内层是InnerLayout,最里层是TargetButton,下面是实验输出的日志:2018-11-25 22:15:27.288 28703-28703/work.cloud.com.myappcloudwork D/ttt: dispatchTouchEvent in OuterLinearLayout2018-11-...原创 2018-11-25 22:50:31 · 153 阅读 · 0 评论 -
Android Binder机制学习笔记
Binder机制:拷贝一次,通过open, mmap, ioctl在dev/binder上实现的。Client, Service, Service Manager三者之间的通信都是基于上面机制。Service死亡接收通知:Service组件所在的进程可能会意外崩溃,Client在它所引用的Service组件死亡时获得通知。Binder中的红黑树:在Binder驱动程序中,宿主进程通过一...原创 2018-10-05 18:49:43 · 333 阅读 · 0 评论 -
管理APP内存的最佳实践
管理APP内存的最佳实践在任何软件开发环境中,RAM都是昂贵的资源,对手机设备来说更是如此,因为手机操作系统的物理内存通常都很有限。尽管安卓DVM执行常规的垃圾收集工作,但是这并不是说可以不考虑app何时何处分配和释放内存。为了使垃圾回收器从你的app中回收内存,你需要避免内存泄露(这通常是因为在全局成员中持有对象的引用导致的),并且在合适的时间(比如生命周期方法回调时)释放引用的对象。翻译 2015-12-17 12:12:44 · 962 阅读 · 1 评论 -
杂记
TCP/IP各自职责Socket的本质,Socket与TCP/IP,ServerSocket与SocketIO操作,ServerSocket与Socket建立连接并通过底层IO流进行通信。需要异常处理,使用finally关闭资源CS聊天的实现,Server端读取Client端发送过来的数据,并将数据“广播”给其他客户端,因此Server端用List来保存所有的Socket.跨平台的网络通信程序,使用原创 2015-07-16 17:33:03 · 487 阅读 · 0 评论 -
Android SDK环境变量配置
配置过很多次的JAVA开发的JDK和ANDROID开发的SDK,但每次都是从网上随便拉一篇博客来看,从来没有刻意去记住配置的方法。今天在看Android Programming: The Big Nerd Ranch Guide这本书时,需要配置一下环境变量,以方便使用tools和platform-tools下面的工具。找了几篇博客,照着步骤配,搞了半天就是配不成功(我是菜逼,这么弱智的问原创 2015-02-04 15:55:11 · 888 阅读 · 0 评论 -
NestedScrollview 不从顶部显示
从stackoverflow上找到了满意的答案https://stackoverflow.com/questions/33584187/nestedscrollview-wont-start-from-top问题页面:本应该是这样:原创 2019-08-29 17:49:38 · 785 阅读 · 0 评论