文章分类 - android
摘要:分析这个过程不是单纯为跟一遍函数调用的流程,而是更好的理解平常用到的一些方法、对象的初始化时间,对象创建的个数,方法的先后顺序,以及每个类,方法背后的作用和目的。主要是一下几个问题: 启动过程 应用安装的时候,通过PMS解析apk的AndroidManifest.xml文件,提取出这个apk的信息写
        阅读全文
                
摘要:Activity 在界面创建时需要将 XML 布局文件中的内容加载进来,正如我们在 ListView 或者 RecyclerView 中需要将 Item 的布局加载进来一样,都是使用 LayoutInflater 来进行操作的。 LayoutInflater 实例的获取有多种方式,但最终是通过(La
        阅读全文
                
摘要:在之前有分析过 Android 6.0 Launcher 启动 Activity 过程,文章的链接如下: 1、Android 6.0 Launcher 启动 Activity 过程源码分析(一)2、Android 6.0 Launcher 启动 Activity 过程源码分析(二)3、Android
        阅读全文
                
摘要:在之前 Android 系统服务管理 ServiceManager 中学习了各种系统服务 Service 都是通过 ServiceManager 来管理的,从 ServiceManager 中来获得系统服务的 Binder 对象引用。这内容涉及到了 ContextImpl 类、SystemServi
        阅读全文
                
摘要:之前在装饰器模式中提到了 Context 只是一个抽象类,具体的实现内容都是由 ContextImpl 来完成的。 而在 Context 中定义了很多的方法,比如 getString()、startActivity()、sendBroadcast() 等等,在 Activity 中我们经常会用到这些
        阅读全文
                
摘要:前言 Android事件管理机制是一名专业Android研发工程师必须要了解的核心知识之一,深入了解一下该机制无论对我们日常开发还是找工作,乃至于对我们的架构思想都有很大的帮助。Android中我们用到的最多的事件是InputEvent,主要是两类:MotionEvent和KeyEvent。由于事件
        阅读全文
                
摘要:前言 Android的视图是如何绘制的?深入了解一下UI的绘制原理无论对我们APP的性能优化还是对我们的自定义view都有很大的帮助。下文将和大家一道探究一下Android的viewTree的绘制原理,希望对大家的开发和学习有所帮助。 本篇是图解Android系列第二篇,更多文章敬请关注后续文章。如
        阅读全文
                
摘要:Python语言相对Java来说,最大的特点就是易用易学,基本上每个linux系统都有安装python,不像Java一样还需要自己下JVM、安装、设置环境变量等。有了其他编程语言的基础再来学习Python其实是非常简单的,因为Python语言是基于ABC语言开发出来的,ABC语言是以教学为目的的语言
        阅读全文
                
摘要:效果 老规矩,先来看看效果 ANDROID和福利两个Fragment是设置的Fragment可见时加载数据,也就是懒加载。圆形的旋转加载图标只有一个,所以,如果当前Fragment正处于加载状态,在离开该Fragment时需要隐藏加载动画,因为另一个Fragment并不一定处于加载状态,当返回Fra
        阅读全文
                
摘要:前言 今天起床,拿起手机开机第一时间当然是打开微信了,左右滑动Viewpager,发现它使用了一种叫惰性加载,或者说懒加载(lazy-loading)的方式加载Viewpager中的Fragment。效果如图: 什么是lazy-loading呢?顾名思义就是在必要的时候才加载,否则不进行View的绘
        阅读全文
                
摘要:Material Design支持库 Material Design 支持库谷歌提供的支持库,我们在Material Design设计中使用的首选控件,具体使用可参考:Material Design控件使用 material-dialogsMaterial Design样式弹出对话框 Materia
        阅读全文
                
摘要:一、引入 在项目中应该经常会用到ViewPager+Fragment来显示界面,但是ViewPager会有预加载,这样的话有些东西会无法把控,还有就是刚进入App时可能会一次请求多个接口,在显示上可能会造成某些不可预知的问题,虽然可以禁用掉预加载,但是目前据我所知用得较多的方式是修改ViewPage
        阅读全文
                
摘要:Retrofit基本使用 基本用法 我们来实现一个最基本的请求Json结果的文件的Demo。 引入依赖 首先新建一个工程,在app的build.gradle中加入以下依赖: 1 2 3 compile 'com.squareup.retrofit2:retrofit:2.2.0' compile '
        阅读全文
                
摘要:废话 最近在做一个面试项目,需求很简单,就是网络请求Json,然后显示在ListView中。正好,简单的需求可以让我自由自在地玩弄一下代码,正好学了这么久的设计模式,我的解耦大刀早已饥渴难耐。 一般做法 网络请求一个Json并处理的一般步骤,在这里简单的说一下。首先构造Retrofit需要的API接
        阅读全文
                
摘要:Retrofit源码分析 Retrofit的亮点 先来看一个最基本的Retrofit+Gson的用法: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 // https://raw.githubusercontent.com/xiaoniaojun/xiaonia
        阅读全文
                
摘要:原文链接 : Architecting Android…The clean way? 译者 : Mr.Simple & Sophie.Ping 过去几个月以来,通过在Tuenti网站上与@pedro_g_s和@flipper83(安卓开发两位大牛)进行友好讨论之后,我决定写这篇关于架构安卓应用的文章
        阅读全文
                
摘要:App-Architecture是一个关于移动应用一整套架构的解决方案开源项目。主要目的是整合流行开发模式结合自己本人的工作经验形成的一整套App快速开发解决方案。本套解决方案的app工程和simple工程主要基于Android实现。framework工程实现了主要架构,主要目的是抛开平台相关性。 
        阅读全文
                
摘要:在许多软件编程任务中,你或多或少期待你的指令将会按照你已经写好的顺序,依次增量执行和完成。但在ReactiveX,很多指令可以通过“观察者”并行执行,其结果将以任意顺序被捕获。你定义了一种“可观察的形式“的检索和转换数据机制而不是调用方法,然后订阅观察者给它,每当之前定义好的机制已经准备好了,这
        阅读全文
                
摘要:1. ANR异常 Application No Response:应用程序无响应。在主线程中,是不允许执行耗时的操作的,如果主线程阻塞的时间大于6秒,就很有可能出现anr异常。主线程,要完成界面的更新,事件的处理,窗体显示的回调,所以如果主线程阻塞时间较长,就不能很好的处理以上比较重要的事情,那么A
        阅读全文
                
摘要:Android中Canvas绘图基础详解 Android Paint、Canvas、Matrix使用讲解(一、Paint) Android Paint之 setXfermode PorterDuffXfermode 讲解 Canvas开篇之drawBitmap方法讲解 Android 手把手教您自定
        阅读全文
                
                    
                
浙公网安备 33010602011771号