Android开发常用开源框架
来源:互联网 发布:分析seo和sem的区别 编辑:程序博客网 时间:2024/05/17 02:47
Android开源框架系列
Android开源项目
Android开发常用开源框架2
Android开发常用开源框架3
2017年伊始,你需要尝试的25个Android第三方库
Android开发常用第三方平台
免费的计算机编程类中文书籍
free-programming-books
Mark!Android最佳的开源库集锦
移动开发周刊:Android最佳的开源库集锦
GitHub Top 100的Android开源库
Android 开源项目分类汇总
GitHub Android Libraries Top 100 简介
Android 学习资料收集
awesome-android-ui
Awesome-MaterialDesign
awesome-android
Andriod-collect-blogs
计算机常用基础算法
Square& JakeWharton
阿里巴巴
小米开源项目
Google开源项目
android-topeka
android-UniversalMusicPlayer
ExoPlayer
An extensible media player for Android
Streaming media with ExoPlayer - Google I/O 2016
guava
flexbox-layout
1、图片加载,缓存,处理
Picasso是著名的开源组织Square出品的图片处理框架,使用的比较多
Glide是Google的员工基于Picasso开发,优化的,Android官网推荐使用的图片处理框架
Fresco是Facebook开源的图片处理框架,真正做到了三级缓存,功能强大,强烈推荐使用
Android Universal Image Loader是一个老牌的图片处理框架,但是在2015年的9月份已经停止更新维护,所以不推荐使用
2、图片裁剪
uCrop
android-crop
Android-Image-Cropper
PhotoCropper
PhotoCrop
3、图片选择
boxing
MultiImageSelector
BGAPhotoPicker-Android
TakePhoto
RxGalleryFinal
4、图片转换,压缩,滤镜
Android-gpuimage
circleimageview
RoundedImageView
SelectableRoundedImageView
)
5、高斯模糊,毛玻璃,图片模糊
android-stackblur
Blurry
blurkit-android
BlurView
ImageBlurring
缓存
网络请求
从Android 6.0 开始,Google删除了apache的开源网络请求框架httpclient,所以基于httpclient的AsyncHttpClient也不推荐使用了
Volley适合那些请求频繁但数据量不大的场景,不适用于大数据的请求,比如下载文件
Android 6.0 后,Android开始使用OkHttp,而Retrofit是一个网络代理框架,可以更简单的使用OkHttp
网络解析
数据库
依赖注入
图表Chart
后台处理
事件总线
响应式编程
Log框架
测试框架
Android自带很多测试工具:JUnit,Monkeyrunner,UiAutomator,Espresso等
调试框架
性能优化
热修复
二维码
多媒体
KSYStreamer_Android
金山云Android采集推流SDK(Livestream SDK),支持内置/自定义美颜(Beauty Filter)、美声(Beauty Voice)、软硬编(Software/Hardware Encoder) 、网络自适应(Network Auto Adapt)、混音(Voice Mixer)、混响(Reverb)、画中画(PIP)、连麦(RTC)、动态贴纸(Sticker)
KSYMediaPlayer_Android
金山云Android播放SDK(KSYUN Live Streaming player SDK),支持RTMP HTTP-FLV HLS 协议(supporting RTMP HTTP-FLV HLS protocol),直播延时2-3秒(Living delay 2 or 3 seconds),supporting jitter control,software&hardware decode
KSYLive_Android
Android播放&推流融合版本[Android Play and LiveStreaming SDK] 直播延时2-3秒(Living delay 2 or 3 seconds),supporting jitter control,software&hardware decode, 支持内置/自定义美颜(Beauty Filter)、美声(Beauty Voice)、软硬编(Software/Hardware Encoder) 、网络自适应(Network Auto Adapt)、混音(Voice Mixer)、混响(Reverb)、画中画(PIP)
KSYMediaPlayer_Android
金山云Android播放SDK(KSYUN Live Streaming player SDK),支持RTMP HTTP-FLV HLS 协议(supporting RTMP HTTP-FLV HLS protocol),直播延时2-3秒(Living delay 2 or 3 seconds),supporting jitter control,software&hardware decode
MD360Player4Android
Android上全景视频渲染的库
汉语转拼音
下载
动画
Android选择器类库
包括日期时间选择器、单项选择器、地址选择器、颜色选择器、文件目录选择器、数字选择器、星座选择器等
Rajawali
Rajawali是一个用于Android应用的3D引擎,基于 OpenGL ES 2.0。它可以用于普通的应用程序,以及实时壁纸。使用的App有:网易新闻
aspectj
AspectJ是一个面向切面的框架,它扩展了Java语言。使用的App有:网易新闻
Apache Thrift
可伸缩的跨语言服务开发框架,使用的App有:网易新闻
Fabric SDK
https://realm.io/cn/news/oredev-ty-smith-building-android-sdks-fabric/?utm_source=tuicool&utm_medium=referral
GNU Trove
Trove 是一个快速、轻量级 Collection 类的集合。Trove 提供所有标准 java.util Collections 类的更快的版本以及能够直接在原语(primitive)(例如包含 int 键或值的 Map 等)上操作的 Collections 类的版本。使用的App有:网易新闻
Java-WebSocket
简单的说,websocket就是用来做网页聊天以及手机推送用的。使用的App有薄荷
以前不管使用HTTP轮询或使用TCP长连接等方式制作在线聊天系统,都有天然缺陷,随着Html5的兴起,其中有一个新的协议WebSocket protocol,可实现浏览器与服务器全双工通信(full-duplex),它可以做到:浏览器和服务器只需要做一个握手的动作,然后,浏览器和服务器之间就形成了一条快速通道。两者之间就直接可以数据互相传送。这个新的协议的特点正好适合这种在线即时通信。
现很多网站为了实现即时通讯,所用的技术都是轮询(polling)。轮询是在特定的的时间间隔(如每1秒),由浏览器对服务器发出HTTP request,然后由服务器返回最新的数据给客服端的浏览器。这种传统的HTTP request 的模式带来很明显的缺点 – 浏览器需要不断的向服务器发出请求,然而HTTP request 的header是非常长的,里面包含的数据可能只是一个很小的值,这样会占用很多的带宽。
而最比较新的技术去做轮询的效果是Comet – 用了AJAX。但这种技术虽然可达到全双工通信,但依然需要发出请求。
在 WebSocket API,浏览器和服务器只需要要做一个握手的动作,然后,浏览器和服务器之间就形成了一条快速通道。两者之间就直接可以数据互相传送。
org.eclipse.mat
内存分析。使用的App有薄荷,网易新闻
CommonAdapter
使用的App有:薄荷
Android-Best-Practices
JKeyboardPanelSwitch
Android键盘面板冲突 布局闪动处理方案
起源,之前在微信工作的时候,为了给用户带来更好的基础体验,做了很多尝试,踩了很多输入法的坑,特别是动态调整键盘高度,二级页面是透明背景,魅族早期的Smart bar等, 后来逐一完善了,考虑到拥抱开源,看业界还是有很多应用存在类似问题。就有了这个repo
使用的App有:薄荷
美洽
最快连接你与顾客 美洽,在线客服软件的漂亮之选
MeiqiaSDK-Android https://github.com/Meiqia/MeiqiaSDK-Android
使用的App有:薄荷
logger
使用的App有:薄荷
DeepLinkDispatch
最常见的应用就是在网页中跳转到App的某个页面,电商类应用可是都用了的。根据data跳转不同的页面
使用的App有:京东
Crouton
Context sensitive notifications for Android
Bolts-Android 一个底层库集合
com.arcsoft.livebroadcast
ReLinker
Relink是一个加载Android so文件(shared library)的一个库。
在Android平台上加载本地库的危险性
kik
CHAT ON KIK
Kik lets you connect with friends,
groups and the world around you
through chat. And now, you can
chat with bots too.
nanohttpd
嵌入式HTTP服务器 ,NanoHTTPD是一个免费、轻量级的(只有一个Java文件) HTTP服务器,可以很好地嵌入到Java程序中。支持 GET, POST, PUT, HEAD 和 DELETE 请求,支持文件上传,占用内存很小。可轻松定制临时文件使用和线程模型。
i-jetty
jetty经过交叉编译移植到android平台的web服务器软件,它可以部署web网站
com.googlecode.mp4parser
Sparta
com.hp.hpl.sparta:XML、DOM、XPath解析器,http://sparta-xml.sourceforge.net/
JRegex
JRegex:jregex:正则表达式库
NativeSubprocess
唯品会使用
NativeSubprocess 是一个可以让你在android 程序中创建linux子进程并执行你的java代码的so库。由于市面上典型的内存清理工具只清理apk 包关联的进程,而不会处理linux原生进程,所以NativeSubprocess 可以做什么您懂的!
androidquery
Android-Query(AQuery)是一个轻量级的开发包,用于实现 Android 上的异步任务和操作 UI 元素,可让 Android 应用开发更简单、更容易,也更有趣。
唯品会使用,https://github.com/androidquery/androidquery
MarsDaemon
进程常驻,进程保活
唯品会使用 https://github.com/Marswin/MarsDaemon
SA-iSecurity
SA-iSecurity 客户端安全输入系统,唯品会使用
口碑推荐平台TapReason
TapReason提供了一款无广告的App增长解决方案。他们的广告是最值得信赖的,因为这些广告都是来自于好友或同事的推荐。唯品会使用
ImageViewZoom
Android ImageView widget with zoom and pan capabilities,春雨医生使用
LayoutCast
Cast android code and resource changes to the running application through ADB.
Android SDK sucks. It’s so slow to build and run which waste me a lot of time every day.
把代码和资源文件的改动直接同步到手机上,应用不需要重启。省去了编译运行漫长的等待,比较适合真机调试的时候使用。
Joda-Time
JodaTime 提供了一组Java类包用于处理包括ISO8601标准在内的date和time。可以利用它把JDK Date和Calendar类完全替换掉,而且仍然能够提供很好的集成。
Joda-Time主要的特点包括:
- 易于使用:Calendar让获取”正常的”的日期变得很困难,使它没办法提供简单的方法,而Joda-Time能够 直接进行访问域并且索引值1就是代表January。
- 易于扩展:JDK支持多日历系统是通过Calendar的子类来实现,这样就显示的非常笨重而且事实 上要实现其它日历系统是很困难的。Joda-Time支持多日历系统是通过基于Chronology类的插件体系来实现。
- 提供一组完整的功能:它打算提供 所有关系到date-time计算的功能.Joda-Time当前支持6种日历系统,而且在将来还会继续添加。有着比JDK Calendar更好的整体性能等等。
https://github.com/JodaOrg/joda-time
msgpack
MessagePack是一个基于二进制高效的对象序列化Library用于跨语言通信。
它可以像JSON那样,在许多种语言之间交换结构对象;但是它比JSON更快速也更轻巧。 比Google Protocol Buffers还要快4倍
https://github.com/msgpack/msgpack-java
scribejava
ScribeJava 是一个简单的 Java 实现的 OAuth/OAuth2 库。
Logback
Logback是由log4j创始人Ceki Gülcü设计的又一个开源日志组件。logback当前分成三个模块:logback-core,logback- classic和logback-access。
frame-video-view
No more issues with VideoView
JakeWharton scalpel
Jake Wharton,Android开发领域传奇一般的存在,熟悉Android开发的同学应该都听说过,即便没有,也应该会经常用到他主导或参与贡献的开源 项目,他在GitHub上开源了多个Android兼容性、依赖注入相关的知名项目,目前就职Square, 也参与贡献了Square公司开源的诸如Retrofit, okhttp等热门项目。
Jake大神喜欢以刀命名自己的项目,可能他觉得这能很好的表达它们作为开发利器的犀利程度,不过没准他也很喜欢中国武侠小说呢。
他最有名的两把刀,一把是Dagger, 匕首,一个依赖注入框架,用来解耦开发中各模块依赖的,最早由他开发与维护,后来转给Google维护;另一把是同样大名鼎鼎的ButterKnife, 黄油刀,有了它,你再也不用写findViewById了,以后有机会给大家详细介绍它们。
今天的主角是它们不那么知名的小兄弟,Scalpel,这把非常酷炫实用的解剖刀。
他其实就是实现了一个三维效果的界面布局层次展示,不需要手机连接开发设备,只需要简单几行代码将其集成到你的应用中,即可开启酷炫之旅,它提供的功能包括:
通过setLayerInteractionEnabled(boolean)可开启与关闭此功能。
通过setDrawViews(boolean)可控制是否绘制View, 也就是说它可以仅仅是个简单的布局线框图,也可以是色彩丰富的真实效果图。
通过setDrawIds(boolean)可控制是否显示各控件的Id, 你就能知道你自己正在调试的那个控件到底在哪了?
通过setChromeColor,setChromeShadowColor可自定义线框图的颜色,随你喜欢。
material-camera
https://github.com/afollestad/material-camera
hawk
Android的安全、简单Key-Value存储
bugsnag
Bugsnag crash reporting for Android apps ,Bugsnag exception reporter for Android
goldengate
An Android annotation processor for generating type safe javascript bindings (Bridges)
Helpshift
slf4j
SLF4J,即简单日志门面(Simple Logging Facade for Java),不是具体的日志解决方案,它只服务于各种各样的日志系统。按照官方的说法,SLF4J是一个用于日志系统的简单Facade,允许最终用户在部署其应用时使用其所希望的日志系统。
Nuwa热修复
Nuwa, pure java implementation, can hotfix your android application.
Android 热修复Nuwa的原理及Gradle插件源码解析
megvii人脸识别
RadiusNetworks
http://www.radiusnetworks.com/
https://github.com/RadiusNetworks
Swiper
开源,免费,强大的移动端触摸滑动插件
Swiper常用于移动端网站的内容触摸滑动
Swiper3依然拥有progress,这是制作3D切换效果的利器
在Swiper上加些小动画,制作高大上的展示
Netty
Netty是由JBOSS提供的一个java开源框架。Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。
也就是说,Netty 是一个基于NIO的客户、服务器端编程框架,使用Netty 可以确保你快速和简单的开发出一个网络应用,例如实现了某种协议的客户,服务端应用。Netty相当简化和流线化了网络应用的编程开发过程,例如,TCP和UDP的socket服务开发。
“快速”和“简单”并不用产生维护性或性能上的问题。Netty 是一个吸收了多种协议的实现经验,这些协议包括FTP,SMTP,HTTP,各种二进制,文本协议,并经过相当精心设计的项目,最终,Netty 成功的找到了一种方式,在保证易于开发的同时还保证了其应用的性能,稳定性和伸缩性。
cheesesquare:Demos the new Android Design library
FBReaderJ
FBReaderJ是一个Android 平台上的电子书阅读器。这是一个Java版的FBReader图书阅读器的克隆。 FBReaderJ支持多种电子书格式: oeb , epub ,和fb2 。直读从zip、tar和gzip等格式
hawtdispatch
HawtDispatch is a small ( less than 100k ) thread pooling and NIO handling framework API modeled after the libdispatch API. libdispatch is the API that Apple created to power the Grand Central Dispatch (GCD) technology in OS X. It allows you to more easily develop multi-threaded applications which can more easily scale to take advantage of all the processing cores on your machine. At the same time, its development model simplifies solving many of the problems that plague multi-threaded NIO development.
ZeroMQ 一个轻量级消息内核
autobahn-android
WebSocket & WAMP in Java for Android
Robotium
Robotium 是一款国外的Android自动化测试框架,主要针对Android平台的应用进行黑盒自动化测试,它提供了模拟各种手势操作(点击、长 按、滑动等)、查找和断言机制的API,能够对各种控件进行操作。Robotium结合Android官方提供的测试框架达到对应用程序进行自动化的测 试。另外,Robotium 4.0版本已经支持对WebView的操作。Robotium 对Activity,Dialog,Toast,Menu 都是支持的。
One Step & Big Bang
锤子科技的一小步,智能手机进化的一大步
什么是一步(One Step)?
通过拖拽完成将信息发送至应用或联系人的动作,节省了在不同应用之间切换的诸多步骤,第一次打通了手持设备中应用间的边界
进一步了解 One Step
什么是大爆炸(Big Bang)?
用拇指大面积按压屏幕中的文字,Big Bang 会将你按住的那一段文字全部“炸”开并且按照语义智能拆分成易于选取的独立的字和词,由你随心所欲地选择,并可直接搜索、分享和复制。Big Bang 开创性地解决了在手机这样的小屏幕上难于处理文字的弊端
进一步了解 Big Bang
- Android开发中的常用开源框架
- Android开发常用开源框架推荐
- Android开发常用开源框架
- Android开发常用开源框架2
- Android开发常用开源框架3
- Android开发常用开源框架推荐
- Android开发常用开源框架2
- Android开发常用开源框架
- 转 Android开发常用开源框架
- android常用开发框架
- android开发常用框架
- Android常用开发框架
- android开发常用框架
- Android开发常用开源框架:图片处理
- Android开发常用开源框架:图片处理
- Android开发常用开源框架:图片处理
- Android开发 GitHub 常用开源框架汇总
- Android开发常用开源框架(架构程序)
- 线程学习
- 汇编实现整数反向输出
- Java之 异常,文件,io流
- 异乡人(序)
- 安装xampp后apache不能启动解决方法
- Android开发常用开源框架
- R tutorial 06 - Dot chart 散点图
- HTML 视频
- MySQL压缩包版安装教程
- 本年度最大收购交易现世:AT&T 854亿美元收购CNN,HBO,《蝙蝠侠》母公司时代华纳,变身内容巨头
- English考研语句第一句
- iOS学习之图片放大,滑动浏览
- #关于android studio中libs文件夹的放置
- Leetcode第十周周赛Smarking Algorithm Contest