android编码学习
虽然以下博客有点老,但很清晰,有不明白的基础知识,可以来这里找找。 2015年最新Android基础入门教程目录(完结版)
1. 环境配置
- Android stodio gradle配置踩过的坑
- Android studio 下载android sdk的两种方法
- 新工程代码下载到本地后,可以先build,再gradle sync。个人经验是,配置了maven的仓库后,使用gradle sync也会卡在jcenter下载处。反而是build时同步gradle可以同步成功;成功之后再sync,就可以将工程目录完整的展示在android studio里了。
- Android project和App中的两个build.gradle的区别
2. android开发基础知识
- android四大组件:Activity (前台界面) 《详解 Android 的 Activity 组件》、Service (运行于后台,没有界面)、Broadcast Receiver、Content Provider(进程内&进程间数据操作)
- Layout 《Android UI布局》: DrawerLayout侧滑控件
- Fragment
- Adpter、ViewHolder
- 监听listener Android基础入门教程——3.1.1 基于监听的事件处理机制
- 回调 Android中的回调、Android基础入门教程——3.2 基于回调的事件处理机制
- 意图intent Android基础入门教程——4.5.1 Intent的基本使用
- Action中的Category:这个activity在哪个环境中才能被激活。不属于这个环境的,不能被激活。如,CATEGORY_DEFAULT:Android系统中默认的执行方式,按照普通Activity的执行方式执行。表示所有intent都可以激活它。又如,CATEGORY_BROWSABLE:设置该组件可以使用浏览器启动。表示该activity只能用来浏览网页。
- Context: 《Android Context 到底是什么?》
- Bundle: 主要用于传递数据;它保存的数据,是以key-value(键值对)的形式存在的。
- 数据存储与持久化
- 事件分发:《Android事件分发机制详解:史上最全面、最易懂》
- 《Android屏幕适配:最全面的解决方案》
- Toolbar设置详解
- 《Android初级知识--ViewPager适配器:PagerAdapter和FragmentPagerAdapter的最基本使用》 ViewPager可用于展示左滑或右滑来切换多个view。
- 《Android开源框架——事件总线otto》
- 《android 应用内页面,截屏监听》
3. 框架
- 《android组件化框架设计与实践》
- 组件化实现 - aar 《如何创建Android库及aar详解》
- Android路由:路由用于处理映射页面跳转关系,当然它也包含跳转相关的一切功能。Android系统已经给我们提供了api来做页面跳转,比如startActivity,为什么还需要路由框架呢?我们来简单分析下路由框架存在的意义:1)在一些复杂的业务场景下,灵活性比较强,很多功能都是动态配置的,比如下发一个活动页面,我们事先并不知道具体的目标页面,但如果事先做了约定,提前做好页面映射,便可以自由配置。2)随着业务量的增长,客户端必然随之膨胀,开发人员的工作量越来越大,比如64K问题,比如协作开发问题。App一般都会走向组件化的道路,而组件化的前提就是解耦,那么我们首先要做的就是解耦页面之间的依赖关系。3)简化代码。数行跳转代码精简成一行代码。
4. 辅助开发工具
性能优化工具:lint
阅读了下被测的android app代码,有个不深刻的体会。代码基本上就是按开发规范写展示和各种操作的应对方法,然后等着系统调用就行,不象后端代码那样有各种处理逻辑。
android编码学习的更多相关文章
- Android编码学习之Adapter
1. Apter的作用 Adapter是将数据绑定到UI界面上的桥接类.Adapter负责创建显示每个项目的子View和提供对下层数据的访问.Adapter的作用就是将要在列表内显示的数据和列表本身结 ...
- Android编码学习之Fragment
1. 什么是Fragment Fragment是Android honeycomb 3.0新增的概念,Fragment名为碎片不过却和Activity十分相似.Fragment是用来描述一些行为或一部 ...
- 浅谈Android编码规范及命名规范
前言: 目前工作负责两个医疗APP项目的开发,同时使用LeanCloud进行云端配合开发,完全单挑. 现大框架已经完成,正在进行细节模块上的开发 抽空总结一下Android项目的开发规范:1.编码规范 ...
- Android:学习AIDL,这一篇文章就够了(下)
前言 上一篇博文介绍了关于AIDL是什么,为什么我们需要AIDL,AIDL的语法以及如何使用AIDL等方面的知识,这一篇博文将顺着上一篇的思路往下走,接着介绍关于AIDL的一些更加深入的知识.强烈建议 ...
- Android编码风格
整理一下51CTO学院中张凌华老师讲的编码风格课程 一. 项目开发目录命名: Requirement - 需求相关文档 Design - 设计 Planning&Log - 计划,日志,会议 ...
- Android Animation学习(二) ApiDemos解析:基本Animatiors使用
Animator类提供了创建动画的基本结构,但是一般使用的是它的子类: ValueAnimator.ObjectAnimator.AnimatorSet ApiDemos中Animation部分是单独 ...
- 《阿里巴巴Android编码规范》阅读纪要(二)
版权声明:本文出自汪磊的博客,转载请务必注明出处. 本篇继续上一篇<阿里巴巴Android编码规范>阅读纪要(一) ,还是建议各位同学有时间完整阅读一下<阿里巴巴Android编码规 ...
- 【朝花夕拾】Android编码风格篇
结合51CTO学院中张凌华老师讲的编码风格课程,对自己平时工作中的形成的一些编码风格做一些总结. 一. 项目开发目录命名: Requirement - 需求相关文档 Design - 设计 Plann ...
- Android JNI学习(四)——JNI的常用方法的中文API
本系列文章如下: Android JNI(一)——NDK与JNI基础 Android JNI学习(二)——实战JNI之“hello world” Android JNI学习(三)——Java与Nati ...
随机推荐
- 001 大数据情况下linux的配置
一:配置的大纲 主要的配置有几个方面: 主机名 IP 网络映射 增加新用户 给新用户root的权限,方便实验 关闭防火墙 安全子系统需要关闭 二:主机名的配置 命令:vi /etc/sysconfig ...
- Mysql乐观锁与悲观锁
乐观锁和悲观锁是两种常见的资源并发锁设计思路,也是并发编程中一个非常重要的基础理念. Mysql的悲观锁 什么是悲观锁(Pessimistic Lock): 悲观锁的特点是先获取锁,再进行业务操作,即 ...
- 如何让你的数据有null
2018-11-13 09:25:17 如何让你的数据有null 返回时null属性不显示: String str = JSONObject.toJSONString(obj); 返回为null属 ...
- POJ 3169 Layout 【差分约束】+【spfa】
<题目链接> 题目大意: 一些母牛按序号排成一条直线.有两种要求,A和B距离不得超过X,还有一种是C和D距离不得少于Y,问可能的最大距离.如果没有最大距离输出-1,如果1.n之间距离任意就 ...
- 简单封装kafka相关的api
一.针对于kafka版本 <dependency> <groupId>org.apache.kafka</groupId> <artifactId>ka ...
- 路由网关---zuul
Zuul:Zuul 是在云平台上提供动态路由,监控,弹性,安全等边缘服务的框架.Zuul 相当于是设备和 Netflix 流应用的 Web 网站后端所有请求的前门. 在微服务盛行的时代,客户端与系统之 ...
- [OC]时间格式中的字符的意义
Letter Date or Time Component Presentation Examples G Era designator Text AD y Year Year 1996;96 M M ...
- [OC] @property时,copy、strong、weak、assign的区别
@property(copy,nonatomic)NSMutableString*copyStr; @property(strong,nonatomic)NSMutableString*strongS ...
- 版本控制系统-SVN(1)
1. SVN介绍 1.1. 简介 SVN(subversion),版本管理工具,与CVS一样,SVN是一个可跨平台的开源版本控制系统,Subversion管理随时间变化的数据.这些数据都被放置在 ...
- Mysql You can change this value on the server by setting the max_allowed_packet' variable. 异常
MySQL根据配置文件会限制server接受的数据包大小. 有时候大的插入和更新会被max_allowed_packet 参数限制掉,导致失败. 查看目前配置, Windows 系统 配置文件为 my ...