We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Android开源项目第一类——个性化控件(View) Android开源项目第二类——工具库 Android开源项目第三类——优秀项目 Android开源项目第四类——开发及测试工具 Android开源项目第五类——优秀个人和团体
Android开源项目第一类——个性化控件(View) 一、ListView
二、ActionBar
三、Menu
四、ViewPager 、Gallery
五、GridView
六、ImageView
七、ProgressBar
八、其他
Android开源项目第二类——工具库 一、依赖注入DI 通过依赖注入减少View、服务、资源简化初始化,事件绑定等重复繁琐工作
二、图片缓存
三、网络相关
四、数据库 orm工具包 orm的db工具类,简化建表、查询、更新、插入、事务、索引的操作
五、Android公共库
六、Android 高版本向低版本兼容
七、多媒体相关
8.ZIP java压缩和解压库 项目地址:https://github.com/zeroturnaround/zt-zip 文档介绍:https://github.com/zeroturnaround/zt-zip#examples 作用:(1) 解压和压缩,并支持文件夹内递归操作 (2) 支持包含和排除某些元素 (3) 支持重命名元素 (4) 支持遍历zip包内容 (5) 比较两个zip包等功能
Android开源项目第三类——优秀项目 一 与Linux相关 Linux 项目地址:https://github.com/torvalds/linux 二 Android项目 Android 项目地址:https://android.googlesource.com/或https://github.com/android 以上两个项目,不解释
三 其他
Android开源项目第四类——开发及测试工具 1、Buck facebook开源的Android编译工具,效率是ant的两倍。主要优点在于: (1) 加快编译速度,通过并行利用多核cpu和跟踪不变资源减少增量编译时间实现 (2) 可以在编译系统中生成编译规则而无须另外的系统生成编译规则文件 (3) 编译同时可生成单元测试结果 (4) 既可用于IDE编译也可用于持续集成编译 (5) facebook持续优化中 项目地址:https://github.com/facebook/buck
2、Android Maven Plugin Android Maven插件,可用于对android三方依赖进行管理。在J2EE开发中,maven是非常成熟的依赖库管理工具,可统一管理依赖库。 项目地址:https://github.com/jayway/maven-android-plugin
3、Spoon 可用于android不同机型设备自动化测试,能将应用apk和测试apk运行在不同机器上并生成相应测试报告。 项目地址:https://github.com/square/spoon
4、Android FEST 提供一些列方便的断言,可用于提高编写Android自测代码效率 项目地址:https://github.com/square/fest-android
5、SelectorChapek for Android Android Studio插件,可根据固定文件名格式资源自动生成drawable selectors xml文件。 项目地址:https://github.com/inmite/android-selector-chapek
6、Android Resource Navigator chrome插件,可以方便的查看github上android源码工程的styles.xml和themes.xml。主要功能: (1) 快速打开android styles.xml themes.xml (2) 方便在资源间跳转。styles.xml themes.xml文件中资源链接跳转,可以方便跳转到某个资源 (3) 方便查找某个style和theme。chrome地址栏输入arn+tab+搜索内容回车即可 (4) 自动下载不同分辨率下的drawable (5) 通过映射查找那些不是按照固定命名规则命名的style和theme 项目地址:https://github.com/jgilfelt/android-resource-navigator 示例:https://chrome.google.com/webstore/detail/android-resource-navigato/agoomkionjjbejegcejiefodgbckeebo?hl=en&gl=GB
7、Android Action Bar Style Generator Android ActionBar样式生成器,可在线选择ActionBar样式自动生成所需要的图片资源及xml文件 项目地址:https://github.com/jgilfelt/android-actionbarstylegenerator 在线演示:http://jgilfelt.github.io/android-actionbarstylegenerator/
8、ViewServer 允许app运行在任何手机上都可以用HierarchyViewer查看 项目地址:https://github.com/romainguy/ViewServer
9、GridWichterle for Android 在整个系统上显示一个grid,用来帮助查看应用布局及使得布局更美观,可设置grid网格大小和颜色,android推荐48dp和8dp,可见 Android Design Guidelines – Metrics and Grids 项目地址:https://github.com/inmite/android-grid-wichterle APK地址:https://play.google.com/store/apps/details?id=eu.inmite.android.gridwichterle PS:比起hierarchyviewer相差甚远,不过偶尔可用来作为布局查看工具。
10、渠道打包工具 允许app运行在任何手机上都可以用HierarchyViewer查看 项目地址:https://github.com/umeng/umeng-muti-channel-build-tool 另可参见Google的构建系统Gradle:http://tools.android.com/tech-docs/new-build-system/user-guide
11、Catlog 手机端log查看工具,支持不同颜色显示、关键字过滤、级别过滤、进程id过滤、录制功能等 项目地址:https://github.com/nolanlawson/Catlog 在线演示:https://play.google.com/store/apps/details?id=com.nolanlawson.logcat
12、PID Cat 根据package查看logcat日志 项目地址:https://github.com/JakeWharton/pidcat
13、Hugo 用于打印函数信息及执行时间的工具,仅在debug模式生效 项目地址:https://github.com/JakeWharton/hugo
Android开源项目第五类——优秀个人和团体 一、个人
Ps: ViewServer作者的个人摄影作品http://www.flickr.com/photos/romainguy,感觉超赞
二、组织
The text was updated successfully, but these errors were encountered:
No branches or pull requests
Android开源项目第一类——个性化控件(View)
Android开源项目第二类——工具库
Android开源项目第三类——优秀项目
Android开源项目第四类——开发及测试工具
Android开源项目第五类——优秀个人和团体
Android开源项目第一类——个性化控件(View)
一、ListView
ListView、ViewPager、WevView、ExpandableListView、GridView、(Horizontal
)ScrollView、Fragment上下左右拉动刷新,比下面johannilsson那个只支持ListView的强大的多。并且他实现的下拉刷新ListView在item不足一屏情况下也不会显示刷新提示,体验更好。
项目地址:https://github.com/chrisbanes/Android-PullToRefresh
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refreshview-demo.apk?raw=true
APP示例:新浪微博各个页面
项目地址:https://github.com/johannilsson/android-pulltorefresh
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refresh-listview-demo.apk?raw=true
PS:这个被很多人使用的项目实际有不少bug,推荐使用上面的android-pulltorefresh
项目地址:https://github.com/Trinea/AndroidCommon
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/TrineaAndroidDemo.apk?raw=true
文档介绍:http://www.trinea.cn/?p=523
同时支持ListView滑动item删除,各个Item高度不一、单选、复选、CursorAdapter做为适配器、拖动背景变化等
项目地址:https://github.com/bauerca/drag-sort-listview
Demo地址:https://play.google.com/store/apps/details?id=com.mobeta.android.demodslv
APP示例:Wordpress Android
项目地址:https://github.com/47deg/android-swipelistview
Demo地址:https://play.google.com/store/apps/details?id=com.fortysevendeg.android.swipelistview
APP示例:微信
项目地址:https://github.com/romannurik/Android-SwipeToDismiss
支持3.0以下版本见:https://github.com/JakeWharton/SwipeToDismissNOA
Demo地址:https://github.com/JakeWharton/SwipeToDismissNOA/SwipeToDismissNOA.apk/qr_code
项目地址:https://github.com/emilsjolander/StickyListHeaders
APP示例:Android 4.0联系人
效果图:https://raw.github.com/emilsjolander/StickyListHeaders/master/demo.gif
项目地址:https://github.com/beworker/pinned-section-listview
效果图:https://raw.github.com/beworker/pinned-section-listview/master/screen1.png
项目地址:https://github.com/JimiSmith/PinnedHeaderListView
项目地址:https://github.com/ManuelPeinado/QuickReturnHeader
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/quick-return-header-demo.apk?raw=true
APP示例:google plus
项目地址:https://github.com/woozzu/IndexableListView
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/indexable-listview.apk?raw=true
APP示例:微信通讯录、小米联系人
项目地址:https://github.com/nolanlawson/CustomFastScrollViewDemo
效果图:https://raw.github.com/nolanlawson/CustomFastScrollViewDemo/master/example.png
项目地址:https://github.com/rno/Android-ScrollBarPanel
效果展示:https://github.com/rno/Android-ScrollBarPanel/raw/master/demo_capture.png
项目地址:https://github.com/tjerkw/Android-SlideExpandableListView
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/slide-expandable-listView-demo.apk?raw=true
项目地址:https://github.com/twotoasters/JazzyListView
Demo地址:https://play.google.com/store/apps/details?id=com.twotoasters.jazzylistview.sample
效果展示:http://lab.hakim.se/scroll-effects/
项目地址:https://github.com/nhaarman/ListViewAnimations
Demo地址:https://play.google.com/store/apps/details?id=com.haarman.listviewanimations
APP示例:Google plus、Google Now卡片式进入、小米系统中应用商店、联系人、游戏中心、音乐、文件管理器的ListView、Ultimate、Light Flow Lite、TreinVerkeer、Running Coach、Pearl Jam Lyrics、Calorie Chart、Car Hire、Super BART、DK FlashCards、Counter Plus、Voorlees Verhaaltjes 2.0
项目地址:https://github.com/dinocore1/DevsmartLib-Android
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/horizontal-listview-demo.apk?raw=true
二、ActionBar
项目地址:https://github.com/JakeWharton/ActionBarSherlock
Demo地址:https://play.google.com/store/apps/details?id=com.actionbarsherlock.sample.demos
APP示例:太多了。。现在连google都在用
项目地址:https://github.com/chrisbanes/ActionBar-PullToRefresh
Demo地址:https://play.google.com/store/apps/details?id=uk.co.senab.actionbarpulltorefresh.samples.stock
APP示例:Gmail,Google plus,知乎等
项目地址:https://github.com/ManuelPeinado/FadingActionBar
Demo地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.fadingactionbar.demo
APP示例:google music,知乎
项目地址:https://github.com/flavienlaurent/NotBoringActionBar
Demo地址:http://flavienlaurent.com/blog/2013/11/20/making-your-action-bar-not-boring/
APP示例:Google音乐
项目地址:https://github.com/ManuelPeinado/RefreshActionItem
Demo地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.refreshactionitem.demo
APP示例:The New York Times,DevAppsDirect.
项目地址:https://github.com/ManuelPeinado/GlassActionBar
Demo地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.glassactionbardemo
APP示例:google music
三、Menu
项目地址:https://github.com/SimonVT/android-menudrawer
Demo地址:http://simonvt.github.io/android-menudrawer/
APP示例:Gmail、Google Music等大部分google app
项目地址:https://github.com/jfeinstein10/SlidingMenu
Demo地址:https://play.google.com/store/apps/details?id=com.slidingmenu.example
APP示例:Foursquare, LinkedIn, Zappos, Rdio, Evernote Food, Plume, VLC for Android, ESPN ScoreCenter, MLS MatchDay, 9GAG, Wunderlist 2, The Verge, MTG Familiar, Mantano Reader, Falcon Pro (BETA), MW3 Barracks
MenuDrawer和SlidingMenu比较:SlidingMenu支持菜单动画样式出现,MenuDrawer支持菜单view处于内容的上下层
项目地址:https://github.com/daCapricorn/ArcMenu
APP示例:Path
效果图:(有墙)https://dl.dropboxusercontent.com/u/11369687/preview0.png
https://dl.dropboxusercontent.com/u/11369687/preview1.png
https://dl.dropboxusercontent.com/u/11369687/raymenu.png
项目地址:https://github.com/siyamed/android-satellite-menu
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/satellite-menu-demo.apk?raw=true
APP示例:Path
项目地址:https://code.google.com/p/radial-menu-widget/
效果图:http://farm8.staticflickr.com/7377/11621125154_d1773c2dcc_o.jpg
项目地址:https://github.com/anupcowkur/Android-Wheel-Menu
效果图:https://raw.github.com/anupcowkur/Android-Wheel-Menu/master/graphics/wheel.gif
项目地址:https://github.com/tibi1712/FoldingNavigationDrawer-Android
使用介绍:https://play.google.com/store/apps/details?id=com.ptr.folding.sample
效果图:https://lh6.ggpht.com/VnKUZenAozQ0KFAm5blFTGqMaKFjvX-BK2JH-jrX1sIXVTqciACqRhqFH48hc4pm2Q=h310-rw
四、ViewPager 、Gallery
项目地址:https://github.com/JakeWharton/Android-ViewPagerIndicator
Demo地址:https://play.google.com/store/apps/details?id=com.viewpagerindicator.sample
APP示例:太多了。。
项目地址:https://github.com/jfeinstein10/JazzyViewPager
Demo地址:https://github.com/jfeinstein10/JazzyViewPager/blob/master/JazzyViewPager.apk?raw=true
效果图:类似桌面左右切换的各种效果,不过桌面并非用ViewPager实现而已
项目地址:https://github.com/JakeWharton/Android-DirectionalViewPager
Demo地址:https://market.android.com/details?id=com.directionalviewpager.sample
项目地址:https://github.com/chrisbanes/Android-PullToRefresh
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refreshview-demo.apk?raw=true
APP示例:新浪微博各个页面
项目地址:https://github.com/davidschreiber/FancyCoverFlow
Demo地址:https://play.google.com/store/apps/details?id=at.technikum.mti.fancycoverflow.samples
效果图:https://github-camo.global.ssl.fastly.net/ef5ced52b7b54652b50499521ed797c0188c7a6b/687474703a2f2f64617669647363687265696265722e6769746875622e696f2f46616e6379436f766572466c6f772f73637265656e73686f74322e706e67
相比下面的PhotoView,在被放大后依然能滑到下一个item,并且支持直接从url和文件中获取图片,
项目地址:https://github.com/Dreddik/AndroidTouchGallery
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/touch-gallery-demo.apk?raw=true
APP示例:类似微信中查看聊天记录图片时可双击放大,并且放大情况下能正常左右滑动到前后图片
项目地址:https://github.com/JakeWharton/salvage
五、GridView
类似Pinterest的瀑布流,并且跟ListView一样自带View缓存,继承自ViewGroup
项目地址:https://github.com/maurycyw/StaggeredGridView
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/staggered-gridview-demo.apk?raw=true
APP示例:Pinterest等
类似Pinterest的瀑布流,继承自AbsListView
项目地址:https://github.com/etsy/AndroidStaggeredGrid
APP示例:Pinterest等
类似Pinterest的瀑布流,允许下拉刷新
项目地址:https://github.com/huewu/PinterestLikeAdapterView
APP示例:Pinterest等
项目地址:https://github.com/thquinn/DraggableGridView
Demo地址:https://github.com/thquinn/DraggableGridView/blob/master/bin/DraggableGridViewSample.apk?raw=true
六、ImageView
在ViewPager等Scrolling view中正常使用,相比上面的AndroidTouchGallery,不仅支持ViewPager,同时支持单个ImageView
项目地址:https://github.com/chrisbanes/PhotoView
Demo地址:https://play.google.com/store/apps/details?id=uk.co.senab.photoview.sample
APP示例:photup
项目地址:https://github.com/koral–/android-gif-drawable
用jni实现的,编译生成so库后直接xml定义view即可,而且本身不依赖于其他开源项目,所以相对下面的ImageViewEx简单的多
项目地址:https://github.com/frapontillo/ImageViewEx,
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/imageviewex-demo.apk?raw=true
依赖很多,编译过程很繁琐!|_|!
项目地址:https://github.com/vinc3m1/RoundedImageView
效果图:https://raw.github.com/makeramen/RoundedImageView/master/screenshot.png
七、ProgressBar
项目地址:https://github.com/castorflex/SmoothProgressBar
Demo地址:https://play.google.com/store/apps/details?id=fr.castorflex.android.smoothprogressbar.sample
项目地址:https://github.com/Todd-Davies/ProgressWheel
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/progress-wheel-demo.apk?raw=true
项目地址:https://github.com/mrwonderman/android-square-progressbar
Demo地址:https://play.google.com/store/apps/details?id=net.yscs.android.square_progressbar_example
APP示例:square
效果图:https://googledrive.com/host/0BwESwPCuXtw7eExwSFVLQkR2TTg/newscreen1.png
项目地址:https://github.com/passsy/android-HoloCircularProgressBar
APP示例:Android4.1时钟App
效果图:https://raw.github.com/passsy/android-HoloCircularProgressBar/master/raw/screenshot1.png
八、其他
支持折线图、面积图、散点图、时间图、柱状图、条图、饼图、气泡图、圆环图、范围(高至低)条形图、拨号图/表、立方线图及各种图的结合
项目地址:https://code.google.com/p/achartengine/
官方网站:http://www.achartengine.org/
效果图:http://www.achartengine.org/dimages/average_temperature.png
http://www.achartengine.org/dimages/sales_line_and_area_chart.png
http://www.achartengine.org/dimages/temperature_range_chart.png
http://www.achartengine.org/dimages/combined_chart.png
http://www.achartengine.org/dimages/budget_chart.png
APP示例:Wordpress Android,Google Analytics
可用于Android上的曲形图、柱状图、波浪图展示
项目地址:https://github.com/jjoe64/GraphView
Demo工程:https://github.com/jjoe64/GraphView-Demos
Demo地址:https://play.google.com/store/apps/details?id=com.sothree.umano
APP示例:Wordpress Android,Google Analytics
项目地址:https://github.com/openaphid/android-flip
Demo地址:https://github.com/openaphid/android-flip/blob/master/FlipView/Demo/APK/Aphid-FlipView-Demo.apk?raw=true
APP示例:flipboard
项目地址:https://github.com/castorflex/FlipImageView
Demo地址:https://play.google.com/store/apps/details?id=fr.castorflex.android.flipimageview
项目地址:https://github.com/Issacw0ng/SwipeBackLayout
Demo地址:https://play.google.com/store/apps/details?id=me.imid.swipebacklayout.demo
APP示例:知乎
项目地址:https://github.com/afollestad/Cards-UI
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/cards-ui-demo.apk?raw=true
项目地址:https://github.com/gabrielemariotti/cardslib
Demo地址:https://play.google.com/store/apps/details?id=it.gmariotti.cardslib.demo
默认与Holo主题样式一致,在Android2.2以上同一样式
项目地址:https://github.com/inmite/android-styled-dialogs
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/styled-dialogs-demo.apk?raw=true
允许alert、comfirm、info样式及点击消失样式,允许设置Toast显示时间,允许自定义View。
项目地址:https://github.com/keyboardsurfer/Crouton
Demo地址:http://play.google.com/store/apps/details?id=de.keyboardsurfer.app.demo.crouton
项目地址:https://github.com/nhaarman/supertooltips
Demo地址:https://play.google.com/store/apps/details?id=com.haarman.supertooltips
项目地址:https://github.com/jgilfelt/android-viewbadger
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/android-viewbadger.apk?raw=true
效果图:https://github-camo.global.ssl.fastly.net/a705a3e88c75ae2394943bd7c56f725697616ea8/687474703a2f2f7777772e6a65666667696c66656c742e636f6d2f766965776261646765722f76622d31612e706e67
项目地址:https://github.com/umano/AndroidSlidingUpPanel
Demo地址:https://play.google.com/store/apps/details?id=com.sothree.umano
APP示例:Google Music精简播放栏
支持选取单个日期,多个日期,及日期区间段和对话框形式显示
项目地址:https://github.com/square/android-times-square
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/times-square-demo.apk?raw=true
项目地址:https://github.com/kenumir/android-calendar-card
Demo地址:https://play.google.com/store/apps/details?id=com.wt.calendarcardsample
效果图:https://raw.github.com/kenumir/android-calendar-card/master/calendar-card-sample/_work/device-2013-10-12-151801.png
项目地址:https://code.google.com/p/color-picker-view/
效果图:http://oi41.tinypic.com/33c6mm8.jpg
项目地址:https://github.com/LarsWerkman/HoloColorPicker
Demo地址:https://docs.google.com/file/d/0BwclyDTlLrdXRzVnTGJvTlRfU2s/edit
项目地址:https://github.com/sephiroth74/AndroidWheel
效果图:http://farm6.staticflickr.com/5532/11621528786_220c040ba5_o.jpg
项目地址:https://code.google.com/p/android-flowtextview/
效果图:http://i949.photobucket.com/albums/ad332/vostroman1500/1.png
项目地址:https://github.com/vinc3m1/android-segmentedradiobutton
Demo地址:https://github.com/thquinn/DraggableGridView/blob/master/bin/DraggableGridViewSample.apk?raw=true
效果图:https://raw.github.com/vinc3m1/android-segmentedradiobutton/master/screens/segmentedradio.png
项目地址:https://github.com/InQBarna/TableFixHeaders
Demo地址:http://bit.ly/13buAIq
支持输入、英文、ip、url等多种正则验证
项目地址:https://github.com/vekexasia/android-edittext-validator
Demo地址:https://play.google.com/store/apps/details?id=com.andreabaccega.edittextformexample
包括Button、ListView、TableView
项目地址:https://github.com/thiagolocatelli/android-uitableview
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/ui-tableview-demo.apk?raw=true
项目地址:https://github.com/dmacosta/ATableView
Demo地址:https://play.google.com/store/apps/details?id=com.nakardo.atableview.demo
项目地址:https://github.com/soarcn/UndoBar
效果图:https://github.com/soarcn/UndoBar/blob/master/art/redo.png?raw=true
项目地址:https://github.com/MartinvanZ/Inscription
项目地址:https://github.com/ophilbert/ActivityTransition
使用介绍:https://github.com/jfeinstein10/JazzyViewPager/blob/master/JazzyViewPager.apk?raw=true
效果图:类似桌面左右切换的各种效果,不过桌面并非用ViewPager实现而已
项目地址:https://github.com/edmodo/cropper
使用介绍:https://github.com/edmodo/cropper/wiki
效果图:https://github-camo.global.ssl.fastly.net/e4fde77bf41d4a60b234b4e268e5cfa8c17d9b6f/687474703a2f2f692e696d6775722e636f6d2f334668735467666c2e6a7067
项目地址:https://github.com/rock3r/GlowPadBackport
Demo地址:https://play.google.com/store/apps/details?id=net.sebastianopoggi.samples.ui.GlowPadSample
效果图:https://lh6.ggpht.com/U070b6Lh6cVsVwx4jN-5nq0xqiB1PBzrYABPeJIEe2hZQ5UWOxc-FDUG77wADelToHA=h310-rw
项目地址:https://github.com/nadavfima/GlowPadView
效果图:https://raw.github.com/nadavfima/GlowPadView/master/example.png
项目地址:https://code.google.com/p/android-lockpattern/
Demo地址:https://play.google.com/store/apps/details?id=group.pals.android.lib.ui.lockpattern.demo
使用介绍:https://code.google.com/p/android-lockpattern/wiki/QuickUse
示例APP:Android开机的图案密码解锁,支付宝的密码解锁
Android开源项目第二类——工具库
一、依赖注入DI
通过依赖注入减少View、服务、资源简化初始化,事件绑定等重复繁琐工作
项目地址:https://github.com/excilys/androidannotations
文档介绍:https://github.com/excilys/androidannotations/wiki
官方网站:http://androidannotations.org/
特点:(1)依赖注入:包括view,extras,系统服务,资源等等
(2)简单的线程模型,通过annotation表示方法运行在ui线程还是后台线程
(3)事件绑定:通过annotation表示view的响应事件,不用在写内部类
(4)REST客户端:定义客户端接口,自动生成REST请求的实现
(5)没有你想象的复杂:AndroidAnnotations只是在在编译时生成相应子类
(6)不影响应用性能:仅50kb,在编译时完成,不会对运行时有性能影响。
PS:与roboguice的比较:roboguice通过运行时读取annotations进行反射,所以可能影响应用性能,而AndroidAnnotations在编译时生成子类,所以对性能没有影响
项目地址:https://github.com/roboguice/roboguice
文档介绍:https://github.com/roboguice/roboguice/wiki
项目地址:https://github.com/JakeWharton/butterknife
文档介绍:http://jakewharton.github.io/butterknife/
项目地址:https://github.com/square/dagger
文档介绍:http://square.github.io/dagger/
二、图片缓存
目前使用最广泛的图片缓存,支持主流图片缓存的绝大多数特性。
项目地址:https://github.com/nostra13/Android-Universal-Image-Loader
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/universal-imageloader-demo.apk?raw=true
文档介绍:http://www.intexsoft.com/blog/item/74-universal-image-loader-part-3.html
项目地址:https://github.com/square/picasso
文档介绍:http://square.github.io/picasso/
特点:(1)可以自动检测adapter的重用并取消之前的下载
(2)图片变换
(3)可以加载本地资源
(4)可以设置占位资源
(5)支持debug模式
项目地址:https://github.com/Trinea/AndroidCommon
Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo
文档介绍:http://www.trinea.cn/?p=704
特点:(1)支持预取新图片,支持等待队列
(2)包含二级缓存,可自定义文件名保存规则
(3)可选择多种缓存算法(FIFO、LIFO、LRU、MRU、LFU、MFU等13种)或自定义缓存算法
(4)可方便的保存及初始化恢复数据
(5)支持不同类型网络处理
(6)可根据系统配置初始化缓存等
三、网络相关
项目地址:https://github.com/loopj/android-async-http
文档介绍:http://loopj.com/android-async-http/
特点:(1) 在匿名回调中处理请求结果
(2) 在UI线程外进行http请求
(3) 文件断点上传
(4) 智能重试
(5) 默认gzip压缩
(6) 支持解析成Json格式
(7) 可将Cookies持久化到SharedPreferences
项目地址:https://github.com/androidquery/androidquery或https://code.google.com/p/android-query/
文档介绍:https://code.google.com/p/android-query/#Why_AQuery?
Demo地址:https://play.google.com/store/apps/details?id=com.androidquery
特点:https://code.google.com/p/android-query/#Why_AQuery?
项目地址:https://github.com/AsyncHttpClient/async-http-client
文档介绍:http://sonatype.github.io/async-http-client/
项目地址:https://github.com/koush/ion
文档介绍:https://github.com/koush/ion#more-examples
项目地址:https://github.com/Trinea/AndroidCommon
Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo
Demo代码:https://github.com/Trinea/AndroidDemo/blob/master/src/cn/trinea/android/demo/HttpCacheDemo.java
特点是:(1) 根据cache-control、expires缓存http请求
(2) 支持同步、异步Http请求
(3) 在匿名回调中处理请求结果
(4) 在UI线程外进行http请求
(5) 默认gzip压缩
项目地址:https://github.com/kevinsawicki/http-request
文档介绍:https://github.com/kevinsawicki/http-request#examples
项目地址:https://github.com/square/okhttp
文档介绍:http://square.github.io/okhttp/
特点:(1) 支持SPDY(http://zh.wikipedia.org/wiki/SPDY)协议。SPDY协议是Google开发的基于传输控制协议的应用层协议,通过压缩,多路复用(一个TCP链接传送网页和图片等资源)和优先级来缩短加载时间。
(2) 如果SPDY不可用,利用连接池减少请求延迟
(3) Gzip压缩
(4) Response缓存减少不必要的请求
项目地址:https://github.com/square/retrofit
文档介绍:http://square.github.io/retrofit/
四、数据库 orm工具包
orm的db工具类,简化建表、查询、更新、插入、事务、索引的操作
项目地址:https://github.com/greenrobot/greenDAO
文档介绍:http://greendao-orm.com/documentation/
官方网站:http://greendao-orm.com/
特点:(1)性能佳
(2) 简单易用的API
(3) 内存小好小
(4) 库大小小
项目地址:https://github.com/pardom/ActiveAndroid
文档介绍:https://github.com/pardom/ActiveAndroid/wiki/_pages
项目地址:https://github.com/emilsjolander/sprinkles
文档介绍:http://emilsjolander.github.io/blog/2013/12/18/android-with-sprinkles/
特点:比较显著的特点就是配合https://github.com/square/retrofit能保存从服务器获取的数据
五、Android公共库
包括collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O等等. 这些高质量的API可以使你的JAVa代码更加优雅,更加简洁
项目地址:https://code.google.com/p/guava-libraries/
文档介绍:https://code.google.com/p/guava-libraries/wiki/GuavaExplained
项目地址:https://github.com/Trinea/AndroidCommon
Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo
文档介绍:http://www.trinea.cn/?p=778
包括:(1)缓存(图片缓存、预取缓存、网络缓存)
(2) 公共View(下拉及底部加载更多ListView、底部加载更多ScrollView、滑动一页Gallery)
(3) Android常用工具类(网络、下载、Android资源操作、shell、文件、Json、随机数、Collection等等)
六、Android 高版本向低版本兼容
项目地址:https://github.com/JakeWharton/ActionBarSherlock
Demo地址:https://play.google.com/store/apps/details?id=com.actionbarsherlock.sample.demos
APP示例:太多了。。现在连google都在用
项目地址:https://github.com/JakeWharton/NineOldAndroids
Demo地址:https://play.google.com/store/apps/details?id=com.jakewharton.nineoldandroids.sample
文档介绍:http://nineoldandroids.com/
项目地址:https://github.com/Prototik/HoloEverywhere
Demo地址:https://raw.github.com/Prototik/HoloEverywhere/repo/org/holoeverywhere/demo/2.1.0/demo-2.1.0.apk
文档介绍:http://android-developers.blogspot.com/2012/01/holo-everywhere.html
七、多媒体相关
项目地址:https://github.com/cocos2d/cocos2d-x
文档介绍:http://www.cocos2d-x.org/wiki
官方网站:http://www.cocos2d-x.org/
项目地址:https://github.com/yixia/VitamioBundle
网站介绍:http://www.vitamio.org/docs/
特点:(1) 全面支持硬件解码与GPU渲染
(2) 能够流畅播放720P甚至1080P高清MKV,FLV,MP4,MOV,TS,RMVB等常见格式的视频
(3) 在Android与iOS上跨平台支持 MMS, RTSP, RTMP, HLS(m3u8)等常见的多种视频流媒体协议,包括点播与直播。
项目地址:https://github.com/lightbox/PhotoProcessing
Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/photo-processing.apk?raw=true
项目地址:https://github.com/kikoso/android-stackblur
Demo地址:https://github.com/kikoso/android-stackblur/blob/master/StackBlurDemo/bin/StackBlurDemo.apk?raw=true
文档介绍:https://github.com/kikoso/android-stackblur#usage
八、其他
项目地址:https://github.com/JakeWharton/salvage
项目地址:https://github.com/wordpress-mobile/Android-PasscodeLock
Demo地址:https://play.google.com/store/apps/details?id=com.sothree.umano
APP示例:Wordpress Android,支付宝,挖财
项目地址:https://code.google.com/p/android-lockpattern/
Demo地址:https://play.google.com/store/apps/details?id=group.pals.android.lib.ui.lockpattern.demo
使用介绍:https://code.google.com/p/android-lockpattern/wiki/QuickUse
示例APP:Android开机的图案密码解锁,支付宝的密码解锁
项目地址:https://github.com/rock3r/GlowPadBackport
Demo地址:https://play.google.com/store/apps/details?id=net.sebastianopoggi.samples.ui.GlowPadSample
效果图:https://lh6.ggpht.com/U070b6Lh6cVsVwx4jN-5nq0xqiB1PBzrYABPeJIEe2hZQ5UWOxc-FDUG77wADelToHA=h310-rw
项目地址:https://github.com/nadavfima/GlowPadView
效果图:https://raw.github.com/nadavfima/GlowPadView/master/example.png
项目地址:https://github.com/path/android-priority-jobqueue
文档介绍:https://github.com/path/android-priority-jobqueue#getting-started
项目地址:https://github.com/jhy/jsoup
官方网站:http://jsoup.org/
作用:(1) 从一个url、文件或string获得html并解析
(2) 利用dom遍历或css选择器查找、提取数据
(3) 操作html元素
(4) 根据白名单去除用于提交的非法数据防止xss攻击
(5) 输出整齐的html
8.ZIP java压缩和解压库
项目地址:https://github.com/zeroturnaround/zt-zip
文档介绍:https://github.com/zeroturnaround/zt-zip#examples
作用:(1) 解压和压缩,并支持文件夹内递归操作
(2) 支持包含和排除某些元素
(3) 支持重命名元素
(4) 支持遍历zip包内容
(5) 比较两个zip包等功能
项目地址:https://github.com/cobub/razor
Demo地址:http://demo.cobub.com/razor
网站介绍:http://dev.cobub.com/
项目地址:https://github.com/iPaulPro/aFileChooser
项目地址:https://github.com/dannytiehui/androidpn
项目地址:https://github.com/umeng/apf
Android开源项目第三类——优秀项目
一 与Linux相关
Linux
项目地址:https://github.com/torvalds/linux
二 Android项目
Android
项目地址:https://android.googlesource.com/或https://github.com/android
以上两个项目,不解释
三 其他
项目地址:https://github.com/zxing/zxing或https://code.google.com/p/zxing/
APK地址:https://play.google.com/store/apps/details?id=com.google.zxing.client.android
PS:现在市面上很多应用的二维码扫描功能都是从这个修改而来
项目地址:https://github.com/chrisbanes/photup
APK地址:https://play.google.com/store/apps/details?id=uk.co.senab.photup
PS:代码分包合理,很棒。不过这个项目依赖的开源项目比较多,比较难编译
项目地址:https://github.com/github/android
APK地址:https://play.google.com/store/apps/details?id=com.github.mobile
项目地址:https://github.com/MiCode/Notes
APK地址:https://github.com/Trinea/TrineaDownload/blob/master/miui-note-demo.apk?raw=true
PS:项目分包比较合理,相比较miui的文件管理器https://github.com/MiCode/FileExplorer代码规范较好得多
项目地址:https://github.com/qii/weiciyuan
APK地址:https://play.google.com/store/apps/details?id=org.qii.weiciyuan
项目地址:https://github.com/codinguser/gnucash-android
APK地址:http://play.google.com/store/apps/details?id=org.gnucash.android
项目地址:https://github.com/danieloeh/AntennaPod
APK地址:https://play.google.com/store/apps/details?id=de.danoeh.antennapod
项目地址:https://github.com/tvbarthel/ChaseWhisplyProject
APK地址:https://play.google.com/store/apps/details?id=fr.tvbarthel.games.chasewhisply
项目地址:https://github.com/chrislacy/TweetLanes
APK地址:https://play.google.com/store/apps/details?id=com.tweetlanes.android
Android开源项目第四类——开发及测试工具
1、Buck
facebook开源的Android编译工具,效率是ant的两倍。主要优点在于:
(1) 加快编译速度,通过并行利用多核cpu和跟踪不变资源减少增量编译时间实现
(2) 可以在编译系统中生成编译规则而无须另外的系统生成编译规则文件
(3) 编译同时可生成单元测试结果
(4) 既可用于IDE编译也可用于持续集成编译
(5) facebook持续优化中
项目地址:https://github.com/facebook/buck
2、Android Maven Plugin
Android Maven插件,可用于对android三方依赖进行管理。在J2EE开发中,maven是非常成熟的依赖库管理工具,可统一管理依赖库。
项目地址:https://github.com/jayway/maven-android-plugin
3、Spoon
可用于android不同机型设备自动化测试,能将应用apk和测试apk运行在不同机器上并生成相应测试报告。
项目地址:https://github.com/square/spoon
4、Android FEST
提供一些列方便的断言,可用于提高编写Android自测代码效率
项目地址:https://github.com/square/fest-android
5、SelectorChapek for Android
Android Studio插件,可根据固定文件名格式资源自动生成drawable selectors xml文件。
项目地址:https://github.com/inmite/android-selector-chapek
6、Android Resource Navigator
chrome插件,可以方便的查看github上android源码工程的styles.xml和themes.xml。主要功能:
(1) 快速打开android styles.xml themes.xml
(2) 方便在资源间跳转。styles.xml themes.xml文件中资源链接跳转,可以方便跳转到某个资源
(3) 方便查找某个style和theme。chrome地址栏输入arn+tab+搜索内容回车即可
(4) 自动下载不同分辨率下的drawable
(5) 通过映射查找那些不是按照固定命名规则命名的style和theme
项目地址:https://github.com/jgilfelt/android-resource-navigator
示例:https://chrome.google.com/webstore/detail/android-resource-navigato/agoomkionjjbejegcejiefodgbckeebo?hl=en&gl=GB
7、Android Action Bar Style Generator
Android ActionBar样式生成器,可在线选择ActionBar样式自动生成所需要的图片资源及xml文件
项目地址:https://github.com/jgilfelt/android-actionbarstylegenerator
在线演示:http://jgilfelt.github.io/android-actionbarstylegenerator/
8、ViewServer
允许app运行在任何手机上都可以用HierarchyViewer查看
项目地址:https://github.com/romainguy/ViewServer
9、GridWichterle for Android
在整个系统上显示一个grid,用来帮助查看应用布局及使得布局更美观,可设置grid网格大小和颜色,android推荐48dp和8dp,可见 Android Design Guidelines – Metrics and Grids
项目地址:https://github.com/inmite/android-grid-wichterle
APK地址:https://play.google.com/store/apps/details?id=eu.inmite.android.gridwichterle
PS:比起hierarchyviewer相差甚远,不过偶尔可用来作为布局查看工具。
10、渠道打包工具
允许app运行在任何手机上都可以用HierarchyViewer查看
项目地址:https://github.com/umeng/umeng-muti-channel-build-tool
另可参见Google的构建系统Gradle:http://tools.android.com/tech-docs/new-build-system/user-guide
11、Catlog
手机端log查看工具,支持不同颜色显示、关键字过滤、级别过滤、进程id过滤、录制功能等
项目地址:https://github.com/nolanlawson/Catlog
在线演示:https://play.google.com/store/apps/details?id=com.nolanlawson.logcat
12、PID Cat
根据package查看logcat日志
项目地址:https://github.com/JakeWharton/pidcat
13、Hugo
用于打印函数信息及执行时间的工具,仅在debug模式生效
项目地址:https://github.com/JakeWharton/hugo
Android开源项目第五类——优秀个人和团体
一、个人
Github地址:https://github.com/JakeWharton
代表作:ActionBarSherlock,Android-ViewPagerIndicator,Nine Old Androids,SwipeToDismissNOA,hugo,butterknife,Android-DirectionalViewPager
pidcat另外对square及其他开源项目有很多贡献
博客:http://jakewharton.com/
绝对牛逼的大神,项目主要集中在Android版本兼容,ViewPager及开发工具上.
Github地址:https://github.com/chrisbanes
代表作:ActionBar-PullToRefresh,PhotoView,Android-BitmapCache,Android-PullToRefresh
博客:http://chris.banes.me/
Github地址:https://github.com/koush
代表作:Superuser,AndroidAsync,UrlImageViewHelper,ion, 另外对https://github.com/CyanogenMod的开源项目有很多贡献
博客:http://koush.com/
Github地址:https://github.com/SimonVT
代表作:android-menudrawer,MessageBar
博客:http://simonvt.net/
Github地址:https://github.com/ManuelPeinado
代表作:FadingActionBar,GlassActionBar,RefreshActionItem,QuickReturnHeader
Github地址:https://github.com/emilsjolander
代表作:StickyListHeaders,sprinkles,android-FlipView
博客:http://emilsjolander.se/
Github地址:https://github.com/greenrobot
代表作:greenDAO,EventBus
网址:http://greenrobot.de/
Github地址:https://github.com/jgilfelt
代表作:android-mapviewballoons,android-viewbadger,android-actionbarstylegenerator,android-sqlite-asset-helper
网址:http://jeffgilfelt.com
Ps: ViewServer作者的个人摄影作品http://www.flickr.com/photos/romainguy,感觉超赞
二、组织
Github地址:https://github.com/square
代表作:okhttp、fest-android,android-times-square、picasso、dagger、spoon等等
网址:http://square.github.io/
有态度有良心的企业,很多不错的分享
Github地址:https://github.com/inmite
代表作:android-styled-dialogs,android-grid-wichterle,android-selector-chapek
网址:http://www.inmite.eu/
The text was updated successfully, but these errors were encountered: