android 开发日积月累

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
简介: android 开发日积月累

版本管理工具

常用的有SVN  CVS GIT Mercurial目前Google Code支持SVN、Git、Mercurial三种方式


Git与CVS 的区别


分支更快、更容易。

支持离线工作;本地提交可以稍后提交到服务器上。

Git 提交都是原子的,且是整个项目范围的,而不像 CVS 中一样是对每个文件的。

Git 中的每个工作树都包含一个具有完整项目历史的仓库。

没有哪一个 Git 仓库会天生比其他仓库更重要。

Git与SVN 的区别


Git是分布式的,SVN不是

Git 把内容按元数据方式存储,而SVN是按文件

Git 分支和SVN的分支不同

Git 没有一个全局的版本号,而SVN有

Git 的内容完整性要优于SVN

我个人用过时间最长的是 svn,git和cvs也都用过一点,给我感觉git比较复杂 ,但是确实非常强大。如果能把git命令都记得特别熟的话 我推荐git是首选。


因为够强大 而且分便,对于多人团队协作开发帮助很大。当然他们都有视图工具,记不住命令的可以用视图操作。


我之前也有一篇git命令的博客 Git命令(最常用10组)


开发工具

开发工具一般是:android studio ,idea,eclipse 三种。


android开发工具现在官方推荐 android studio 简称as,goole对外宣布停止对eclipse的支持。


android studio的入门使用我写了一篇文章


从零开始用android studio  入门的新手非常值得一看


附带说明一下 android studio里面的一些相关插件


我之前有两篇博客介绍过其中的两个插件


一个是Gson format--- 自动生成 java bean 的插件  一个是sexy editory---- 设置as背景的插件


具体看两篇博客的介绍就可以了


其实as里面还有很多比较有用的插件


SekectorChapek 自动生成selector的插件


butterknife 从布局中生成viw的控件  这个很多 大家自行百度就好。


android 推送及即时通讯相关方案

环信,支持即时音视频


腾讯云通讯,支持即时音视频


极光推送和IM


个推


小米推送,在MIUI上属于系统服务框架,共享系统级长连接


百度云推送,部分机型收不到推送,如小米,Bug是否修复未知


腾讯信鸽推送


友盟推送


android 视频直播解决方案

腾讯云


金山云


网易云


CC视频


AnyRTC


还有github一些开源的框架,不过个人不建议自己开发,用这些比较靠谱。我用的是 腾讯云做的,之前一篇文章也有个大概的介绍,关于腾讯云直播开发的。


腾讯云视频开发攻略 这篇博客介绍了直播相关的一些东西。


android 分享及三方登录相关

友盟分享


腾讯分享


shareSdk


这个其实总体来说都差不多 ,友盟和腾讯的我都用过,按照文档说明就可以 ,难度不是很大。


android 网络请求

谷歌官网从安卓6.0系统开始默认不再支持httpClient,基于httpClient的框架建议不再使用


HttpClient 建议废弃  


HttpUrlConnection 建议用框架


Android-async-http框架 基于 httpClient,建议废弃


volley框架


Xuitls框架


okHttp框架


Retrofit 框架


上面这些网络请求框架


vollery 适合数据量小,通信频繁,且可拓展性强,可以自定义请求头header。


Xutils 适合大数据量的文件请求,比如文件下载等 缺点:太多框架集成在一起,使用某一个模块导入整个框架。


okhttp 是官方认可的一个框架,支持文件上传下载,非常高效,支持SPDY、连接池、GZIP和 HTTP 缓存。默认情况下,OKHttp会自动处理常见的网络问题,像二次连接、SSL的握手问题。从Android4.4开始HttpURLConnection的底层实现采用的是okHttp。


Retrofit将请求地址转换为接口,通过注解来指定请求方法,请求参数,请求头,返回值等信息。还是使用之前的person的那段json值,get请求到服务器后从数据库查询数据,返回值为查询到的数据,post请求向服务器提交一条数据,返回值为提交的数据。 使用非常简单,它可以直接解析JSON数据变成JAVA对象,甚至支持回调操作,处理不同的结果。


android 图片加载框架

Fresco


picasso


glide


Picasso :和Square的网络库一起能发挥最大作用,因为Picasso可以选择将网络请求的缓存部分交给了okhttp实现。


Glide:模仿了Picasso的API,而且在他的基础上加了很多的扩展(比如gif等支持),Glide默认的Bitmap格式是RGB_565,比    Picasso默认的ARGB_8888格式的内存开销要小一半;Picasso缓存的是全尺寸的(只缓存一种),而Glide缓存的是跟ImageView尺寸相同的(即56*56和128*128是两个缓存) 。


FaceBook的图片加载框架Fresco:最大的优势在于5.0以下(最低2.3)的bitmap加载。在5.0以下系统,Fresco将图片放到一个特别的内存区域(Ashmem区)。当然,在图片不显示的时候,占用的内存会自动被释放。这会使得APP更加流畅,减少因图片内存占用而引发的OOM。为什么说是5.0以下,因为在5.0以后系统默认就是存储在Ashmem区了。


Picasso所能实现的功能,Glide都能做,无非是所需的设置不同。但是Picasso体积比起Glide小太多如果项目中网络请求本身用的就是okhttp或者retrofit(本质还是okhttp),那么建议用Picasso,体积会小很多(Square全家桶的干活)。Glide的好处是大型的图片流,比如gif、Video,如果你们是做美拍、爱拍这种视频类应用,建议使用。


Fresco在5.0以下的内存优化非常好,代价就是体积也非常的大,按体积算Fresco>Glide>Picasso


不过在使用起来也有些不便(小建议:他只能用内置的一个ImageView来实现这些功能,用起来比较麻烦,我们通常是根据Fresco自己改改,直接使用他的Bitmap层)


其实 我个人还是建议使用picasso, glide虽然也不错,但是 你们比较一下jar包就看出来了,太大。这对于现在的应用都要集成大量的第三方开发框架来说非常不适用。


当然特殊情况除外。


android json解析

GSON  goole出品


FASTJSON 阿里开发


JACKJSON 开源框架 据说数据特别大的情况下 比GSON快了很多。大家自行百度吧。


写这个的目的是发现有的小伙伴还在自己写 get set...


android json格式在线解析

json.cn

bejson


android 统计相关

友盟统计


百度统计


腾讯统计


统计的目的就是收集用户信息主要包括


一、用户行为统计,包括

1、用户打开和关闭页面,以及在页面的停留时长;

2、用户点击行为的分布与频率;

3、用户输入的文字和图片,如搜索时的关键词、二维码的扫描信息、分享的图文内容等等;

4、用户对多媒体信息的接受程序,如听音乐的时长、看视频的时长等等;

二、运行情况分析,包括

1、app的启动时间;

2、app崩溃的日志信息;

3、app杀死进程;


对于开发者来说 最主要的是 可以收集错误信息,因为毕竟 我们测试不可能所有机型 版本都能测试的非常全面。我感觉统计的功能还是很有必要,我用的友盟 集成很方便。


android 语音集成

讯飞语音


网易云信


我们用的讯飞语音 就一个jar包 集成也很方便 只不过他这个在华为手机上有一些问题,就是初始化的时候。不知道大家碰到过没。不过讯飞总体来说还是可以的。


android 地图导航相关

百度地图


高德地图


做地图的时候 我只用过百度地图。高德的sdk没用过,我做的应用用地图很早了 还是百度地图2.x版本的时候。后来的api版本也没有用到过。


这个有的说百度好,有的说高德好。我也不好评论....


android 支付相关

微信支付宝


ping++


android 资源相关

android button 在线制作工具


android .9图片生成器


阿里巴巴矢量图片库


开源中国在线工具 十分强大


android 编码规范

之前写过一篇代码规范的文章


android论编码简洁规范  大家可以参考以下


goole java 编码规范指南 好专业..


总之就编码规范而言,大家尽量按照规范来,就算项目着急没有都做到规范,但是后期代码优化尽量改过来。


很重要,优秀的程序员的代码 很容易让别人看懂。


android 免费api接口

天气预报


接口一:http://api.map.baidu.com/telematics/v3/weather?location=%E5%98%89%E5%85%B4&output=json&ak=BbPC7sje0ijVl3p11h165ABQ&qq-pf-to=pcqq.c2c


接口二:https://www.sojson.com/blog/234.html


android应用市场整理

魅族应用市场:魅族开放平台


小米应用市场:小米开放平台


腾讯应用宝:腾讯开放平台 OPEN.QQ.COM


华为应用市场:http://developer.huawei.com/consumer/cn/devunion/openPlatform/html/memberCenter.html#appManage#


安智应用市场:安智开发者联盟


OPPO应用市场:OPPO开放平台


机锋应用市场:http://dev.gfan.com/product/queryProductList


360移动应用市场:登录-360帐号中心


百度应用市场:百度移动应用平台


豌豆荚应用市场:阿里应用分发开放平台


联想应用市场:登录联想帐号


android 开发相关资源下载


AndroidDevTools - Android开发工具 Android SDK下载 Android Studio下载 Gradle下载 SDK Tools下载 非常有用的网址 希望大家收藏


gradle下载网站


Gradle Distributions


Kotlin


2018最新Java视频教程

http://www.apkbus.com/plugin.php?id=apkbus_video&op=item&vid=885

安卓巴士Kotlin入门视频教程

apkbus.com

Kotlin学习资料汇总

http://www.apkbus.com/blog-261991-68033.html

使用Kotlin来开发Android【安卓巴士博文大赛】

http://www.apkbus.com/blog-780485-68062.html

Kotlin如何实现MVP架构

http://www.apkbus.com/blog-847095-68637.html

使用Kotlin封装RecycleView和重构

http://www.apkbus.com/blog-822415-68616.html

使用Kotlin开发Android项目-Kibo【安卓巴士博文大赛】

http://www.apkbus.com/blog-780485-68292.html

让你的 Kotlin 代码远离 !!

http://www.apkbus.com/blog-822717-68438.html

Kotlin编程之Glide v4 Generated API

http://www.apkbus.com/blog-847095-68125.html




MVC/MVP/MVVM/MVPVM 更好的架构设计


MVC,MVP 和 MVVM 的图示

http://www.apkbus.com/blog-822721-68034.html

Android架构篇--MVP模式的介绍篇

http://www.apkbus.com/blog-866962-68049.html

MVP模式简单讲解,通俗易懂

http://www.apkbus.com/blog-822715-64235.html

用MVP架构开发Android应用

http://www.apkbus.com/blog-822715-72362.html

MVC,MVP,MVPVM 实践分析

http://www.apkbus.com/blog-822717-68538.html

Android官方MVP架构项目解析

http://www.apkbus.com/blog-822724-68468.html

Kotlin如何实现MVP架构

http://www.apkbus.com/blog-847095-68637.html




Retrofit 2


Retrofit2 使用详解及从源码中解析原理

http://www.apkbus.com/blog-866962-72363.html

Retrofit2 完全解析 探索与okhttp之间的关系

http://www.apkbus.com/blog-822719-68725.html

开始使用Retrofit2+RXjava+Gson

http://www.apkbus.com/blog-822724-68248.html




RxJava


手把手教你使用 RxJava 2.0(一)

http://www.apkbus.com/blog-916880-68366.html

Android 响应式编程 RxJava2 完全解析

http://www.apkbus.com/blog-822721-68181.html

这可能是最好的RxJava 2.x 入门教程(一)

http://www.apkbus.com/blog-898535-68087.html

这可能是最好的RxJava 2.x 教程(完结版)【安卓巴士博文大赛】

http://www.apkbus.com/blog-898535-68185.html

RxJava 详解

http://www.apkbus.com/blog-855858-68750.html

Android RxJava2+Retrofit2搭建网络请求框架

http://www.apkbus.com/blog-822721-68244.html




Dagger 2


框架 Dagger2 的简单使用

http://www.apkbus.com/blog-866962-68151.html

依赖注入框架 Dagger2 注入实现过程总结

http://www.apkbus.com/blog-847095-68761.html

Dagger2、RxJava和Retrofit的巧妙结合

http://www.apkbus.com/blog-822717-71965.html

神兵利器Dagger2

http://www.apkbus.com/blog-882554-62908.html

Retrofit2-RxJava-Dagger2-MVP完美封装

http://www.apkbus.com/blog-866962-72652.html

Dagger2的轻松愉悦解析

http://www.apkbus.com/blog-938789-76457.html





Glide


Glide v4 使用教程与详细文档

http://www.apkbus.com/blog-873055-75813.html

Glide 使用介绍

http://www.apkbus.com/blog-855858-64239.html

Glide 4.0 相比 Glide 3.0 和使用详解

http://www.apkbus.com/blog-822715-68508.html

Kotlin编程之Glide v4 Generated API

http://www.apkbus.com/blog-847095-68125.html




数据库


Android Study 之 玩转GreenDao 3.2.2 点滴提升逼格~【安卓巴士博文大赛】

http://www.apkbus.com/blog-904057-67980.html

史上最高效的ORM方案——GreenDao3.0详解

http://www.apkbus.com/blog-705730-62698.html

史上最高效的ORM方案——GreenDao3.0高级用法

http://www.apkbus.com/blog-705730-62741.html




自定义View

 

一篇文章玩转Android 自定义View

http://www.apkbus.com/blog-822715-69404.html

Android Study之自定义View进阶路:掌握绘制基本图形(一)

http://www.apkbus.com/blog-904057-68729.html

Android Study之自定义View进阶路:绘制饼图(二)

http://www.apkbus.com/blog-904057-72648.html

《自定义View入门及实战案例分析【安卓巴士博文大赛】》

http://www.apkbus.com/blog-703583-68603.html

使用自定义View实现天气折线图效果

http://www.apkbus.com/blog-822719-68724.html

自定义View之添加银行卡动画

http://www.apkbus.com/blog-822721-68656.html




封装技术


从零开始搭建一个项目(rxJava+Retrofit+Dagger2) ---上

http://www.apkbus.com/blog-873057-72598.html

从零开始搭建一个项目(rxJava+Retrofit+Dagger2) ---下

http://www.apkbus.com/blog-873057-72599.html

Android 巧妙封装,基于Retrofit+RxJava网络框架

http://www.apkbus.com/blog-822719-72607.html

在 Kotlin 的 Android 项目中使用 Retrofit+RxJava

http://www.apkbus.com/blog-822719-72606.html

MVP+Retrofit+dagger2+RxAndroid框架整合项目配置

http://www.apkbus.com/blog-873057-72604.html

在项目中优雅引入Dagger2+Retrofit+RxJava(RxAndroid)

http://www.apkbus.com/blog-873057-72603.html

基于Retrofit、OkHttp、Gson封装通用网络框架

http://www.apkbus.com/blog-822715-72613.html




Android 8.0相关


Android 8.0 功能和 API

http://www.apkbus.com/blog-847095-68742.html

Android 8.0 Oreo 画中画模式

http://www.apkbus.com/blog-810076-68778.html

Android O 原生系统图标能自适应攻略

http://www.apkbus.com/blog-810076-68768.html

Android O 行为变更官方指南

http://www.apkbus.com/blog-810076-68773.html

Android O 迁移应用官方指南

http://www.apkbus.com/blog-810076-68774.html

Android Oreo 后台运行限制

http://www.apkbus.com/blog-810076-72617.html

Android O 让安装应用更安全

http://www.apkbus.com/blog-810076-72618.html

全新 Android 构建组件到底有多好用?

http://www.apkbus.com/blog-810076-72619.html


热门技术


Android热更新技术的研究与实现【安卓巴士博文大赛】

http://www.apkbus.com/blog-780485-68702.html

插件化 热部署 热补丁 动态加载 参考框架

http://www.apkbus.com/blog-822721-72355.html

Android Study 之 初识ButterKnife(8.5.1)及简单运用 【安卓巴士博文大赛】

http://www.apkbus.com/blog-904057-67981.html

Android界面性能调优手册

http://www.apkbus.com/blog-873057-72671.html


项目实战

精仿今日头条

http://www.apkbus.com/blog-917385-68382.html

我赌两包辣条你没见过,实战无接口写安卓巴士博客App端【安卓巴士博文大赛】

http://www.apkbus.com/blog-889706-68550.html


其他

Android网络请求各种方法总结

http://www.apkbus.com/blog-822715-68319.html

官方详细介绍Android Studio 3.0

http://www.apkbus.com/blog-810076-68776.html

Drawable适配的那些事,仔仔细细研究下。

http://www.apkbus.com/blog-822721-68735.html

Android初学路上会遇到的瓶颈【安卓巴士博文大赛】

http://www.apkbus.com/blog-477242-68294.html

Android Coding 利器 之 掌握小技巧,助你Coding更上一层楼【安卓巴士博文大赛】

http://www.apkbus.com/blog-904057-68403.html

如何做一个合格的Android面试官【安卓巴士博文大赛】

http://www.apkbus.com/blog-477242-67985.html

这可能是最好的性能优化教程(一)

http://www.apkbus.com/blog-898535-72698.html

Android 2017 开源库总结(持续更新)

http://www.apkbus.com/blog-912299-76478.html


Android 资源类网站


AndroidDevTools - Android开发工具 Android SDK下载 Android Studio下载 Gradle下载 SDK Tools下载



UI Programming Language


UILang


Design Tutorials

HackDesign


Design Games

The Bezier Game


一个帮助你练习PS里钢笔工具的小游戏。


Design Guides

Android设计指南非官方简体中文版


Topfun镜像地址:topfun.us -


Github镜像地址:http://adchs.github.io


ApkBus镜像地址:apkbus.com


Segmentfault镜像地址:http://mirrors.segmentfault.com/adchs/


多看阅读镜像地址:http://www.duokan.com/book/47790


Android Cheatsheet for Graphic Designers


地址:Android Cheatsheet for Graphic Designers


Google Material Design 中文版


地址:http://wiki.jikexueyuan.com/project/material-design/


地址: http://www.ui.cn/Material/


Designer's Guide To dpi


地址:http://sebastien-gabriel.com/designers-guide-to-dpi/home


Email Design Guide


地址:Email Design Guide


Free Design Resources

Google Material Design 素材(感谢 @SanityD)


Material Design Icon Templates


Material Design的图标集


Material Design UI Kit for Sketch


Nexus 5 template for Sketch


Free Design Resources


434 SVG icons


UI Cloun


161个国内外社交网站矢量图标


250 free icons in 5 sizes and 14 colors


MINIMALISTIC EVERYDAY ICONS


Icons4android一套极具人气的在线资源集合


Books

Free Programming Books


一堆免费的Android开发相关的电子书。


50 Android Hacks


50 Android Hacks这本书分12个部分介绍了50个Android开发的小技巧。


相关文章
|
2月前
|
开发框架 前端开发 Android开发
安卓与iOS开发中的跨平台策略
在移动应用开发的战场上,安卓和iOS两大阵营各据一方。随着技术的演进,跨平台开发框架成为开发者的新宠,旨在实现一次编码、多平台部署的梦想。本文将探讨跨平台开发的优势与挑战,并分享实用的开发技巧,帮助开发者在安卓和iOS的世界中游刃有余。
|
2月前
|
缓存 前端开发 Android开发
安卓开发中的自定义视图:从零到英雄
【10月更文挑战第42天】 在安卓的世界里,自定义视图是一块画布,让开发者能够绘制出独一无二的界面体验。本文将带你走进自定义视图的大门,通过深入浅出的方式,让你从零基础到能够独立设计并实现复杂的自定义组件。我们将探索自定义视图的核心概念、实现步骤,以及如何优化你的视图以提高性能和兼容性。准备好了吗?让我们开始这段创造性的旅程吧!
30 1
|
2月前
|
搜索推荐 Android开发 开发者
探索安卓开发中的自定义视图:打造个性化UI组件
【10月更文挑战第39天】在安卓开发的世界中,自定义视图是实现独特界面设计的关键。本文将引导你理解自定义视图的概念、创建流程,以及如何通过它们增强应用的用户体验。我们将从基础出发,逐步深入,最终让你能够自信地设计和实现专属的UI组件。
|
29天前
|
搜索推荐 前端开发 API
探索安卓开发中的自定义视图:打造个性化用户界面
在安卓应用开发的广阔天地中,自定义视图是一块神奇的画布,让开发者能够突破标准控件的限制,绘制出独一无二的用户界面。本文将带你走进自定义视图的世界,从基础概念到实战技巧,逐步揭示如何在安卓平台上创建和运用自定义视图来提升用户体验。无论你是初学者还是有一定经验的开发者,这篇文章都将为你打开新的视野,让你的应用在众多同质化产品中脱颖而出。
53 19
|
2月前
|
IDE Java 开发工具
移动应用与系统:探索Android开发之旅
在这篇文章中,我们将深入探讨Android开发的各个方面,从基础知识到高级技术。我们将通过代码示例和案例分析,帮助读者更好地理解和掌握Android开发。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的信息和技巧。让我们一起开启Android开发的旅程吧!
|
29天前
|
JSON Java API
探索安卓开发:打造你的首个天气应用
在这篇技术指南中,我们将一起潜入安卓开发的海洋,学习如何从零开始构建一个简单的天气应用。通过这个实践项目,你将掌握安卓开发的核心概念、界面设计、网络编程以及数据解析等技能。无论你是初学者还是有一定基础的开发者,这篇文章都将为你提供一个清晰的路线图和实用的代码示例,帮助你在安卓开发的道路上迈出坚实的一步。让我们一起开始这段旅程,打造属于你自己的第一个安卓应用吧!
58 14
|
1月前
|
Java Linux 数据库
探索安卓开发:打造你的第一款应用
在数字时代的浪潮中,每个人都有机会成为创意的实现者。本文将带你走进安卓开发的奇妙世界,通过浅显易懂的语言和实际代码示例,引导你从零开始构建自己的第一款安卓应用。无论你是编程新手还是希望拓展技术的开发者,这篇文章都将为你打开一扇门,让你的创意和技术一起飞扬。
|
30天前
|
XML 存储 Java
探索安卓开发之旅:从新手到专家
在数字时代,掌握安卓应用开发技能是进入IT行业的关键。本文将引导读者从零基础开始,逐步深入安卓开发的世界,通过实际案例和代码示例,展示如何构建自己的第一个安卓应用。我们将探讨基本概念、开发工具设置、用户界面设计、数据处理以及发布应用的全过程。无论你是编程新手还是有一定基础的开发者,这篇文章都将为你提供宝贵的知识和技能,帮助你在安卓开发的道路上迈出坚实的步伐。
32 5
|
29天前
|
开发框架 Android开发 iOS开发
安卓与iOS开发中的跨平台策略:一次编码,多平台部署
在移动应用开发的广阔天地中,安卓和iOS两大阵营各占一方。随着技术的发展,跨平台开发框架应运而生,它们承诺着“一次编码,到处运行”的便捷。本文将深入探讨跨平台开发的现状、挑战以及未来趋势,同时通过代码示例揭示跨平台工具的实际运用。
|
30天前
|
XML 搜索推荐 前端开发
安卓开发中的自定义视图:打造个性化UI组件
在安卓应用开发中,自定义视图是一种强大的工具,它允许开发者创造独一无二的用户界面元素,从而提升应用的外观和用户体验。本文将通过一个简单的自定义视图示例,引导你了解如何在安卓项目中实现自定义组件,并探讨其背后的技术原理。我们将从基础的View类讲起,逐步深入到绘图、事件处理以及性能优化等方面。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和技巧。