├── English Version
└── README.md
├── LICENSE
├── README.md
└── 繁體中文版
└── README.md
/LICENSE:
--------------------------------------------------------------------------------
1 | Apache License
2 | Version 2.0, January 2004
3 | http://www.apache.org/licenses/
4 |
5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6 |
7 | 1. Definitions.
8 |
9 | "License" shall mean the terms and conditions for use, reproduction,
10 | and distribution as defined by Sections 1 through 9 of this document.
11 |
12 | "Licensor" shall mean the copyright owner or entity authorized by
13 | the copyright owner that is granting the License.
14 |
15 | "Legal Entity" shall mean the union of the acting entity and all
16 | other entities that control, are controlled by, or are under common
17 | control with that entity. For the purposes of this definition,
18 | "control" means (i) the power, direct or indirect, to cause the
19 | direction or management of such entity, whether by contract or
20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the
21 | outstanding shares, or (iii) beneficial ownership of such entity.
22 |
23 | "You" (or "Your") shall mean an individual or Legal Entity
24 | exercising permissions granted by this License.
25 |
26 | "Source" form shall mean the preferred form for making modifications,
27 | including but not limited to software source code, documentation
28 | source, and configuration files.
29 |
30 | "Object" form shall mean any form resulting from mechanical
31 | transformation or translation of a Source form, including but
32 | not limited to compiled object code, generated documentation,
33 | and conversions to other media types.
34 |
35 | "Work" shall mean the work of authorship, whether in Source or
36 | Object form, made available under the License, as indicated by a
37 | copyright notice that is included in or attached to the work
38 | (an example is provided in the Appendix below).
39 |
40 | "Derivative Works" shall mean any work, whether in Source or Object
41 | form, that is based on (or derived from) the Work and for which the
42 | editorial revisions, annotations, elaborations, or other modifications
43 | represent, as a whole, an original work of authorship. For the purposes
44 | of this License, Derivative Works shall not include works that remain
45 | separable from, or merely link (or bind by name) to the interfaces of,
46 | the Work and Derivative Works thereof.
47 |
48 | "Contribution" shall mean any work of authorship, including
49 | the original version of the Work and any modifications or additions
50 | to that Work or Derivative Works thereof, that is intentionally
51 | submitted to Licensor for inclusion in the Work by the copyright owner
52 | or by an individual or Legal Entity authorized to submit on behalf of
53 | the copyright owner. For the purposes of this definition, "submitted"
54 | means any form of electronic, verbal, or written communication sent
55 | to the Licensor or its representatives, including but not limited to
56 | communication on electronic mailing lists, source code control systems,
57 | and issue tracking systems that are managed by, or on behalf of, the
58 | Licensor for the purpose of discussing and improving the Work, but
59 | excluding communication that is conspicuously marked or otherwise
60 | designated in writing by the copyright owner as "Not a Contribution."
61 |
62 | "Contributor" shall mean Licensor and any individual or Legal Entity
63 | on behalf of whom a Contribution has been received by Licensor and
64 | subsequently incorporated within the Work.
65 |
66 | 2. Grant of Copyright License. Subject to the terms and conditions of
67 | this License, each Contributor hereby grants to You a perpetual,
68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable
69 | copyright license to reproduce, prepare Derivative Works of,
70 | publicly display, publicly perform, sublicense, and distribute the
71 | Work and such Derivative Works in Source or Object form.
72 |
73 | 3. Grant of Patent License. Subject to the terms and conditions of
74 | this License, each Contributor hereby grants to You a perpetual,
75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable
76 | (except as stated in this section) patent license to make, have made,
77 | use, offer to sell, sell, import, and otherwise transfer the Work,
78 | where such license applies only to those patent claims licensable
79 | by such Contributor that are necessarily infringed by their
80 | Contribution(s) alone or by combination of their Contribution(s)
81 | with the Work to which such Contribution(s) was submitted. If You
82 | institute patent litigation against any entity (including a
83 | cross-claim or counterclaim in a lawsuit) alleging that the Work
84 | or a Contribution incorporated within the Work constitutes direct
85 | or contributory patent infringement, then any patent licenses
86 | granted to You under this License for that Work shall terminate
87 | as of the date such litigation is filed.
88 |
89 | 4. Redistribution. You may reproduce and distribute copies of the
90 | Work or Derivative Works thereof in any medium, with or without
91 | modifications, and in Source or Object form, provided that You
92 | meet the following conditions:
93 |
94 | (a) You must give any other recipients of the Work or
95 | Derivative Works a copy of this License; and
96 |
97 | (b) You must cause any modified files to carry prominent notices
98 | stating that You changed the files; and
99 |
100 | (c) You must retain, in the Source form of any Derivative Works
101 | that You distribute, all copyright, patent, trademark, and
102 | attribution notices from the Source form of the Work,
103 | excluding those notices that do not pertain to any part of
104 | the Derivative Works; and
105 |
106 | (d) If the Work includes a "NOTICE" text file as part of its
107 | distribution, then any Derivative Works that You distribute must
108 | include a readable copy of the attribution notices contained
109 | within such NOTICE file, excluding those notices that do not
110 | pertain to any part of the Derivative Works, in at least one
111 | of the following places: within a NOTICE text file distributed
112 | as part of the Derivative Works; within the Source form or
113 | documentation, if provided along with the Derivative Works; or,
114 | within a display generated by the Derivative Works, if and
115 | wherever such third-party notices normally appear. The contents
116 | of the NOTICE file are for informational purposes only and
117 | do not modify the License. You may add Your own attribution
118 | notices within Derivative Works that You distribute, alongside
119 | or as an addendum to the NOTICE text from the Work, provided
120 | that such additional attribution notices cannot be construed
121 | as modifying the License.
122 |
123 | You may add Your own copyright statement to Your modifications and
124 | may provide additional or different license terms and conditions
125 | for use, reproduction, or distribution of Your modifications, or
126 | for any such Derivative Works as a whole, provided Your use,
127 | reproduction, and distribution of the Work otherwise complies with
128 | the conditions stated in this License.
129 |
130 | 5. Submission of Contributions. Unless You explicitly state otherwise,
131 | any Contribution intentionally submitted for inclusion in the Work
132 | by You to the Licensor shall be under the terms and conditions of
133 | this License, without any additional terms or conditions.
134 | Notwithstanding the above, nothing herein shall supersede or modify
135 | the terms of any separate license agreement you may have executed
136 | with Licensor regarding such Contributions.
137 |
138 | 6. Trademarks. This License does not grant permission to use the trade
139 | names, trademarks, service marks, or product names of the Licensor,
140 | except as required for reasonable and customary use in describing the
141 | origin of the Work and reproducing the content of the NOTICE file.
142 |
143 | 7. Disclaimer of Warranty. Unless required by applicable law or
144 | agreed to in writing, Licensor provides the Work (and each
145 | Contributor provides its Contributions) on an "AS IS" BASIS,
146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
147 | implied, including, without limitation, any warranties or conditions
148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
149 | PARTICULAR PURPOSE. You are solely responsible for determining the
150 | appropriateness of using or redistributing the Work and assume any
151 | risks associated with Your exercise of permissions under this License.
152 |
153 | 8. Limitation of Liability. In no event and under no legal theory,
154 | whether in tort (including negligence), contract, or otherwise,
155 | unless required by applicable law (such as deliberate and grossly
156 | negligent acts) or agreed to in writing, shall any Contributor be
157 | liable to You for damages, including any direct, indirect, special,
158 | incidental, or consequential damages of any character arising as a
159 | result of this License or out of the use or inability to use the
160 | Work (including but not limited to damages for loss of goodwill,
161 | work stoppage, computer failure or malfunction, or any and all
162 | other commercial damages or losses), even if such Contributor
163 | has been advised of the possibility of such damages.
164 |
165 | 9. Accepting Warranty or Additional Liability. While redistributing
166 | the Work or Derivative Works thereof, You may choose to offer,
167 | and charge a fee for, acceptance of support, warranty, indemnity,
168 | or other liability obligations and/or rights consistent with this
169 | License. However, in accepting such obligations, You may act only
170 | on Your own behalf and on Your sole responsibility, not on behalf
171 | of any other Contributor, and only if You agree to indemnify,
172 | defend, and hold each Contributor harmless for any liability
173 | incurred by, or claims asserted against, such Contributor by reason
174 | of your accepting any such warranty or additional liability.
175 |
176 | END OF TERMS AND CONDITIONS
177 |
178 | APPENDIX: How to apply the Apache License to your work.
179 |
180 | To apply the Apache License to your work, attach the following
181 | boilerplate notice, with the fields enclosed by brackets "{}"
182 | replaced with your own identifying information. (Don't include
183 | the brackets!) The text should be enclosed in the appropriate
184 | comment syntax for the file format. We also recommend that a
185 | file or class name and description of purpose be included on the
186 | same "printed page" as the copyright notice for easier
187 | identification within third-party archives.
188 |
189 | Copyright {yyyy} {name of copyright owner}
190 |
191 | Licensed under the Apache License, Version 2.0 (the "License");
192 | you may not use this file except in compliance with the License.
193 | You may obtain a copy of the License at
194 |
195 | http://www.apache.org/licenses/LICENSE-2.0
196 |
197 | Unless required by applicable law or agreed to in writing, software
198 | distributed under the License is distributed on an "AS IS" BASIS,
199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
200 | See the License for the specific language governing permissions and
201 | limitations under the License.
202 |
203 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | Android开源项目分类汇总
2 | ====================
3 |
4 | 欢迎大家推荐好的Android开源项目,可直接[Commit](https://github.com/Trinea/android-open-project/wiki "请遵守<内容添加及编辑规范>"),欢迎`Star`、`Fork` :)
5 |
6 | 微博:[Trinea](https://weibo.com/trinea) 主页:[www.trinea.cn](http://www.trinea.cn/) 邮箱:[trinea.cn@gmail.com](mailto:trinea.cn@gmail.com) QQ:[717763774](http://wpa.qq.com/msgrd?v=3&uin=717763774&site=qq&menu=yes)
7 | 分享:
8 | ## 目前包括:
9 | >[Android开源项目第一篇——个性化控件(View)篇](https://github.com/Trinea/android-open-project#%E7%AC%AC%E4%B8%80%E9%83%A8%E5%88%86-%E4%B8%AA%E6%80%A7%E5%8C%96%E6%8E%A7%E4%BB%B6view)
10 | * 包括[ListView](https://github.com/Trinea/android-open-project#%E4%B8%80listview)、[ActionBar](https://github.com/Trinea/android-open-project#%E4%BA%8Cactionbar)、[Menu](https://github.com/Trinea/android-open-project#%E4%B8%89menu)、[ViewPager](https://github.com/Trinea/android-open-project#%E5%9B%9Bviewpager-gallery)、[Gallery](https://github.com/Trinea/android-open-project#%E5%9B%9Bviewpager-gallery)、[GridView](https://github.com/Trinea/android-open-project#%E4%BA%94gridview)、[ImageView](https://github.com/Trinea/android-open-project#%E5%85%ADimageview)、[ProgressBar](https://github.com/Trinea/android-open-project#%E4%B8%83progressbar)、[TextView](https://github.com/Trinea/android-open-project#%E5%85%ABtextview)、[ScrollView](https://github.com/Trinea/android-open-project#%E4%B9%9Dscrollview)、[TimeView](https://github.com/Trinea/android-open-project#%E5%8D%81timeview)、[TipView](https://github.com/Trinea/android-open-project#%E5%8D%81%E4%B8%80tipview)、[FlipView](https://github.com/Trinea/android-open-project#%E5%8D%81%E4%BA%8Cflipview)、[ColorPickView](https://github.com/Trinea/android-open-project#%E5%8D%81%E4%B8%89colorpickview)、[GraphView](https://github.com/Trinea/android-open-project#%E5%8D%81%E5%9B%9Bgraphview)、[UI Style](https://github.com/Trinea/android-open-project#%E5%8D%81%E4%BA%94ui-style)、[其他](https://github.com/Trinea/android-open-project#%E5%8D%81%E5%85%AD%E5%85%B6%E4%BB%96)*
11 | [Android开源项目第二篇——工具库篇](https://github.com/Trinea/android-open-project#%E7%AC%AC%E4%BA%8C%E9%83%A8%E5%88%86-%E5%B7%A5%E5%85%B7%E5%BA%93)
12 | * 包括[依赖注入](https://github.com/Trinea/android-open-project#%E4%B8%80%E4%BE%9D%E8%B5%96%E6%B3%A8%E5%85%A5di)、[图片缓存](https://github.com/Trinea/android-open-project#%E4%BA%8C%E5%9B%BE%E7%89%87%E7%BC%93%E5%AD%98)、[网络相关](https://github.com/Trinea/android-open-project#%E4%B8%89%E7%BD%91%E7%BB%9C%E7%9B%B8%E5%85%B3)、[数据库ORM工具包](https://github.com/Trinea/android-open-project#%E5%9B%9B%E6%95%B0%E6%8D%AE%E5%BA%93-orm%E5%B7%A5%E5%85%B7%E5%8C%85)、[Android公共库](https://github.com/Trinea/android-open-project#%E4%BA%94android%E5%85%AC%E5%85%B1%E5%BA%93)、[高版本向低版本兼容库](https://github.com/Trinea/android-open-project#%E5%85%ADandroid-%E9%AB%98%E7%89%88%E6%9C%AC%E5%90%91%E4%BD%8E%E7%89%88%E6%9C%AC%E5%85%BC%E5%AE%B9)、[多媒体](https://github.com/Trinea/android-open-project#%E4%B8%83%E5%A4%9A%E5%AA%92%E4%BD%93%E7%9B%B8%E5%85%B3)、[事件总线](https://github.com/Trinea/android-open-project#%E5%85%AB%E4%BA%8B%E4%BB%B6%E6%80%BB%E7%BA%BF%E8%AE%A2%E9%98%85%E8%80%85%E6%A8%A1%E5%BC%8F)、[传感器](https://github.com/Trinea/android-open-project#%E4%B9%9D%E4%BC%A0%E6%84%9F%E5%99%A8)、[安全](https://github.com/Trinea/android-open-project#%E5%8D%81%E5%AE%89%E5%85%A8)、[插件化](https://github.com/Trinea/android-open-project#%E5%8D%81%E4%B8%80%E6%8F%92%E4%BB%B6%E5%8C%96)、[文件](https://github.com/Trinea/android-open-project#%E5%8D%81%E4%BA%8C%E6%96%87%E4%BB%B6)、[其他](https://github.com/Trinea/android-open-project#%E5%8D%81%E4%B8%89%E5%85%B6%E4%BB%96)*
13 | [Android开源项目第三篇——优秀项目篇](https://github.com/Trinea/android-open-project#%E7%AC%AC%E4%B8%89%E9%83%A8%E5%88%86-%E4%BC%98%E7%A7%80%E9%A1%B9%E7%9B%AE)
14 | * 比较有意思的完整的Android项目*
15 | [Android开源项目第四篇——开发及测试工具篇](https://github.com/Trinea/android-open-project#%E7%AC%AC%E5%9B%9B%E9%83%A8%E5%88%86-%E5%BC%80%E5%8F%91%E5%B7%A5%E5%85%B7%E5%8F%8A%E6%B5%8B%E8%AF%95%E5%B7%A5%E5%85%B7)
16 | * 包括[开发效率工具](https://github.com/Trinea/android-open-project#%E4%B8%80%E5%BC%80%E5%8F%91%E6%95%88%E7%8E%87%E5%B7%A5%E5%85%B7)、[开发自测相关](https://github.com/Trinea/android-open-project#%E4%BA%8C%E5%BC%80%E5%8F%91%E8%87%AA%E6%B5%8B%E7%9B%B8%E5%85%B3)、[测试工具](https://github.com/Trinea/android-open-project#%E4%B8%89%E6%B5%8B%E8%AF%95%E5%B7%A5%E5%85%B7)、[开发及编译环境](https://github.com/Trinea/android-open-project#%E5%9B%9B%E5%BC%80%E5%8F%91%E5%8F%8A%E7%BC%96%E8%AF%91%E7%8E%AF%E5%A2%83)、[其他](https://github.com/Trinea/android-open-project#%E4%BA%94%E5%85%B6%E4%BB%96)*
17 | [Android开源项目第五篇——优秀个人和团体篇](https://github.com/Trinea/android-open-project#%E7%AC%AC%E4%BA%94%E9%83%A8%E5%88%86)
18 | * 乐于分享并且有一些很不错的开源项目的[个人](https://github.com/Trinea/android-open-project#%E4%B8%80%E4%B8%AA%E4%BA%BA)和[组织](https://github.com/Trinea/android-open-project#%E4%BA%8C%E7%BB%84%E7%BB%87),包括JakeWharton、Chris Banes、Koushik Dutta等大牛*
19 |
20 | ## 第一部分 个性化控件(View)
21 | 主要介绍那些不错个性化的View,包括ListView、ActionBar、Menu、ViewPager、Gallery、GridView、ImageView、ProgressBar、TextView、ScrollView、TimeView、TipView、FlipView、ColorPickView、GraphView、UI Style等等。
22 | 、其他
23 | #### 一、ListView
24 | 1. android-pulltorefresh
25 | 一个强大的拉动刷新开源项目,支持各种控件下拉刷新,ListView、ViewPager、WevView、ExpandableListView、GridView、ScrollView、Horizontal ScrollView、Fragment上下左右拉动刷新,比下面johannilsson那个只支持ListView的强大的多。并且他实现的下拉刷新ListView在item不足一屏情况下也不会显示刷新提示,体验更好。
26 | 项目地址:https://github.com/chrisbanes/Android-PullToRefresh
27 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refreshview-demo.apk?raw=true
28 | APP示例:新浪微博各个页面
29 |
30 | 1. android-pulltorefresh-listview
31 | 下拉刷新ListView
32 | 项目地址:https://github.com/johannilsson/android-pulltorefresh
33 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refresh-listview-demo.apk?raw=true
34 | PS:这个被很多人使用的项目实际有不少bug,推荐使用上面的android-pulltorefresh
35 |
36 | 1. DropDownListView
37 | 下拉刷新及滑动到底部加载更多ListView
38 | 项目地址:https://github.com/Trinea/AndroidCommon
39 | Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo
40 | 文档介绍:http://www.trinea.cn/android/dropdown-to-refresh-and-bottom-load-more-listview/
41 |
42 | 1. DragSortListView
43 | 拖动排序的ListView,同时支持ListView滑动item删除,各个Item高度不一、单选、复选、CursorAdapter做为适配器、拖动背景变化等
44 | 项目地址:https://github.com/bauerca/drag-sort-listview
45 | Demo地址:https://play.google.com/store/apps/details?id=com.mobeta.android.demodslv
46 | APP示例:Wordpress Android
47 |
48 | 1. SwipeListView
49 | 支持定义ListView左右滑动事件,支持左右滑动位移,支持定义动画时间
50 | 项目地址:https://github.com/47deg/android-swipelistview
51 | Demo地址:https://play.google.com/store/apps/details?id=com.fortysevendeg.android.swipelistview
52 | APP示例:微信
53 |
54 | 1. Android-SwipeToDismiss
55 | 滑动Item消失ListView
56 | 项目地址:https://github.com/romannurik/Android-SwipeToDismiss
57 | 支持3.0以下版本见:https://github.com/JakeWharton/SwipeToDismissNOA
58 | Demo地址:https://github.com/JakeWharton/SwipeToDismissNOA/SwipeToDismissNOA.apk/qr_code
59 |
60 | 1. StickyListHeaders
61 | GroupName滑动到顶端时会固定不动直到另外一个GroupName到达顶端的ExpandListView,支持快速滑动,支持Android2.3及以上
62 | 项目地址:https://github.com/emilsjolander/StickyListHeaders
63 | APP示例:Android 4.0联系人
64 | 效果图:
65 |
66 | 1. pinned-section-listview
67 | GroupName滑动到顶端时会固定不动直到另外一个GroupName到达顶端的ExpandListView
68 | 项目地址:https://github.com/beworker/pinned-section-listview
69 | 效果图:
70 |
71 | 1. PinnedHeaderListView
72 | GroupName滑动到顶端时会固定不动直到另外一个GroupName到达顶端的ExpandListView
73 | 项目地址:https://github.com/JimiSmith/PinnedHeaderListView
74 |
75 | 1. QuickReturnHeader
76 | ListView/ScrollView的header或footer,当向下滚动时消失,向上滚动时出现
77 | 项目地址:https://github.com/ManuelPeinado/QuickReturnHeader
78 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/quick-return-header-demo.apk?raw=true
79 | APP示例:google plus
80 |
81 | 1. IndexableListView
82 | ListView右侧会显示item首字母快捷索引,点击可快速滑动到某个item
83 | 项目地址:https://github.com/woozzu/IndexableListView
84 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/indexable-listview.apk?raw=true
85 | APP示例:微信通讯录、小米联系人
86 |
87 | 1. CustomFastScrollView
88 | ListView快速滑动,同时屏幕中间PopupWindows显示滑动到的item内容或首字母
89 | 项目地址:https://github.com/nolanlawson/CustomFastScrollViewDemo
90 | 效果图:
91 |
92 | 1. Android-ScrollBarPanel
93 | ListView滑动时固定的Panel指示显示在scrollbar旁边
94 | 项目地址:https://github.com/rno/Android-ScrollBarPanel
95 | 效果展示:https://github.com/rno/Android-ScrollBarPanel/raw/master/demo_capture.png
96 |
97 | 1. SlideExpandableListView
98 | 用户点击listView item滑出固定区域,其他item的区域收缩
99 | 项目地址:https://github.com/tjerkw/Android-SlideExpandableListView
100 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/slide-expandable-listView-demo.apk?raw=true
101 |
102 | 1. JazzyListView
103 | ListView及GridView item以特殊动画效果进入屏幕,效果包括grow、cards、curl、wave、flip、fly等等
104 | 项目地址:https://github.com/twotoasters/JazzyListView
105 | Demo地址:https://play.google.com/store/apps/details?id=com.twotoasters.jazzylistview.sample
106 | 效果展示:http://lab.hakim.se/scroll-effects/
107 |
108 | 1. ListViewAnimations
109 | 带Item显示动画的ListView,动画包括底部飞入、其他方向斜飞入、下层飞入、渐变消失、滑动删除等
110 | 项目地址:https://github.com/nhaarman/ListViewAnimations
111 | Demo地址:https://play.google.com/store/apps/details?id=com.haarman.listviewanimations
112 | 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
113 |
114 | 1. DevsmartLib-Android
115 | 横向ListView
116 | 项目地址:https://github.com/dinocore1/DevsmartLib-Android
117 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/horizontal-listview-demo.apk?raw=true
118 |
119 | 1. HorizontalVariableListView
120 | 支持Item宽度不一致的ListView
121 | 项目地址:https://github.com/sephiroth74/HorizontalVariableListView
122 |
123 | 1. LinearListView
124 | 用LinearLayout实现的ListView,可解决多个ListView并且等问题。目前自己也有需要,等亲自尝试过后会再具体介绍
125 | 项目地址:https://github.com/frankiesardo/LinearListView
126 |
127 | 1. MultiChoiceAdapter
128 | 支持多选的ListView Adapter
129 | 项目地址:https://github.com/ManuelPeinado/MultiChoiceAdapter
130 | Demo地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.multichoiceadapter.demo
131 |
132 | 1. EnhancedListView
133 | 支持横向滑动滑动删除列表项以及撤销删除的ListView,该项目的前身是[SwipeToDismissUndoList](https://github.com/timroes/SwipeToDismissUndoList)
134 | 项目地址:https://github.com/timroes/EnhancedListView
135 | Demo地址:https://play.google.com/store/apps/details?id=de.timroes.android.listviewdemo&rdid=de.timroes.android.listviewdemo
136 |
137 | 1. ListBuddies
138 | 自动滚动的双列ListView ,两个ListView滚动速度不一致,有视差效果
139 | 项目地址:https://github.com/jpardogo/ListBuddies
140 | Demo地址:https://play.google.com/store/apps/details?id=com.jpardogo.android.listbuddies
141 | 效果展示:
142 |
143 |
144 | #### 二、ActionBar
145 | 1. ActionBarSherlock
146 | 为Android所有版本提供统一的ActionBar,解决4.0以下ActionBar的适配问题
147 | 项目地址:https://github.com/JakeWharton/ActionBarSherlock
148 | Demo地址:https://play.google.com/store/apps/details?id=com.actionbarsherlock.sample.demos
149 | APP示例:太多了。。现在连google都在用
150 |
151 | 1. ActionBar-PullToRefresh
152 | 下拉刷新,ActionBar出现加载中提示
153 | 项目地址:https://github.com/chrisbanes/ActionBar-PullToRefresh
154 | Demo地址:https://play.google.com/store/apps/details?id=uk.co.senab.actionbarpulltorefresh.samples.stock
155 | APP示例:Gmail,Google plus,知乎等
156 |
157 | 1. FadingActionBar
158 | ListView向下滚动逐渐显现的ActionBar
159 | 项目地址:https://github.com/ManuelPeinado/FadingActionBar
160 | Demo地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.fadingactionbar.demo
161 | APP示例:google music,知乎
162 |
163 | 1. NotBoringActionBar
164 | google music下拉收缩的ActionBar
165 | 项目地址:https://github.com/flavienlaurent/NotBoringActionBar
166 | Demo地址:http://flavienlaurent.com/blog/2013/11/20/making-your-action-bar-not-boring/
167 | APP示例:Google音乐
168 |
169 | 1. RefreshActionItem
170 | 带进度显示和刷新按钮的ActionBar
171 | 项目地址:https://github.com/ManuelPeinado/RefreshActionItem
172 | Demo地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.refreshactionitem.demo
173 | APP示例:The New York Times,DevAppsDirect.
174 |
175 | 1. GlassActionBar
176 | 类似玻璃的有一定透明度的ActionBar
177 | 项目地址:https://github.com/ManuelPeinado/GlassActionBar
178 | Demo地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.glassactionbardemo
179 | APP示例:google music
180 |
181 |
182 | #### 三、Menu
183 | 1. MenuDrawer
184 | 滑出式菜单,通过拖动屏幕边缘滑出菜单,支持屏幕上下左右划出,支持当前View处于上下层,支持Windows边缘、ListView边缘、ViewPager变化划出菜单等。
185 | 项目地址:https://github.com/SimonVT/android-menudrawer
186 | Demo地址:http://simonvt.github.io/android-menudrawer/
187 | APP示例:Gmail、Google Music等大部分google app
188 |
189 | 1. SlidingMenu
190 | 滑出式菜单,通过拖动屏幕边缘滑出菜单,支持屏幕左右划出,支持菜单zoom、scale、slide up三种动画样式出现。
191 | 项目地址:https://github.com/jfeinstein10/SlidingMenu
192 | Demo地址:https://play.google.com/store/apps/details?id=com.slidingmenu.example
193 | 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
194 | MenuDrawer和SlidingMenu比较:SlidingMenu支持菜单动画样式出现,MenuDrawer支持菜单view处于内容的上下层
195 |
196 | 1. ArcMenu
197 | 支持类似Path的左下角动画旋转菜单及横向划出菜单、圆心弹出菜单
198 | 项目地址:https://github.com/daCapricorn/ArcMenu
199 | APP示例:Path
200 | 效果图:
201 | https://dl.dropboxusercontent.com/u/11369687/preview1.png
202 | https://dl.dropboxusercontent.com/u/11369687/raymenu.png
203 |
204 | 1. android-satellite-menu
205 | 类似Path的左下角动画旋转菜单
206 | 项目地址:https://github.com/siyamed/android-satellite-menu
207 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/satellite-menu-demo.apk?raw=true
208 | APP示例:Path
209 |
210 | 1. radial-menu-widget
211 | 圆形菜单,支持二级菜单
212 | 项目地址:https://code.google.com/p/radial-menu-widget/
213 | 效果图:http://farm8.staticflickr.com/7377/11621125154_d1773c2dcc_o.jpg
214 |
215 | 1. Android Wheel Menu
216 | 圆形旋转选取菜单
217 | 项目地址:https://github.com/anupcowkur/Android-Wheel-Menu
218 | 效果图:
219 |
220 | 1. FoldingNavigationDrawer
221 | 滑动并以折叠方式打开菜单
222 | 项目地址:https://github.com/tibi1712/FoldingNavigationDrawer-Android
223 | Demo地址:https://play.google.com/store/apps/details?id=com.ptr.folding.sample
224 | 效果图:
225 |
226 | 1. AndroidResideMenu
227 | 仿 Dribbble 的边栏菜单
228 | 项目地址:https://github.com/SpecialCyCi/AndroidResideMenu
229 | 效果图:
230 |
231 |
232 | #### 四、ViewPager 、Gallery
233 | 1. Android-ViewPagerIndicator
234 | 配合ViewPager使用的Indicator,支持各种位置和样式
235 | 项目地址:https://github.com/JakeWharton/Android-ViewPagerIndicator
236 | Demo地址:https://play.google.com/store/apps/details?id=com.viewpagerindicator.sample
237 | APP示例:太多了。。
238 |
239 | 1. JazzyViewPager
240 | 支持Fragment切换动画的ViewPager,动画包括转盘、淡入淡出、翻页、层叠、旋转、方块、翻转、放大缩小等
241 | 项目地址:https://github.com/jfeinstein10/JazzyViewPager
242 | Demo地址:https://github.com/jfeinstein10/JazzyViewPager/blob/master/JazzyViewPager.apk?raw=true
243 | 效果类似桌面左右切换的各种效果,不过桌面并非用ViewPager实现而已
244 |
245 | 1. Android-DirectionalViewPager
246 | 支持横向和纵向(垂直)的ViewPager
247 | 项目地址:https://github.com/JakeWharton/Android-DirectionalViewPager
248 | Demo地址:https://market.android.com/details?id=com.directionalviewpager.sample
249 |
250 | 1. android-pulltorefresh
251 | 支持下拉刷新的ViewPager
252 | 项目地址:https://github.com/chrisbanes/Android-PullToRefresh
253 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refreshview-demo.apk?raw=true
254 | APP示例:新浪微博各个页面
255 |
256 | 1. FancyCoverFlow
257 | 支持Item切换动画效果的类似Gallery View
258 | 项目地址:https://github.com/davidschreiber/FancyCoverFlow
259 | Demo地址:https://play.google.com/store/apps/details?id=at.technikum.mti.fancycoverflow.samples
260 | 效果图:
261 |
262 | 1. AndroidTouchGallery
263 | 支持双击或双指缩放的Gallery(用ViewPager实现),相比下面的PhotoView,在被放大后依然能滑到下一个item,并且支持直接从url和文件中获取图片,
264 | 项目地址:https://github.com/Dreddik/AndroidTouchGallery
265 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/touch-gallery-demo.apk?raw=true
266 | APP示例:类似微信中查看聊天记录图片时可双击放大,并且放大情况下能正常左右滑动到前后图片
267 |
268 | 1. Android Auto Scroll ViewPager
269 | Android自动滚动 轮播循环的ViewPager
270 | 项目地址:https://github.com/Trinea/android-auto-scroll-view-pager
271 | Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo
272 | 文档介绍:http://www.trinea.cn/android/auto-scroll-view-pager/
273 |
274 | 1. Salvage view
275 | 带View缓存的Viewpager PagerAdapter,很方便使用
276 | 项目地址:https://github.com/JakeWharton/salvage
277 |
278 | 1. Android PagerSlidingTabStrip
279 | 配合ViewPager使用的Indicator,支持ViewPager Scroll时Indicator联动
280 | 项目地址:https://github.com/astuetz/PagerSlidingTabStrip
281 | Demo地址:https://play.google.com/store/apps/details?id=com.astuetz.viewpager.extensions.sample
282 |
283 | 1. ViewPager3D
284 | ViewPager3D效果
285 | 项目地址:https://github.com/inovex/ViewPager3D
286 |
287 |
288 | 1. AnimaTabsview
289 | 仿网易云音乐标签切换的动画,带透明小三角
290 | 项目地址: https://github.com/wuyexiong/transparent-over-animtabsview
291 | 在线演示:http://v.youku.com/v_show/id_XNzA4MjY5NjA0.html
292 |
293 | #### 五、GridView
294 | 1. StaggeredGridView
295 | 允许非对齐行的GridView,类似Pinterest的瀑布流,并且跟ListView一样自带View缓存,继承自ViewGroup
296 | 项目地址:https://github.com/maurycyw/StaggeredGridView
297 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/staggered-gridview-demo.apk?raw=true
298 | APP示例:Pinterest等
299 |
300 | 1. AndroidStaggeredGrid
301 | 允许非对齐行的GridView,类似Pinterest的瀑布流,继承自AbsListView
302 | 项目地址:https://github.com/etsy/AndroidStaggeredGrid
303 | APP示例:Pinterest等
304 |
305 | 1. PinterestLikeAdapterView
306 | 允许非对齐行的GridView,类似Pinterest的瀑布流,允许下拉刷新
307 | 项目地址:https://github.com/GDG-Korea/PinterestLikeAdapterView
308 | APP示例:Pinterest等
309 |
310 | 1. DraggableGridView
311 | Item可拖动交换位置的GridView,实际是自己继承ViewGroup实现,类似桌面的单屏效果,可屏幕自动上下滚动进行Item移动交换,多屏效果见下面PagedDragDropGrid
312 | 项目地址:https://github.com/thquinn/DraggableGridView
313 | Demo地址:https://github.com/thquinn/DraggableGridView/blob/master/bin/DraggableGridViewSample.apk?raw=true
314 |
315 | 1. StickyGridHeaders
316 | GroupName滑动到顶端时会固定不动直到另外一个GroupName到达顶端的GridView
317 | 项目地址:https://github.com/TonicArtos/StickyGridHeaders
318 | 效果图:
319 |
320 | 1. PagedDragDropGrid
321 | Item可拖动交换位置、拖动删除的自定义控件,实际是自己继承ViewGroup实现,类似桌面的多屏效果,可拖动到屏幕边缘,屏幕自动左右滚动进行Item移动交换,可拖动进行删除,单屏效果见上面DraggableGridView
322 | 项目地址:https://github.com/mrKlar/PagedDragDropGrid
323 | 在线演示:http://youtu.be/FYTSRfthSuQ
324 |
325 | 1. Android-DraggableGridViewPager
326 | Item可拖动交换位置的GridView,实际是自己继承ViewGroup实现,类似桌面的多屏效果,可屏幕自动左右滚动进行Item移动交换,单屏效果见上面DraggableGridView
327 | 项目地址:https://github.com/zzhouj/Android-DraggableGridViewPager
328 | Demo地址:https://github.com/Trinea/trinea-download/blob/master/draggable-grid-viewpager-demo.apk?raw=true
329 |
330 |
331 | #### 六、ImageView
332 | 1. PhotoView
333 | 支持双击或双指缩放的ImageView,在ViewPager等Scrolling view中正常使用,相比上面的AndroidTouchGallery,不仅支持ViewPager,同时支持单个ImageView
334 | 项目地址:https://github.com/chrisbanes/PhotoView
335 | Demo地址:https://play.google.com/store/apps/details?id=uk.co.senab.photoview.sample
336 | APP示例:photup
337 |
338 | 1. android-gif-drawable
339 | 支持gif显示的view,用jni实现的,编译生成so库后直接xml定义view即可,而且本身不依赖于其他开源项目所以相对下面的ImageViewEx简单的多
340 | 项目地址:https://github.com/koral--/android-gif-drawable
341 |
342 | 1. ImageViewEx
343 | 支持Gif显示的ImageView
344 | 项目地址:https://github.com/frapontillo/ImageViewEx
345 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/imageviewex-demo.apk?raw=true
346 | 依赖很多,编译过程很繁琐!|_|!
347 |
348 | 1. RoundedImageView
349 | 带圆角的ImageView
350 | 项目地址:https://github.com/vinc3m1/RoundedImageView
351 | 效果图:
352 |
353 | 1. ColorArt
354 | 根据图片的均色设置背景色显示文字和图片,类似itune11中效果
355 | 项目地址:https://github.com/MichaelEvans/ColorArt
356 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/color-art-demo.apk?raw=true
357 |
358 | 1. CircleImageView
359 | 圆形的ImageView
360 | 项目地址:https://github.com/hdodenhof/CircleImageView
361 | 效果图:
362 |
363 | 1. ImageViewZoom
364 | 支持放大和平移的ImageView
365 | 项目地址:https://github.com/sephiroth74/ImageViewZoom
366 | APP示例:https://play.google.com/store/apps/details?id=com.aviary.android.feather
367 |
368 | 1. KenBurnsView
369 | 实现Ken Burns effect效果,达到身临其境效果的ImageView
370 | 项目地址:https://github.com/flavioarfaria/KenBurnsView
371 |
372 | 1. CustomShapeImageView
373 | 各种形状的ImageView, 相比上面的圆形ImageView,多了更多形状
374 | 项目地址:https://github.com/MostafaGazar/CustomShapeImageView
375 | 效果图:
376 |
377 |
378 | #### 七、ProgressBar
379 | 1. SmoothProgressBar
380 | 水平进度条
381 | 项目地址:https://github.com/castorflex/SmoothProgressBar
382 | Demo地址:https://play.google.com/store/apps/details?id=fr.castorflex.android.smoothprogressbar.sample
383 |
384 | 1. ProgressWheel
385 | 支持进度显示的圆形ProgressBar
386 | 项目地址:https://github.com/Todd-Davies/ProgressWheel
387 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/progress-wheel-demo.apk?raw=true
388 |
389 | 1. android-square-progressbar
390 | 在图片周围显示进度
391 | 项目地址:https://github.com/mrwonderman/android-square-progressbar
392 | Demo地址:https://play.google.com/store/apps/details?id=net.yscs.android.square_progressbar_example
393 | APP示例:square
394 | 效果图:
395 |
396 | 1. HoloCircularProgressBar
397 | Android4.1 时钟App样式
398 | 项目地址:https://github.com/passsy/android-HoloCircularProgressBar
399 | APP示例:Android4.1时钟App
400 | 效果图:
401 |
402 | 1. ProgressButton
403 | 通过图钉的不同状态显示进度
404 | 项目地址:https://github.com/f2prateek/progressbutton
405 | 文档介绍:http://f2prateek.com/progressbutton/
406 | 效果图:
407 |
408 | 1. GoogleProgressBar
409 | 类似google 多个圆形卡片翻转的progressBar
410 | 项目地址:https://github.com/jpardogo/GoogleProgressBar
411 | 效果图:
412 |
413 | 1. TH-ProgressButton
414 | 带圆形进度显示的按钮
415 | 项目地址;https://github.com/torryharris/TH-ProgressButton
416 | 效果图:   
417 |
418 | 1. NumberProgressBar
419 | 带数字进度的进度条
420 | 项目地址:https://github.com/daimajia/NumberProgressBar
421 | 效果图:
422 |
423 | 1. CircularProgressDrawable
424 | 带圆形进度显示的进度条
425 | 项目地址:https://github.com/Sefford/CircularProgressDrawable
426 | 效果图:
427 |
428 | 1. circular-progress-button
429 | 带进度显示的Button
430 | 项目地址:https://github.com/dmytrodanylyk/circular-progress-button
431 | 效果图:
432 |
433 |
434 | #### 八、TextView
435 | 包括TextView及所有继承自TextView控件,如EditText、Button、RadioButton
436 |
437 | 1. android-flowtextview
438 | 文字自动环绕其他View的Layout
439 | 项目地址:https://code.google.com/p/android-flowtextview/
440 | 效果图:http://i949.photobucket.com/albums/ad332/vostroman1500/1.png
441 |
442 | 1. Android Form EditText
443 | 验证输入合法性的编辑框,支持输入、英文、ip、url等多种正则验证
444 | 项目地址:https://github.com/vekexasia/android-edittext-validator
445 | Demo地址:https://play.google.com/store/apps/details?id=com.andreabaccega.edittextformexample
446 |
447 | 1. Emojicon
448 | 支持emojis的TextView和EditText
449 | 项目地址:https://github.com/rockerhieu/emojicon
450 | 文档地址:http://rockerhieu.com/emojicon/
451 |
452 | 1. android-circlebutton
453 | Android圆形按钮,实际实现是继承自ImageView
454 | 项目地址:https://github.com/markushi/android-circlebutton
455 | Demo地址:https://github.com/markushi/android-circlebutton/blob/master/example/example.apk
456 |
457 | 1. Segmented Radio Buttons for Android
458 | iOS’s segmented controls的实现
459 | 项目地址:https://github.com/vinc3m1/android-segmentedradiobutton
460 | Demo地址:https://github.com/thquinn/DraggableGridView/blob/master/bin/DraggableGridViewSample.apk?raw=true
461 | 效果图:
462 |
463 | 1. Chips EditText Library
464 | 支持国家名字联想从而选择显示该国国旗的EditText,实际就是通过SpannableStringBuilder实现
465 | 项目地址:https://github.com/kpbird/chips-edittext-library
466 | Demo地址:https://github.com/kpbird/chips-edittext-library/tree/master/ChipsEditTextDemo/bin
467 |
468 | 1. AutoFitTextView
469 | 可固定边界内容字体大小自适应的TextView
470 | 项目地址:https://github.com/grantland/android-autofittextview
471 |
472 | 1. Shimmer for Android
473 | 文字发淡光的TextView
474 | 项目地址:https://github.com/RomainPiel/Shimmer-android
475 |
476 | 1. Titanic
477 | 可以显示水位上升下降(不知道该怎么描述 囧)的TextView
478 | 项目地址:https://github.com/RomainPiel/Titanic
479 | 效果图:
480 |
481 | 1. android-iconify
482 | 提供带Icon的TextView,Menu,Button等
483 | 项目地址:https://github.com/JoanZapata/android-iconify
484 |
485 | 1. Calligraphy
486 | 让我们在android开发中使用自定义字体变得更加简单
487 | 项目地址 :https://github.com/chrisjenx/Calligraphy
488 | 效果图:
489 |
490 | 1. CreditsRoll
491 | 类似星球大战字幕效果的TextView
492 | 项目地址:https://github.com/frakbot/CreditsRoll
493 |
494 | 1. android-process-buton
495 | 带加载或提交进度的Button
496 | 项目地址:https://github.com/dmytrodanylyk/android-process-buton
497 |
498 | 1. FButton
499 | 扁平化的Button
500 | 项目地址:https://github.com/hoang8f/android-flat-button
501 | Demo地址:https://play.google.com/store/apps/details?id=info.hoang8f.fbutton.demo
502 |
503 |
504 | #### 九、ScrollView
505 | 1. Discrollview
506 | 支持滚动时Item淡入淡出,平移,缩放效果的ScrollView
507 | 项目地址:https://github.com/flavienlaurent/discrollview
508 | Demo地址:https://github.com/flavienlaurent/discrollview/raw/master/sample.apk
509 |
510 | 1. PullScrollView
511 | 仿照新浪微博Android客户端个人中心的ScrollView,下拉背景伸缩回弹效果。
512 | 项目地址:https://github.com/MarkMjw/PullScrollView
513 | 效果图:
514 |
515 | 1. ParallaxScrollView
516 | 支持视差滚动的ScrollView ,背景图片的滚动速度小于ScrollView中子控件的滚动速度
517 | 项目地址:https://github.com/chrisjenx/ParallaxScrollView
518 | Demo地址:http://cloud.github.com/downloads/chrisjenx/ParallaxScrollView/ParallaxScrollViewDemo-v1.0.5.apk
519 |
520 |
521 | #### 十、TimeView
522 | 包括TimePicker、DatePicker、CalendarView、Clock等时间相关控件
523 |
524 | 1. android-times-square
525 | Android日历时间部件,支持选取单个日期,多个日期,及日期区间段和对话框形式显示
526 | 项目地址:https://github.com/square/android-times-square
527 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/times-square-demo.apk?raw=true
528 |
529 | 1. android-calendar-card
530 | 日历
531 | 项目地址:https://github.com/kenumir/android-calendar-card
532 | Demo地址:https://play.google.com/store/apps/details?id=com.wt.calendarcardsample
533 | 效果图:
534 |
535 | 1. AndroidWheel
536 | Android Wheel支持城市、多种日期时间、密码、图片
537 | 项目地址:https://code.google.com/p/android-wheel/
538 | 效果图:
539 |
540 | 1. GoogleDateTimePickers
541 | 时间选择部件
542 | 项目地址:https://github.com/Mirkoddd/GoogleDateTimePickers
543 | 文档地址:https://play.google.com/store/apps/details?id=com.mirko.sample&hl=it
544 |
545 |
546 | #### 十一、TipView
547 | 包括Toast、角标、UndoBar等提示性控件
548 |
549 | 1. Crouton
550 | 丰富样式的Toast,允许alert、comfirm、info样式及点击消失样式,允许设置Toast显示时间,允许自定义View。 本文32. SuperToasts为其扩展版
551 | 项目地址:https://github.com/keyboardsurfer/Crouton
552 | Demo地址:http://play.google.com/store/apps/details?id=de.keyboardsurfer.app.demo.crouton
553 |
554 | 1. supertooltips
555 | 带动画效果的Tips显示
556 | 项目地址:https://github.com/nhaarman/supertooltips
557 | Demo地址:https://play.google.com/store/apps/details?id=com.haarman.supertooltips
558 |
559 | 1. Android ViewBadger
560 | 为其他View添加角标等
561 | 项目地址:https://github.com/jgilfelt/android-viewbadger
562 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/android-viewbadger.apk?raw=true
563 | 效果图:
564 |
565 |
566 | 1. SuperToasts
567 | 更丰富样式的toast,支持Button、Progress、Horizontal Progress样式、支持进入动画、支持撤销及其动画设置
568 | 项目地址:https://github.com/JohnPersano/SuperToasts
569 | Demo地址:https://play.google.com/store/apps/details?id=com.supertoastsdemo
570 | 效果图:
571 |
572 | 1. UndoBar
573 | 屏幕底部显示取消或是确认的PopupWindows
574 | 项目地址:https://github.com/soarcn/UndoBar
575 | 效果图:
576 |
577 | 1. UndoBar
578 | 屏幕底部显示取消或是确认某操作
579 | 项目地址:https://github.com/jenzz/Android-UndoBar
580 | 效果图:
581 |
582 |
583 | #### 十二、FlipView
584 | 1. android-flip
585 | 类似Flipboard翻转动画的实现
586 | 项目地址:https://github.com/openaphid/android-flip
587 | Demo地址:https://github.com/openaphid/android-flip/blob/master/FlipView/Demo/APK/Aphid-FlipView-Demo.apk?raw=true
588 | APP示例:flipboard
589 |
590 | 1. FlipImageView
591 | 支持x、y、z及动画选择的翻转动画的实现
592 | 项目地址:https://github.com/castorflex/FlipImageView
593 | Demo地址:https://play.google.com/store/apps/details?id=fr.castorflex.android.flipimageview
594 |
595 | 1. FoldableLayout
596 | Flip翻转效果的ListView,目前还不支持ListView缓存
597 | 项目地址:https://github.com/alexvasilkov/FoldableLayout
598 | Demo地址:http://play.google.com/store/apps/details?id=com.alexvasilkov.foldablelayout.sample
599 |
600 |
601 | #### 十三、ColorPickView
602 | 1. ColorPickerView
603 | 颜色选择器,支持PopupWindows或新的Activity中打开
604 | 项目地址:https://code.google.com/p/color-picker-view/
605 | 效果图:
606 |
607 | 1. HoloColorPicker
608 | 颜色选择器
609 | 项目地址:https://github.com/LarsWerkman/HoloColorPicker
610 | Demo地址:https://docs.google.com/file/d/0BwclyDTlLrdXRzVnTGJvTlRfU2s/edit
611 |
612 | 1. ColorPickerPreference
613 | 颜色选择器
614 | 项目地址:https://github.com/attenzione/android-ColorPickerPreference
615 | 效果图:
616 |
617 |
618 | #### 十四、GraphView
619 | 1. achartengine
620 | 强大的图表绘制工具,支持折线图、面积图、散点图、时间图、柱状图、条图、饼图、气泡图、圆环图、范围(高至低)条形图、拨号图/表、立方线图及各种图的结合
621 | 项目地址:https://code.google.com/p/achartengine/
622 | 官方网站:http://www.achartengine.org/
623 | 效果图:
624 | http://www.achartengine.org/dimages/sales_line_and_area_chart.png
625 | http://www.achartengine.org/dimages/temperature_range_chart.png
626 | http://www.achartengine.org/dimages/combined_chart.png
627 | http://www.achartengine.org/dimages/budget_chart.png
628 | APP示例:Wordpress Android,Google Analytics
629 |
630 | 1. GraphView
631 | 绘制图表和曲线图的View,可用于Android上的曲形图、柱状图、波浪图展示
632 | 项目地址:https://github.com/jjoe64/GraphView
633 | Demo地址:https://play.google.com/store/apps/details?id=com.sothree.umano
634 | Demo项目:https://github.com/jjoe64/GraphView-Demos
635 | APP示例:Wordpress Android,Google Analytics
636 |
637 | 1. HoloGraphLibrary
638 | 绘制现状图、柱状图、饼状图
639 | 项目地址:https://bitbucket.org/danielnadeau/holographlibrary/src
640 | 文档介绍:https://bitbucket.org/danielnadeau/holographlibrary/wiki/Home
641 |
642 |
643 | #### 十五、UI Style
644 | 不同样式的系统UI风格,如IOS、Bootstrap风格
645 |
646 | 1. UITableView
647 | ios风格控件,包括Button、ListView、TableView
648 | 项目地址:https://github.com/thiagolocatelli/android-uitableview
649 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/ui-tableview-demo.apk?raw=true
650 |
651 | 1. ATableView
652 | ios风格控件
653 | 项目地址:https://github.com/dmacosta/ATableView
654 | Demo地址:https://play.google.com/store/apps/details?id=com.nakardo.atableview.demo
655 |
656 | 1. Cards-UI
657 | 卡片式View,支持单个卡片,item为卡片的ListView
658 | 项目地址:https://github.com/afollestad/Cards-UI
659 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/cards-ui-demo.apk?raw=true
660 |
661 | 1. cardslib
662 | 卡片式View,支持单个卡片,item为卡片的ListView和GridView
663 | 项目地址:https://github.com/gabrielemariotti/cardslib
664 | Demo地址:https://play.google.com/store/apps/details?id=it.gmariotti.cardslib.demo
665 |
666 | 1. Android-Bootstrap
667 | Bootstrap 风格的按钮
668 | 项目地址: https://github.com/Bearded-Hen/Android-Bootstrap
669 | 效果图:
670 |
671 |
672 | #### 十六、其他
673 | 1. SwipeBackLayout
674 | 左右或向上滑动返回的Activity
675 | 项目地址:https://github.com/Issacw0ng/SwipeBackLayout
676 | Demo地址:https://play.google.com/store/apps/details?id=me.imid.swipebacklayout.demo
677 | APP示例:知乎
678 |
679 | 1. android-styled-dialogs
680 | 可自定义样式的dialog,默认与Holo主题样式一致,在Android2.2以上同一样式
681 | 项目地址:https://github.com/inmite/android-styled-dialogs
682 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/styled-dialogs-demo.apk?raw=true
683 |
684 | 1. Android Sliding Up Panel
685 | 可拖动的View,能在当前Activity上扶起一个可拖动的Panel
686 | 项目地址:https://github.com/umano/AndroidSlidingUpPanel
687 | Demo地址:https://play.google.com/store/apps/details?id=com.sothree.umano
688 | APP示例:Google Music精简播放栏
689 |
690 | 1. AndroidWheel
691 | Android Wheel支持城市、多种日期时间、密码、图片
692 | 项目地址:https://code.google.com/p/android-wheel/
693 | 效果图:
694 |
695 | 1. TableFixHeaders
696 | 第一列固定的Table
697 | 项目地址:https://github.com/InQBarna/TableFixHeaders
698 | Demo地址:http://bit.ly/13buAIq
699 |
700 | 1. Inscription
701 | 可用于展示应用change和new feature信息
702 | 项目地址:https://github.com/MartinvanZ/Inscription
703 |
704 | 1. ActivityTransition
705 | Activity切换动画,包括渐变、flip、某个位置进入等等
706 | 项目地址:https://github.com/ophilbert/ActivityTransition
707 | 使用介绍:https://github.com/jfeinstein10/JazzyViewPager/blob/master/JazzyViewPager.apk?raw=true
708 | 效果图:类似桌面左右切换的各种效果,不过桌面并非用ViewPager实现而已
709 |
710 | 1. GlowPadBackport
711 | 将Android4.2的锁屏界面解锁扩展到Android1.6及1.6+
712 | 项目地址:https://github.com/rock3r/GlowPadBackport
713 | Demo地址:https://play.google.com/store/apps/details?id=net.sebastianopoggi.samples.ui.GlowPadSample
714 | 效果图:
715 |
716 | 1. GlowPadView
717 | Android4锁屏界面解锁
718 | 项目地址:https://github.com/nadavfima/GlowPadView
719 | 效果图:https://raw.github.com/nadavfima/GlowPadView/master/example.png
720 |
721 | 1. android-lockpattern
722 | Android的图案密码解锁
723 | 项目地址:https://code.google.com/p/android-lockpattern/
724 | Demo地址:https://play.google.com/store/apps/details?id=group.pals.android.lib.ui.lockpattern.demo
725 | 使用介绍:https://code.google.com/p/android-lockpattern/wiki/QuickUse
726 | APP示例:Android开机的图案密码解锁,支付宝的密码解锁
727 |
728 | 1. RangeBar
729 | 类似于SeekBar,不同的是可以选择一个范围内的值而不是单个值
730 | 项目地址:https://github.com/edmodo/range-bar
731 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/range-bar-demo.apk?raw=true
732 | 效果图: 
733 |
734 | 1. ChromeView
735 | 利用Chromium实现的WebView,解决各个Android版本WebView不同的问题,同时利用最新Chrome代码
736 | 项目地址:https://github.com/pwnall/chromeview
737 |
738 | 1. Android Slider Preference Library
739 | 可添加到设置中的基于对话框的RankBar小部件
740 | 项目地址:https://github.com/jayschwa/AndroidSliderPreference
741 |
742 | 1. ShowcaseView library
743 | 用于高亮显示应用程序的特定部分,从而突出突出重点
744 | 项目地址:https://github.com/amlcurran/ShowcaseView
745 |
746 | 1. android-segmented-control
747 | Android上的Segmented Controls,相当于RadioButton组
748 | 项目地址:https://github.com/hoang8f/android-segmented-control
749 |
750 | 1. Swipeable Cards
751 | 类似Tinder的卡片效果,可以加载图片并动画效果展示,向左滑动表示喜欢,向右表示不喜欢
752 | 项目地址:https://github.com/kikoso/Swipeable-Cards
753 | Demo地址:https://play.google.com/store/apps/details?id=info.hoang8f.fbutton.demo
754 |
755 | 1. EdgeEffectOverride
756 | 改变ScrollView, ListView, ExpandableListView, GridView, ViewPager等滚动控件滚动到边缘的颜色效果
757 | 项目地址:https://github.com/AndroidAlliance/EdgeEffectOverride
758 |
759 |
760 | ## 第二部分 工具库
761 | 主要包括那些不错的开发库,包括依赖注入框架、图片缓存、网络相关、数据库ORM建模、Android公共库、Android 高版本向低版本兼容、多媒体相关及其他。
762 | #### 一、依赖注入DI
763 | 通过依赖注入减少View、服务、资源简化初始化,事件绑定等重复繁琐工作
764 |
765 | 1. AndroidAnnotations(Code Diet)
766 | android快速开发框架
767 | 项目地址:https://github.com/excilys/androidannotations
768 | 文档介绍:https://github.com/excilys/androidannotations/wiki
769 | 官方网站:http://androidannotations.org/
770 | 特点:(1) 依赖注入:包括view,extras,系统服务,资源等等
771 | (2) 简单的线程模型,通过annotation表示方法运行在ui线程还是后台线程
772 | (3) 事件绑定:通过annotation表示view的响应事件,不用在写内部类
773 | (4) REST客户端:定义客户端接口,自动生成REST请求的实现
774 | (5) 没有你想象的复杂:AndroidAnnotations只是在在编译时生成相应子类
775 | (6) 不影响应用性能:仅50kb,在编译时完成,不会对运行时有性能影响。
776 | PS:与roboguice的比较:roboguice通过运行时读取annotations进行反射,所以可能影响应用性能,而AndroidAnnotations在编译时生成子类,所以对性能没有影响
777 |
778 | 1. roboguice
779 | 帮你处理了很多代码异常,利用annotation使得更少的代码完成项目
780 | 项目地址:https://github.com/roboguice/roboguice
781 | 文档介绍:https://github.com/roboguice/roboguice/wiki
782 |
783 | 1. butterknife
784 | 利用annotation帮你快速完成View的初始化,减少代码
785 | 项目地址:https://github.com/JakeWharton/butterknife
786 | 文档介绍:http://jakewharton.github.io/butterknife/
787 |
788 | 1. Dagger
789 | 依赖注入,适用于Android和Java
790 | 项目地址:https://github.com/square/dagger
791 | 文档介绍:http://square.github.io/dagger/
792 |
793 |
794 | #### 二、图片缓存
795 | 1. Android-Universal-Image-Loader
796 | 图片缓存,目前使用最广泛的图片缓存,支持主流图片缓存的绝大多数特性。
797 | 项目地址:https://github.com/nostra13/Android-Universal-Image-Loader
798 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/universal-imageloader-demo.apk?raw=true
799 | 文档介绍:http://www.intexsoft.com/blog/item/74-universal-image-loader-part-3.html
800 |
801 | 1. picasso
802 | square开源的图片缓存
803 | 项目地址:https://github.com/square/picasso
804 | 文档介绍:http://square.github.io/picasso/
805 | 特点:(1)可以自动检测adapter的重用并取消之前的下载
806 | (2)图片变换
807 | (3)可以加载本地资源
808 | (4)可以设置占位资源
809 | (5)支持debug模式
810 |
811 | 1. ImageCache
812 | 图片缓存,包含内存和Sdcard缓存
813 | 项目地址:https://github.com/Trinea/AndroidCommon
814 | Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo
815 | 文档介绍:http://www.trinea.cn/android/android-imagecache/
816 | 特点:(1)支持预取新图片,支持等待队列
817 | (2)包含二级缓存,可自定义文件名保存规则
818 | (3)可选择多种缓存算法(FIFO、LIFO、LRU、MRU、LFU、MFU等13种)或自定义缓存算法
819 | (4)可方便的保存及初始化恢复数据
820 | (5)支持不同类型网络处理
821 | (6)可根据系统配置初始化缓存等
822 |
823 |
824 | #### 三、网络相关
825 | 1. Asynchronous Http Client for Android
826 | Android异步Http请求
827 | 项目地址:https://github.com/loopj/android-async-http
828 | 文档介绍:http://loopj.com/android-async-http/
829 | 特点:(1) 在匿名回调中处理请求结果
830 | (2) 在UI线程外进行http请求
831 | (3) 文件断点上传
832 | (4) 智能重试
833 | (5) 默认gzip压缩
834 | (6) 支持解析成Json格式
835 | (7) 可将Cookies持久化到SharedPreferences
836 |
837 | 1. android-query
838 | 异步加载,更少代码完成Android加载
839 | 项目地址:https://github.com/androidquery/androidquery 或 https://code.google.com/p/android-query/
840 | 文档介绍:https://code.google.com/p/android-query/#Why_AQuery?
841 | Demo地址:https://play.google.com/store/apps/details?id=com.androidquery
842 | 特点:https://code.google.com/p/android-query/#Why_AQuery?
843 |
844 | 1. Async Http Client
845 | Java异步Http请求
846 | 项目地址:https://github.com/AsyncHttpClient/async-http-client
847 | 文档介绍:http://sonatype.github.io/async-http-client/
848 |
849 | 1. Ion
850 | 支持图片、json、http post等异步请求
851 | 项目地址:https://github.com/koush/ion
852 | 文档介绍:https://github.com/koush/ion#more-examples
853 |
854 | 1. HttpCache
855 | Http缓存
856 | 项目地址:https://github.com/Trinea/AndroidCommon
857 | Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo
858 | 文档介绍:http://www.trinea.cn/android/android-http-cache
859 | 特点是:(1) 根据cache-control、expires缓存http请求
860 | (2) 支持同步、异步Http请求
861 | (3) 在匿名回调中处理请求结果
862 | (4) 在UI线程外进行http请求
863 | (5) 默认gzip压缩
864 |
865 | 1. Http Request
866 | 项目地址:https://github.com/kevinsawicki/http-request
867 | 文档介绍:https://github.com/kevinsawicki/http-request#examples
868 |
869 | 1. okhttp
870 | square开源的http工具类
871 | 项目地址:https://github.com/square/okhttp
872 | 文档介绍:http://square.github.io/okhttp/
873 | 特点:(1) 支持SPDY( http://zh.wikipedia.org/wiki/SPDY )协议。SPDY协议是Google开发的基于传输控制协议的应用层协议,通过压缩,多路复用(一个TCP链接传送网页和图片等资源)和优先级来缩短加载时间。
874 | (2) 如果SPDY不可用,利用连接池减少请求延迟
875 | (3) Gzip压缩
876 | (4) Response缓存减少不必要的请求
877 |
878 | 1. Retrofit
879 | RESTFUL API设计
880 | 项目地址:https://github.com/square/retrofit
881 | 文档介绍:http://square.github.io/retrofit/
882 |
883 | 1. RoboSpice
884 | Android异步网络请求工具,支持缓存、REST等等
885 | 项目地址:https://github.com/stephanenicolas/robospice
886 | Demo地址:https://github.com/stephanenicolas/RoboDemo/downloads
887 |
888 |
889 | #### 四、数据库 orm工具包
890 | orm的db工具类,简化建表、查询、更新、插入、事务、索引的操作
891 |
892 | 1. greenDAO
893 | Android Sqlite orm的db工具类
894 | 项目地址:https://github.com/greenrobot/greenDAO
895 | 文档介绍:http://greendao-orm.com/documentation/
896 | 官方网站:http://greendao-orm.com/
897 | 特点:(1) 性能佳
898 | (2) 简单易用的API
899 | (3) 内存小好小
900 | (4) 库大小小
901 |
902 | 1. ActiveAndroid
903 | Android Sqlite orm的db工具类
904 | 项目地址:https://github.com/pardom/ActiveAndroid
905 | 文档介绍:https://github.com/pardom/ActiveAndroid/wiki/_pages
906 |
907 | 1. Sprinkles
908 | Android Sqlite orm的db工具类
909 | 项目地址:https://github.com/emilsjolander/sprinkles
910 | 文档介绍:http://emilsjolander.github.io/blog/2013/12/18/android-with-sprinkles/
911 | 特点:比较显著的特点就是配合https://github.com/square/retrofit 能保存从服务器获取的数据
912 |
913 | 1. ormlite-android
914 | 项目地址:https://github.com/j256/ormlite-android
915 | 文档介绍:http://ormlite.com/sqlite_java_android_orm.shtml
916 |
917 | 1. Schematic
918 | 根据SQLite生成ContentProvider
919 | 项目地址:https://github.com/SimonVT/schematic
920 |
921 |
922 | #### 五、Android公共库
923 | 1. Guava
924 | Google的基于java1.6的类库集合的扩展项目,包括collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O等等. 这些高质量的API可以使你的JAVa代码更加优雅,更加简洁
925 | 项目地址:https://code.google.com/p/guava-libraries/
926 | 文档介绍:https://code.google.com/p/guava-libraries/wiki/GuavaExplained
927 |
928 | 1. Volley
929 | Google提供的网络通信库,使得网络请求更简单、更快速
930 | 项目地址:https://android.googlesource.com/platform/frameworks/volley
931 | Github地址:https://github.com/mcxiaoke/android-volley
932 | 文档地址:http://commondatastorage.googleapis.com/io-2013/presentations/110%20-%20Volley-%20Easy,%20Fast%20Networking%20for%20Android.pdf
933 |
934 | 1. AndroidCommon
935 | Android公共库
936 | 项目地址:https://github.com/Trinea/AndroidCommon
937 | Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo
938 | 文档介绍:http://www.trinea.cn/android/android-common-lib/
939 | 包括:(1)缓存(图片缓存、预取缓存、网络缓存)
940 | (2) 公共View(下拉及底部加载更多ListView、底部加载更多ScrollView、滑动一页Gallery)
941 | (3) Android常用工具类(网络、下载、Android资源操作、shell、文件、Json、随机数、Collection等等)
942 |
943 | 1. shipfaster
944 | 整合了Dagger Otto Retrofit Robolectric Picasso OkHttp,方便快速开发
945 | 项目地址:https://github.com/pyricau/shipfaster
946 |
947 | 1. CleanAndroidCode
948 | 整合了Dagger Otto AndroidAnnotations,方便快速开发
949 | 项目地址:https://github.com/pyricau/CleanAndroidCode
950 |
951 | 1. xUtils
952 | 基于Afinal,包含DbUtils、ViewUtils、HttpUtils、BitmapUtils四大模块,可用于快速开发
953 | 项目地址:https://github.com/wyouflf/xUtils
954 |
955 | 1. Afinal
956 | Afinal是一个android的ioc,orm框架,内置了四大模块功能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp。通过finalActivity,我们可以通过注解的方式进行绑定ui和事件。通过finalBitmap,我们可以方便的加载bitmap图片,而无需考虑oom等问题。通过finalDB模块,我们一行代码就可以对android的sqlite数据库进行增删改查。通过FinalHttp模块,我们可以以ajax形式请求http数据
957 | 项目地址:https://github.com/yangfuhai/afinal
958 | 官方网站:http://www.afinal.org
959 |
960 |
961 | #### 六、Android 高版本向低版本兼容
962 | 1. ActionBarSherlock
963 | 为Android所有版本提供统一的ActionBar,解决4.0以下ActionBar的适配问题
964 | 项目地址:https://github.com/JakeWharton/ActionBarSherlock
965 | Demo地址:https://play.google.com/store/apps/details?id=com.actionbarsherlock.sample.demos
966 | APP示例:太多了。。现在连google都在用
967 |
968 | 1. Nine Old Androids
969 | 将Android 3.0(Honeycomb)所有动画API(ObjectAnimator ValueAnimator等)兼容到Android1.0
970 | 项目地址:https://github.com/JakeWharton/NineOldAndroids
971 | Demo地址:https://play.google.com/store/apps/details?id=com.jakewharton.nineoldandroids.sample
972 | 文档介绍:http://nineoldandroids.com/
973 |
974 | 1. HoloEverywhere
975 | 将Android 3.0的Holo主题兼容到Android2.1++
976 | 项目地址:https://github.com/Prototik/HoloEverywhere
977 | Demo地址:https://raw.github.com/Prototik/HoloEverywhere/repo/org/holoeverywhere/demo/2.1.0/demo-2.1.0.apk
978 | 文档介绍:http://android-developers.blogspot.com/2012/01/holo-everywhere.html
979 |
980 | 1. SherlockNavigationDrawer
981 | 将Android NavigationDrawer和ActionbarSherlock结合,解决4.0以下NavigationDrawer的适配问题
982 | 项目地址:https://github.com/tobykurien/SherlockNavigationDrawer
983 | 文档地址:http://developer.android.com/training/implementing-navigation/nav-drawer.html
984 |
985 | 1. Notifications4EveryWhere
986 | 将Android 4.1的Notification兼容到Android2.2++
987 | 项目地址:https://github.com/youxiachai/Notifications4EveryWhere
988 |
989 | 1. Android Switch Widget Backport
990 | 将Android Switch和SwitchPreference的兼容到Android2.1++
991 | 项目地址:https://github.com/BoD/android-switch-backport
992 | Demo地址:https://play.google.com/store/apps/details?id=org.jraf.android.backport.switchwidget.sample
993 | 文档介绍:https://github.com/BoD/android-switch-backport#using-the-switch
994 |
995 | 1. android-datepicker
996 | 将Android 4.0的datepicker兼容到Android2.2++
997 | 项目地址:https://github.com/SimonVT/android-datepicker
998 |
999 | 1. GlowPadBackport
1000 | Android 4.2的GlowPadView向后适配到API4以上
1001 | 项目地址:https://github.com/frakbot/GlowPadBackport
1002 |
1003 |
1004 | #### 七、多媒体相关
1005 | 1. cocos2d-x
1006 | 跨平台的2d游戏框架,支持Android、IOS、Linux、Windows等众多平台
1007 | 项目地址:https://github.com/cocos2d/cocos2d-x
1008 | 文档介绍:http://www.cocos2d-x.org/wiki
1009 | 官方网站:http://www.cocos2d-x.org/
1010 |
1011 | 1. Vitamio
1012 | 是一款Android与iOS平台上的全能多媒体开发框架
1013 | 项目地址:https://github.com/yixia/VitamioBundle
1014 | 网站介绍:http://www.vitamio.org/docs/
1015 | 特点:(1) 全面支持硬件解码与GPU渲染
1016 | (2) 能够流畅播放720P甚至1080P高清MKV,FLV,MP4,MOV,TS,RMVB等常见格式的视频
1017 | (3) 在Android与iOS上跨平台支持 MMS, RTSP, RTMP, HLS(m3u8)等常见的多种视频流媒体协议,包括点播与直播。
1018 |
1019 | 1. PhotoProcessing
1020 | 利用ndk处理图片库,支持Instafix、Ansel、Testino、XPro、Retro、BW、Sepia、Cyano、Georgia、Sahara、HDR、Rotate(旋转)、Flip(翻转)等各种特效
1021 | 项目地址:https://github.com/lightbox/PhotoProcessing
1022 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/photo-processing.apk?raw=true
1023 |
1024 | 1. Android StackBlur
1025 | 图片模糊效果工具类
1026 | 项目地址:https://github.com/kikoso/android-stackblur
1027 | Demo地址:https://github.com/kikoso/android-stackblur/blob/master/StackBlurDemo/bin/StackBlurDemo.apk?raw=true
1028 | 文档介绍:https://github.com/kikoso/android-stackblur#usage
1029 |
1030 | 1. Bitmap Smart Clipping using OpenCV
1031 | 图片智能裁剪保留重要部分显示
1032 | 项目地址:https://github.com/beartung/tclip-android
1033 | 利用淘宝的 http://code.taobao.org/p/tclip/ 库完成
1034 | 一淘玩客正在使用的图片裁剪,自动识别图片中的重要区域,并且在图片裁剪时保留重要区域
1035 | 特点:(1). 能进行人脸识别。图片中有人脸,将自动视为人脸区域为重要区域,将不会被裁剪掉
1036 | (2).自动其它重要区域。如果图片中未识别出人脸,则会根据特征分布计算出重区域
1037 |
1038 | 1. Cropper
1039 | 图片局部剪切工具,可触摸控制选择区域或旋转
1040 | 项目地址:https://github.com/edmodo/cropper
1041 | 使用介绍:https://github.com/edmodo/cropper/wiki
1042 | 效果图:
1043 |
1044 | 1. android-crop
1045 | 图片裁剪Activity
1046 | 项目地址:https://github.com/jdamcd/android-crop
1047 | 效果图:
1048 |
1049 | 1. TileView
1050 | 可分块显示大图,支持2D拖动、双击、双指放大、双指捏合
1051 | 项目地址:https://github.com/moagrius/TileView
1052 | Demo地址:http://moagrius.github.io/TileView/TileViewDemo.apk
1053 |
1054 | 1. BlurEffectForAndroidDesign
1055 | 图片模糊效果
1056 | 项目地址:https://github.com/PomepuyN/BlurEffectForAndroidDesign
1057 |
1058 | 1. android-eye
1059 | PC端网页查看同一局域网内的手机摄像头内容,可以用来监控哦
1060 | 项目地址:https://github.com/Teaonly/android-eye
1061 | Demo地址:https://play.google.com/store/apps/details?id=teaonly.droideye
1062 |
1063 | 1. libpng for Android
1064 | PNG图片的jni库,支持几乎png的所有特性
1065 | 项目地址:https://github.com/julienr/libpng-android
1066 | 文档地址:http://www.libpng.org/pub/png/libpng.html
1067 |
1068 | 1. android-gpuimage
1069 | 基于GPU的图片滤镜
1070 | 项目地址:https://github.com/CyberAgent/android-gpuimage
1071 |
1072 | 1. AndroidFaceCropper
1073 | 图片脸部自动识别,将识别后的局部图片返回
1074 | 项目地址:https://github.com/lafosca/AndroidFaceCropper
1075 |
1076 | 1. Android Video Crop
1077 | 利用TextureView播放和剪切视频,类似ImageView.setScaleType
1078 | 项目地址:https://github.com/dmytrodanylyk/android-video-crop
1079 | Demo地址:https://github.com/lafosca/AndroidFaceCropper/releases/download/1.0/FaceCropper-sample-debug-unaligned.apk
1080 |
1081 | 1. svg-android
1082 | Android Svg矢量图形支持
1083 | 项目地址:https://github.com/japgolly/svg-android https://github.com/japgolly/svg-android
1084 |
1085 | 1. Android Visualizer
1086 | 从Android MediaPlayer获得音频,然后像iTunes及WinAmp一样展示音轨
1087 | 项目地址:https://github.com/felixpalmer/android-visualizer
1088 |
1089 |
1090 | #### 八、事件总线(订阅者模式)
1091 | 通过发布/订阅事件解耦事件发送和接受,从而简化应用程序组件(Activities, Fragments及后台线程)之间的通信
1092 |
1093 | 1. EventBus
1094 | greenrobot的开源项目
1095 | 项目地址:https://github.com/greenrobot/EventBus
1096 | 文档介绍:https://github.com/greenrobot/EventBus#general-usage-and-api
1097 | 特点:(1) 支持在不同类型的线程中处理订阅,包括发布所在线程,UI线程、单一后台线程、异步线程
1098 | (2) 支持事件优先级定义,支持优先级高的订阅者取消事件继续传递,支持粘性事件,是不是跟系统的有序广播、粘性广播很像啊
1099 | (3) 不是基于annotations
1100 | (4) 性能更优
1101 | (5) 体积小
1102 | (6) 支持单例创建或创建多个对象
1103 | (7) 支持根据事件类型订阅
1104 |
1105 | 1. Otto
1106 | Square的开源项目,基于Guava的Android优化
1107 | 项目地址:https://github.com/square/otto
1108 | 文档介绍:http://square.github.io/otto/
1109 | [EventBus与Otto的功能及性能对比文档](https://github.com/greenrobot/EventBus#comparison-with-squares-otto)
1110 | [EventBus与Otto性能对比Demo Apk](https://play.google.com/store/apps/details?id=de.greenrobot.eventperf)
1111 |
1112 |
1113 | #### 九、传感器
1114 | 1. Great Android Sensing Toolkit
1115 | Android感应器工具包,包含示例及使用过程中可能需要的算法
1116 | 项目地址:https://github.com/gast-lib/gast-lib
1117 | Demo地址:https://play.google.com/store/apps/details?id=root.gast.playground
1118 | 文档介绍:https://github.com/gast-lib/gast-lib#documentation
1119 |
1120 | 1. SensorManager
1121 | Android传感器管理
1122 | 项目地址:https://github.com/nlathia/SensorManager
1123 | 文档介绍:https://docs.google.com/document/d/1TqThJULb-4e6TGb1gdkAaPCfyuXStjJpbnt7a0OZ9OE/edit
1124 |
1125 | 1. GPSLogger
1126 | 记录GPS信息
1127 | 项目地址:https://github.com/mendhak/gpslogger
1128 | Demo地址:https://play.google.com/store/apps/details?id=com.mendhak.gpslogger
1129 | 文档介绍:http://code.mendhak.com/gpslogger/
1130 |
1131 | 1. Pedometer
1132 | 计步器,使用硬件计步感应器
1133 | 项目地址:https://github.com/j4velin/Pedometer
1134 |
1135 | 1. leapcast
1136 | ChromeCast模拟器的App
1137 | 项目地址:https://github.com/dz0ny/leapcast
1138 |
1139 | 1. Arduino-Communicator
1140 | 与Arduino通信的App
1141 | 项目地址:https://github.com/jeppsson/Arduino-Communicator
1142 |
1143 | 1. android-pedometer
1144 | Android计步器
1145 | 项目地址:https://github.com/bagilevi/android-pedometer
1146 | Demo地址:http://pedometer.googlecode.com/files/Pedometer-1.4.apk
1147 |
1148 | 1. OwnTracks for Android
1149 | 自己的轨迹记录
1150 | 项目地址:https://github.com/owntracks/android
1151 |
1152 | 1. Shake Detector library for Android
1153 | Android手机震动摇晃检测库,提供供UI线程调用的回调接口
1154 | 项目地址:https://github.com/tbouron/ShakeDetector
1155 | Demo地址:https://play.google.com/store/apps/details?id=com.github.tbouron.shakedetector.example
1156 |
1157 | 1. Android heart rate monitor
1158 | Android心跳检测
1159 | 项目地址:https://github.com/phishman3579/android-heart-rate-monitor
1160 |
1161 | 1. Bluetooth LE Library for Android
1162 | 蓝牙源信息,包括宝库Mac、更新时间、RSSI、UUID、信号源距离、影响范围等信息
1163 | 项目地址:https://github.com/alt236/Bluetooth-LE-Library---Android
1164 | Demo地址:https://play.google.com/store/apps/details?id=uk.co.alt236.btlescan
1165 |
1166 | 1. farebot
1167 | 通过NFC 从公交卡中读取数据的一个应用
1168 | 项目地址:https://github.com/codebutler/farebot
1169 |
1170 |
1171 |
1172 | #### 十、安全
1173 | 1. SQLCipher
1174 | Sqlite加密工具
1175 | 项目地址:https://github.com/sqlcipher/sqlcipher
1176 | 帮助文档:http://sqlcipher.net/sqlcipher-for-android/
1177 |
1178 | 1. Conceal
1179 | 快速高效的进行文件加密解密
1180 | 项目地址:https://github.com/facebook/conceal
1181 | 文档介绍:https://github.com/facebook/conceal#usage
1182 |
1183 | 1. Android-PasscodeLock
1184 | 应用锁,每次启动或从任何Activity启动应用都需要输入四位数字的密码方可进入
1185 | 项目地址:https://github.com/wordpress-mobile/Android-PasscodeLock
1186 | Demo地址:https://play.google.com/store/apps/details?id=com.sothree.umano
1187 | APP示例:Wordpress Android,支付宝,挖财
1188 |
1189 | 1. GlowPadBackport
1190 | 将Android4.2的锁屏界面解锁扩展到Android1.6及1.6+
1191 | 项目地址:https://github.com/rock3r/GlowPadBackport
1192 | Demo地址:https://play.google.com/store/apps/details?id=net.sebastianopoggi.samples.ui.GlowPadSample
1193 | 效果图:
1194 |
1195 | 1. GlowPadView
1196 | Android 4锁屏界面解锁
1197 | 项目地址:https://github.com/nadavfima/GlowPadView
1198 | 效果图:https://raw.github.com/nadavfima/GlowPadView/master/example.png
1199 |
1200 | 1. android-lockpattern
1201 | Android的图案密码解锁
1202 | 项目地址:https://code.google.com/p/android-lockpattern/
1203 | Demo地址:https://play.google.com/store/apps/details?id=group.pals.android.lib.ui.lockpattern.demo
1204 | 使用介绍:https://code.google.com/p/android-lockpattern/wiki/QuickUse
1205 | 示例APP:Android开机的图案密码解锁,支付宝的密码解锁
1206 |
1207 |
1208 | #### 十一、插件化
1209 | 1. dynamic-load-apk
1210 | Android动态加载Apk,热部署。支持一定程度不安装升级
1211 | 项目地址:https://github.com/singwhatiwanna/dynamic-load-apk
1212 | 文档介绍:http://blog.csdn.net/singwhatiwanna/article/details/22597587
1213 |
1214 | 1. xCombine
1215 | Android App插件式插件开发,插件必须先安装
1216 | 项目地址:https://github.com/wyouflf/xCombine
1217 | 文档介绍:http://my.oschina.net/u/1171837/blog/155377
1218 |
1219 | 1. Android Plugin Framework
1220 | Android插件式开发,开放的源码目前不完整
1221 | 项目地址:https://github.com/umeng/apf
1222 |
1223 |
1224 | #### 十二、文件
1225 | 对不同文档类型的处理,包括PDF、Word、EPub、Html、Zip等
1226 |
1227 | 1. purePDF
1228 | 允许从任何运行的SWF文件读取和创建PDF文档
1229 | 项目地址:https://github.com/sephiroth74/purePDF
1230 |
1231 | 1. Office 365 SDK for Android Preview
1232 | 可支持Microsoft SharePoint Lists, Microsoft SharePoint Files, Microsoft Exchange Calendar, Microsoft Exchange Contacts, Microsoft Exchange Mail
1233 | 项目地址:https://github.com/OfficeDev/Office-365-SDK-for-Android
1234 |
1235 | 1. OpenSpritz-Android
1236 | EPub阅读器
1237 | 项目地址:https://github.com/OnlyInAmerica/OpenSpritz-Android
1238 |
1239 | 1. jsoup
1240 | 一个解析html的java库,可方便的提取和操作数据
1241 | 项目地址:https://github.com/jhy/jsoup
1242 | 官方网站:http://jsoup.org/
1243 | 作用:(1) 从一个url、文件或string获得html并解析
1244 | (2) 利用dom遍历或css选择器查找、提取数据
1245 | (3) 操作html元素
1246 | (4) 根据白名单去除用于提交的非法数据防止xss攻击
1247 | (5) 输出整齐的html
1248 |
1249 | 1. ZIP
1250 | java压缩和解压库
1251 | 项目地址:https://github.com/zeroturnaround/zt-zip
1252 | 文档介绍:https://github.com/zeroturnaround/zt-zip#examples
1253 | 作用:(1) 解压和压缩,并支持文件夹内递归操作
1254 | (2) 支持包含和排除某些元素
1255 | (3) 支持重命名元素
1256 | (4) 支持遍历zip包内容
1257 | (5) 比较两个zip包等功能
1258 |
1259 |
1260 | #### 十三、其他
1261 | 1. Salvage view
1262 | 带View缓存的Viewpager PagerAdapter,很方便使用
1263 | 项目地址:https://github.com/JakeWharton/salvage
1264 |
1265 | 1. Android Priority Job Queue
1266 | Android后台任务队列
1267 | 项目地址:https://github.com/path/android-priority-jobqueue
1268 | 文档介绍:https://github.com/path/android-priority-jobqueue#getting-started
1269 |
1270 | 1. Cobub Razor
1271 | 开源的mobile行为分析系统,包括web端、android端,支持ios和window phone
1272 | 项目地址:https://github.com/cobub/razor
1273 | Demo地址:http://demo.cobub.com/razor
1274 | 网站介绍:http://dev.cobub.com/
1275 |
1276 | 1. Countly
1277 | Android移动端数据采集分析系统
1278 | 项目地址:https://github.com/Countly/countly-sdk-android
1279 | 官网地址:https://count.ly/
1280 |
1281 | 1. aFileChooser
1282 | 文件选择器,可内嵌到程序中,而无需使用系统或三方文件选择器。
1283 | 项目地址:https://github.com/iPaulPro/aFileChooser
1284 |
1285 | 1. androidpn
1286 | 基于xmpp协议的消息推送解决方案,包括服务器端和android端。
1287 | 项目地址:https://github.com/dannytiehui/androidpn
1288 |
1289 | 1. Bolts
1290 | Android的异步编程模式
1291 | 项目地址:https://github.com/BoltsFramework/Bolts-Android/
1292 | 与AsyncTask比较:(1) 使用的是无大小限制的线程池
1293 | (2) 任务可组合可级联,防止了代码耦合
1294 |
1295 | 1. CastCompanionLibrary-android
1296 | 使Android程序中更快的接入Google Cast
1297 | 项目地址:https://github.com/googlecast/CastCompanionLibrary-android
1298 | 文档介绍:https://developers.google.com/cast/
1299 |
1300 | 1. CastVideos-android
1301 | 从Android设备分享Video通过Google Cast
1302 | 项目地址:https://github.com/googlecast/CastVideos-android
1303 | 文档介绍:https://developers.google.com/cast/
1304 |
1305 | 1. Uninstall_Statics
1306 | Android应用自身被卸载监听及打开浏览器等反馈功能实现
1307 | 项目地址:https://github.com/sevenler/Uninstall_Statics
1308 | 文档介绍:http://www.cnblogs.com/zealotrouge/p/3157126.html
1309 | http://www.cnblogs.com/zealotrouge/p/3159772.html
1310 |
1311 | 1. Memento
1312 | 保证在系统配置改变时,Activity中的某些数据可以简单安全的保持不变
1313 | 项目地址:https://github.com/mttkay/memento
1314 | 文档介绍:https://github.com/mttkay/memento#usage
1315 |
1316 | 1. FreeFlow
1317 | 布局引擎,更简单的创建自定义布局,并且当数据和布局改变时更美观的过渡动画
1318 | 项目地址:https://github.com/Comcast/FreeFlow
1319 | Demo地址:https://github.com/Comcast/FreeFlow/releases
1320 |
1321 | 1. Android Gesture Detectors Framework
1322 | Android手势框架,支持双指旋转、移动、平移、缩放等
1323 | 项目地址:https://github.com/Almeros/android-gesture-detectors
1324 |
1325 | 1. Mapbox Android SDK
1326 | Android Map的替代版
1327 | 项目地址:https://github.com/mapbox/mapbox-android-sdk
1328 |
1329 | 1. Activity animation
1330 | Activity跳转动画,支持各个方向波浪的效果
1331 | 项目地址:https://github.com/flavienlaurent/activityanimation
1332 | 在线演示:https://www.youtube.com/watch?v=-E0sc6w_Jck
1333 |
1334 | 1. KryoNet
1335 | 通过NIO提供客户端和服务器端TCP/UDP网络传输的Java库
1336 | 项目地址:https://github.com/EsotericSoftware/kryonet
1337 |
1338 | 1. Rebound
1339 | 一个模仿弹簧反弹的Java库,可用于创建动画
1340 | 项目地址:https://github.com/facebook/rebound
1341 |
1342 | 1. Android Social Networks
1343 | 社交网络接入统一管理器,可方便的从Twitter, LinkedIn, Facebook, Google Plus登陆、获得个人信息、发送消息、发送专篇、添加或删除好友
1344 | 项目地址:https://github.com/antonkrasov/AndroidSocialNetworks
1345 | Demo地址:https://play.google.com/store/apps/details?id=com.github.androidsocialnetworks.apidemos
1346 |
1347 |
1348 | ## 第三部分 优秀项目
1349 | 主要介绍那些Android还不错的完整项目,目前包含的项目主要依据是项目有意思或项目分层规范比较好。
1350 | Linux
1351 | 项目地址:https://github.com/torvalds/linux
1352 | Android
1353 | 项目地址:https://android.googlesource.com/ 或 https://github.com/android
1354 | 以上两个项目,不解释
1355 |
1356 | (1) ZXing
1357 | 二维码扫描工具
1358 | 项目地址:https://github.com/zxing/zxing 或 https://code.google.com/p/zxing/
1359 | APK地址:https://play.google.com/store/apps/details?id=com.google.zxing.client.android
1360 | PS:现在市面上很多应用的二维码扫描功能都是从这个修改而来
1361 |
1362 | (2) photup
1363 | 编辑机批量上传照片到facebook上
1364 | 项目地址:https://github.com/chrisbanes/photup
1365 | APK地址:https://play.google.com/store/apps/details?id=uk.co.senab.photup
1366 | PS:代码分包合理,很棒。不过这个项目依赖的开源项目比较多,比较难编译
1367 |
1368 | (3) github-android
1369 | Github的Android客户端项目
1370 | 项目地址:https://github.com/github/android
1371 | APK地址:https://play.google.com/store/apps/details?id=com.github.mobile
1372 |
1373 | (4) Notes
1374 | MIUI便签
1375 | 项目地址:https://github.com/MiCode/Notes
1376 | APK地址:https://github.com/Trinea/TrineaDownload/blob/master/miui-note-demo.apk?raw=true
1377 | PS:项目分包比较合理,相比较miui的文件管理器https://github.com/MiCode/FileExplorer 代码规范较好得多
1378 |
1379 | (5) weicuiyuan
1380 | 四次元-新浪微博客户端
1381 | 项目地址:https://github.com/qii/weiciyuan
1382 | APK地址:https://play.google.com/store/apps/details?id=org.qii.weiciyuan
1383 |
1384 | (6) gnucash-android
1385 | 一个记账理财软件
1386 | 项目地址:https://github.com/codinguser/gnucash-android
1387 | APK地址:http://play.google.com/store/apps/details?id=org.gnucash.android
1388 |
1389 | (7) AntennaPod
1390 | 支持rss订阅、音乐订阅
1391 | 项目地址:https://github.com/danieloeh/AntennaPod
1392 | APK地址:https://play.google.com/store/apps/details?id=de.danoeh.antennapod
1393 |
1394 | (8) ChaseWhisplyProject
1395 | 打鬼游戏
1396 | 项目地址:https://github.com/tvbarthel/ChaseWhisplyProject
1397 | APK地址:https://play.google.com/store/apps/details?id=fr.tvbarthel.games.chasewhisply
1398 |
1399 | (9) Tweet Lanes
1400 | 功能完整的Twitter客户端
1401 | 项目地址:https://github.com/chrislacy/TweetLanes
1402 | APK地址:https://play.google.com/store/apps/details?id=com.tweetlanes.android
1403 |
1404 | (10) Financius
1405 | 简单易用的记账程序
1406 | 项目地址:https://github.com/mvarnagiris/Financius
1407 | APK地址:https://play.google.com/store/apps/details?id=com.code44.finance
1408 |
1409 | (11) todo.txt-android
1410 | todo.txt的官方Android应用
1411 | 项目地址:https://github.com/ginatrapani/todo.txt-android
1412 | APK地址:https://play.google.com/store/apps/details?id=com.todotxt.todotxttouch
1413 |
1414 | (12) simpletask
1415 | 基于todo.txt官方应用的另一个客户端
1416 | 项目地址:https://github.com/mpcjanssen/simpletask-android
1417 | APK地址:https://play.google.com/store/apps/details?id=nl.mpcjanssen.todotxtholo
1418 |
1419 | (13) Muzei Live Wallpaper
1420 | 定时更换桌面精美壁纸
1421 | 项目地址:https://github.com/romannurik/muzei
1422 | APK地址:https://play.google.com/store/apps/details?id=net.nurik.roman.muzei
1423 |
1424 |
1425 | ## 第四部分 开发工具及测试工具
1426 | 主要介绍和Android开发工具和测试工具相关的开源项目。
1427 | #### 一、开发效率工具
1428 | 1. Json2Java
1429 | 根据JSon数据自动生成对应的Java实体类,还支持Parcel、Gson Annotations对应代码自动生成。期待后续的提取父类以及多url构建整个工程的功能
1430 | 项目地址:https://github.com/jonfhancock/JsonToJava
1431 | 在线演示:http://jsontojava.appspot.com/
1432 |
1433 | 1. IntelliJ Plugin for Android Parcelable boilerplate code generation
1434 | Android studio插件,生成Parcelable代码
1435 | 项目地址:https://github.com/mcharmas/android-parcelable-intellij-plugin
1436 | 效果图:
1437 |
1438 | 1. Android Holo Colors IntelliJ Plugin
1439 | Android studio插件,生成holo样式9 patch图片
1440 | 项目地址:https://github.com/jeromevdl/android-holo-colors-idea-plugin
1441 | 效果图:
1442 |
1443 | 1. Android Drawable Factory
1444 | 用于生成各个分辨率的图片
1445 | 项目地址:https://github.com/tizionario/AndroidDrawableFactory
1446 | 效果图:
1447 |
1448 | 1. SelectorChapek for Android
1449 | Android Studio插件,可根据固定文件名格式资源自动生成drawable selectors xml文件。
1450 | 项目地址:https://github.com/inmite/android-selector-chapek
1451 |
1452 | 1. Android Action Bar Style Generator
1453 | Android ActionBar样式生成器,可在线选择ActionBar样式自动生成所需要的图片资源及xml文件
1454 | 项目地址:https://github.com/jgilfelt/android-actionbarstylegenerator
1455 | 在线演示:http://jgilfelt.github.io/android-actionbarstylegenerator/
1456 |
1457 | 1. ButterKnifeZelezny
1458 | 用于快速生成[ButterKnife](https://github.com/JakeWharton/butterknife)View注入代码的Android Studio/IDEA插件
1459 | 项目地址:https://github.com/inmite/android-butterknife-zelezny
1460 |
1461 | 1. RoboCoP
1462 | 利用Gradle task根据固定格式的json文件生成ContentProvider
1463 | 项目地址:https://github.com/mediarain/RoboCoP
1464 |
1465 | 1. appiconsizes
1466 | 用于生成各个分辨率的图片
1467 | 项目地址:http://www.appiconsizes.com/
1468 |
1469 | 1. Gradle Retrolambda Plugin
1470 | [Retrolambda](https://github.com/orfjackal/retrolambda)是将Java8的Lambdas应用于Java7的工具,本项目是Gradle插件,通过Retrolambda从而使Java或Android项目用Java8的Lambdas编写,将编译后的字节码转换为Java6和7的字节码从而正常运行
1471 | 项目地址:https://github.com/evant/gradle-retrolambda
1472 |
1473 | 1. Dagger IntelliJ Plugin
1474 | dagger的intellij插件
1475 | 项目地址:https://github.com/square/dagger-intellij-plugin
1476 |
1477 | 1. Android Gen Drawable Maven plugin
1478 | 在编译时根据SVG描述文件生成不同分辨率的jpg、png或点9图片
1479 | 项目地址:https://github.com/avianey/androidgendrawable-maven-plugin
1480 |
1481 | 1. Android Asset Studio
1482 | 各种Android资源自动生成器,包括启动图标、ActionBar图标、通知栏图标、点9等
1483 | 项目地址:https://github.com/romannurik/AndroidAssetStudio
1484 | 在线演示:http://romannurik.github.io/AndroidAssetStudio/
1485 |
1486 |
1487 | #### 二、开发自测相关
1488 | 1. Quality Tools for Android
1489 | Android测试及自测工具集合和示例
1490 | 项目地址:https://github.com/stephanenicolas/Quality-Tools-for-Android
1491 |
1492 | 1. android-test-kit
1493 | Google的Android测试工具
1494 | 包括GoogleInstrumentationTestRunner(增强版的InstrumentationTestRunner)和Espresso(用于快速写出可靠测试用例的API)
1495 | 项目地址:https://code.google.com/p/android-test-kit/
1496 | 文档介绍:https://code.google.com/p/android-test-kit/w/list
1497 |
1498 | 1. robolectric
1499 | 测试用例编写框架
1500 | 项目地址:https://github.com/robolectric/robolectric
1501 | Demo地址:https://github.com/robolectric/robolectricsample
1502 | 文档介绍:http://robolectric.org/
1503 | 特点:(1). 不需要模拟器在一般JVM就可以运行测试用例
1504 | (2). 能完成在真机上的大部分测试包括感应器
1505 | 其他的测试用例及相关模块Mock可见:[android-mock](https://code.google.com/p/android-mock/), [mockito](https://code.google.com/p/mockito/), [easy-mock](https://github.com/easymock/easymock)
1506 |
1507 | 1. Android FEST
1508 | 提供一些列方便的断言,可用于提高编写Android自测代码效率
1509 | 项目地址:https://github.com/square/fest-android
1510 |
1511 | 1. BoundBox
1512 | 可用于测试类各种访问权限的属性、方法。实际是通过BoundBox这个annotation生成一个属性和方法都是public权限的中间类并对此类进行测试完成的
1513 | 项目地址:https://github.com/stephanenicolas/boundbox
1514 |
1515 | 1. Hugo
1516 | 用于打印函数信息及执行时间的工具,仅在debug模式生效
1517 | 项目地址:https://github.com/JakeWharton/hugo
1518 |
1519 | 1. scalpel
1520 | 在应用下面添加一层用于界面调试,待详细补充 // TODO
1521 | 项目地址:https://github.com/JakeWharton/scalpel
1522 |
1523 | 1. Android Screenshot library
1524 | Android截图工具类,用于在持续集成时截图
1525 | 项目地址:https://github.com/rtyley/android-screenshot-lib
1526 |
1527 | 1. sonar-android-lint-plugin
1528 | 将android lint的错误在sonar中展现
1529 | 项目地址:https://github.com/SonarCommunity/sonar-android
1530 |
1531 |
1532 | #### 三、测试工具
1533 | 1. Spoon
1534 | 可用于android不同机型设备自动化测试,能将应用apk和测试apk运行在不同机器上并生成相应测试报告。
1535 | 项目地址:https://github.com/square/spoon
1536 |
1537 | 1. Tencent APT
1538 | APT是腾讯开源的一个Android平台高效性能测试组件,提供丰富实用的功能,适用于开发自测、定位性能瓶颈;测试人员完成性能基准测试、竞品对比测试
1539 | 项目地址:https://github.com/stormzhang/APT
1540 |
1541 | 1. Emmagee
1542 | 网易开源的性能测试工具,包括CPU、内存、网络流量、启动时间、电池状态等
1543 | 项目地址:https://github.com/NetEase/Emmagee
1544 |
1545 | 1. Android py-uiautomator
1546 | py-uiautomator是一个对Android uiautomator用python进行封装的测试框架.
1547 | 项目地址:https://github.com/xiaocong/uiautomator
1548 |
1549 |
1550 | #### 四、开发及编译环境
1551 | 1. Buck
1552 | facebook开源的Android编译工具,效率是ant的两倍。主要优点在于:
1553 | (1) 加快编译速度,通过并行利用多核cpu和跟踪不变资源减少增量编译时间实现
1554 | (2) 可以在编译系统中生成编译规则而无须另外的系统生成编译规则文件
1555 | (3) 编译同时可生成单元测试结果
1556 | (4) 既可用于IDE编译也可用于持续集成编译
1557 | (5) facebook持续优化中
1558 | 项目地址:https://github.com/facebook/buck
1559 |
1560 | 1. Android Maven Plugin
1561 | Android Maven插件,可用于对android三方依赖进行管理。在J2EE开发中,maven是非常成熟的依赖库管理工具,可统一管理依赖库。
1562 | 项目地址:https://github.com/jayway/maven-android-plugin
1563 |
1564 | 1. umeng-muti-channel-build-tool
1565 | 渠道打包工具
1566 | 项目地址:https://github.com/umeng/umeng-muti-channel-build-tool
1567 | 另可参见Google的构建系统Gradle:http://tools.android.com/tech-docs/new-build-system/user-guide
1568 |
1569 | 1. Genymotion
1570 | 目前最好用最快的android模拟器
1571 | 项目地址:http://www.genymotion.com/
1572 | Android studio集成控件: http://plugins.jetbrains.com/plugin/7269?pr=idea
1573 | Cyril Mottier推荐:http://cyrilmottier.com/2013/06/27/a-productive-android-development-environment/
1574 |
1575 | 1. gradle-mvn-push
1576 | 方便的将Gradle的Artifacts上传到Maven仓库
1577 | 项目地址:https://github.com/chrisbanes/gradle-mvn-push
1578 | 文档介绍:https://github.com/chrisbanes/gradle-mvn-push#usage
1579 |
1580 | 1. Android Emulator Plugin for Jenkins
1581 | Android模拟器 jenkins插件,用于Jenkins做持续集成时跑模拟器测试
1582 | 项目地址:https://github.com/jenkinsci/android-emulator-plugin
1583 |
1584 | 1. Android Maven Plugin
1585 | 管理应用所需要的依赖库。包括的构建工具有Maven、Gradle、ant、sbt
1586 | 项目地址:https://github.com/mosabua/maven-android-sdk-deployer
1587 |
1588 | 1. SDK Manager Plugin
1589 | 下载和管理Android SDK的Gradle插件
1590 | 项目地址:https://github.com/JakeWharton/sdk-manager-plugin
1591 |
1592 | 1. Gradle Protobuf Plugin
1593 | 将.proto文件转换成Java文件的gradle插件
1594 | 项目地址:https://github.com/andrewkroh/gradle-protobuf-plugin
1595 |
1596 |
1597 | #### 五、其他
1598 | 1. ViewServer
1599 | 允许app运行在任何手机上都可以用HierarchyViewer查看
1600 | 项目地址:https://github.com/romainguy/ViewServer
1601 |
1602 | 1. GridWichterle for Android
1603 | 在整个系统上显示一个grid,用来帮助查看应用布局及使得布局更美观,可设置grid网格大小和颜色,android推荐48dp和8dp,可见 Android Design Guidelines – Metrics and Grids
1604 | 项目地址:https://github.com/inmite/android-grid-wichterle
1605 | APK地址:https://play.google.com/store/apps/details?id=eu.inmite.android.gridwichterle
1606 | PS:比起hierarchyviewer相差甚远,不过偶尔可用来作为布局查看工具。
1607 |
1608 | 1. Catlog
1609 | 手机端log查看工具,支持不同颜色显示、关键字过滤、级别过滤、进程id过滤、录制功能等
1610 | 项目地址:https://github.com/nolanlawson/Catlog
1611 | 在线演示:https://play.google.com/store/apps/details?id=com.nolanlawson.logcat
1612 |
1613 | 1. PID Cat
1614 | 根据package查看logcat日志
1615 | 项目地址:https://github.com/JakeWharton/pidcat
1616 |
1617 | 1. ACRA
1618 | 应用崩溃信息上报到GoogleDoc工具,网页版展现结果三方开源地址https://github.com/BenoitDuffez/crashreportsviewer
1619 | 项目地址:https://github.com/ACRA/acra
1620 | 文档地址:https://github.com/ACRA/acra/wiki/BasicSetup
1621 |
1622 | 1. Crashlytics
1623 | 提供丰富的应用崩溃信息收集
1624 | 轻量级,丰富,可自定义应用崩溃信息收集器,附有邮件通知
1625 | 项目地址:http://www.crashlytics.com/
1626 | 集成插件:[Android Studio, Eclipse and IntelliJ](http://try.crashlytics.com/sdk-android/?utm_source=blog&utm_medium=blog&utm_campaign=Announcing_android_studio_wp&utm_content=CTA_button)
1627 |
1628 | 1. Android Resource Navigator
1629 | chrome插件,可以方便的查看github上android源码工程的styles.xml和themes.xml。主要功能:
1630 | (1) 快速打开android styles.xml themes.xml
1631 | (2) 方便在资源间跳转。styles.xml themes.xml文件中资源链接跳转,可以方便跳转到某个资源
1632 | (3) 方便查找某个style和theme。chrome地址栏输入arn+tab+搜索内容回车即可
1633 | (4) 自动下载不同分辨率下的drawable
1634 | (5) 通过映射查找那些不是按照固定命名规则命名的style和theme
1635 | 项目地址:https://github.com/jgilfelt/android-resource-navigator
1636 | 在线演示:https://chrome.google.com/webstore/detail/android-resource-navigato/agoomkionjjbejegcejiefodgbckeebo?hl=en&gl=GB
1637 |
1638 | 1. android-resource-remover
1639 | 根据lint的提示删除项目中无用的资源,减少包的大小
1640 | 项目地址:https://github.com/KeepSafe/android-resource-remover
1641 |
1642 | 1. Telescope
1643 | 通过手势截图以特定主题发送到特定邮箱地址报告Bug
1644 | 项目地址:https://github.com/mattprecious/telescope
1645 |
1646 | 1. Complete Android Fragment & Activity Lifecycle
1647 | 完整的Android Fragment/Activity生命周期图
1648 | 项目地址:https://github.com/xxv/android-lifecycle
1649 |
1650 |
1651 | ## 第五部分
1652 | 主要介绍那些乐于分享并且有一些很不错的开源项目的个人和组织。Follow大神,深挖大神的项目和following,你会发现很多。
1653 |
1654 | #### 一、个人
1655 | 1. JakeWharton
1656 | 就职于Square,绝对牛逼的大神,项目主要集中在Android版本兼容,ViewPager及开发工具上
1657 | Github地址:https://github.com/JakeWharton
1658 | 代表作:ActionBarSherlock,Android-ViewPagerIndicator,Nine Old Androids,SwipeToDismissNOA,hugo,butterknife,Android-DirectionalViewPager, scalpel
1659 | pidcat另外对square及其他开源项目有很多贡献
1660 | 主页:http://jakewharton.com/
1661 |
1662 | 1. Chris Banes
1663 | Github地址:https://github.com/chrisbanes
1664 | 代表作:ActionBar-PullToRefresh,PhotoView,Android-BitmapCache,Android-PullToRefresh
1665 | 主页:http://chris.banes.me/
1666 |
1667 | 1. Koushik Dutta
1668 | 就职于ClockworkMod
1669 | Github地址:https://github.com/koush
1670 | 代表作:Superuser,AndroidAsync,UrlImageViewHelper,ion, 另外对https://github.com/CyanogenMod 的开源项目有很多贡献
1671 | 主页:http://koush.com/
1672 |
1673 | 1. Simon Vig
1674 | Github地址:https://github.com/SimonVT
1675 | 代表作:android-menudrawer,MessageBar
1676 | 主页:http://simonvt.net/
1677 |
1678 | 1. Manuel Peinado
1679 | Github地址:https://github.com/ManuelPeinado
1680 | 代表作:FadingActionBar,GlassActionBar,RefreshActionItem,QuickReturnHeader
1681 |
1682 | 1. Emil Sj?lander
1683 | Github地址:https://github.com/emilsjolander
1684 | 代表作:StickyListHeaders,sprinkles,android-FlipView
1685 | 主页:http://emilsjolander.se/
1686 |
1687 | 1. greenrobot
1688 | Github地址:https://github.com/greenrobot
1689 | 代表作:greenDAO,EventBus
1690 | 主页:http://greenrobot.de/
1691 |
1692 | 1. Jeff Gilfelt
1693 | Github地址:https://github.com/jgilfelt
1694 | 代表作:android-mapviewballoons,android-viewbadger,android-actionbarstylegenerator,android-sqlite-asset-helper
1695 | 主页:http://jeffgilfelt.com
1696 |
1697 | 1. Romain Guy
1698 | Android team成员(2013.10已离开Android team,仍在Google)
1699 | Github地址:https://github.com/romainguy
1700 | 代表作:ViewServer
1701 | 主页:http://www.curious-creature.org/category/android/
1702 | 個人攝影作品:http://www.flickr.com/photos/romainguy
1703 |
1704 | 1. sephiroth74
1705 | 就职于Aviary.com
1706 | Github地址:https://github.com/sephiroth74
1707 | 代表作:ImageViewZoom,HorizontalVariableListView,AndroidWheel,purePDF
1708 | 主页:http://www.sephiroth.it/
1709 |
1710 | 1. Cyril Mottier
1711 | Google开发者专家认证,发布一些Android技巧及文章
1712 | Github地址:https://github.com/cyrilmottier
1713 | 代表作:GreenDroid,Polaris
1714 | 主页:http://cyrilmottier.com/
1715 |
1716 |
1717 | #### 二、组织
1718 | 1. Square
1719 | 有态度有良心的企业,很多不错的分享
1720 | Github地址:https://github.com/square
1721 | 代表作:okhttp、fest-android,android-times-square、picasso、dagger、spoon等等
1722 | 主页:http://square.github.io/
1723 |
1724 | 1. Inmite s.r.o.
1725 | Github地址:https://github.com/inmite
1726 | 代表作:android-styled-dialogs,android-grid-wichterle,android-selector-chapek
1727 | 主页:http://www.inmite.eu/
1728 |
1729 |
1730 | #### 三、博客
1731 | 1. Chet Haase
1732 | Android framework UI team 成员
1733 | 主页:http://graphics-geek.blogspot.com/
1734 |
1735 |
1736 | ## License
1737 |
1738 | Copyright 2014 trinea.cn
1739 |
1740 | Licensed under the Apache License, Version 2.0 (the "License");
1741 | you may not use this file except in compliance with the License.
1742 | You may obtain a copy of the License at
1743 |
1744 | http://www.apache.org/licenses/LICENSE-2.0
1745 |
1746 | Unless required by applicable law or agreed to in writing, software
1747 | distributed under the License is distributed on an "AS IS" BASIS,
1748 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1749 | See the License for the specific language governing permissions and
1750 | limitations under the License.
1751 |
--------------------------------------------------------------------------------
/繁體中文版/README.md:
--------------------------------------------------------------------------------
1 | Android開源項目分類彙總
2 | ====================
3 |
4 | 歡迎大家推薦好的Android開源項目,可直接[Commit](https://github.com/Trinea/android-open-project/wiki)或在 [收集&提交頁](https://github.com/Trinea/android-open-project/issues/1) 中告訴我,歡迎`Star`、`Fork` :)
5 |
6 | 微博:[Trinea](https://weibo.com/trinea) 主頁:[www.trinea.cn](http://www.trinea.cn/) 郵箱:[trinea.cn@gmail.com](mailto:trinea.cn@gmail.com) QQ:[717763774](http://wpa.qq.com/msgrd?v=3&uin=717763774&site=qq&menu=yes)
7 | 分享:
8 | ## 目前包括:
9 | >[Android開源項目第一篇——個性化控件(View)篇](https://github.com/Trinea/android-open-project#%E7%AC%AC%E4%B8%80%E9%83%A8%E5%88%86-%E4%B8%AA%E6%80%A7%E5%8C%96%E6%8E%A7%E4%BB%B6view)
10 | * 包括[ListView](https://github.com/Trinea/android-open-project#%E4%B8%80listview)、[ActionBar](https://github.com/Trinea/android-open-project#%E4%BA%8Cactionbar)、[Menu](https://github.com/Trinea/android-open-project#%E4%B8%89menu)、[ViewPager](https://github.com/Trinea/android-open-project#%E5%9B%9Bviewpager-gallery)、[Gallery](https://github.com/Trinea/android-open-project#%E5%9B%9Bviewpager-gallery)、[GridView](https://github.com/Trinea/android-open-project#%E4%BA%94gridview)、[ImageView](https://github.com/Trinea/android-open-project#%E5%85%ADimageview)、[ProgressBar](https://github.com/Trinea/android-open-project#%E4%B8%83progressbar)、[TextView](https://github.com/Trinea/android-open-project#%E5%85%ABtextview)、[ScrollView](https://github.com/Trinea/android-open-project#%E4%B9%9Dscrollview)、[TimeView](https://github.com/Trinea/android-open-project#%E5%8D%81timeview)、[TipView](https://github.com/Trinea/android-open-project#%E5%8D%81%E4%B8%80tipview)、[FlipView](https://github.com/Trinea/android-open-project#%E5%8D%81%E4%BA%8Cflipview)、[ColorPickView](https://github.com/Trinea/android-open-project#%E5%8D%81%E4%B8%89colorpickview)、[GraphView](https://github.com/Trinea/android-open-project#%E5%8D%81%E5%9B%9Bgraphview)、[UI Style](https://github.com/Trinea/android-open-project#%E5%8D%81%E4%BA%94ui-style)、[其他](https://github.com/Trinea/android-open-project#%E5%8D%81%E5%85%AD%E5%85%B6%E4%BB%96)*
11 | [Android開源項目第二篇——工具庫篇](https://github.com/Trinea/android-open-project#%E7%AC%AC%E4%BA%8C%E9%83%A8%E5%88%86-%E5%B7%A5%E5%85%B7%E5%BA%93)
12 | * 包括[依賴注入](https://github.com/Trinea/android-open-project#%E4%B8%80%E4%BE%9D%E8%B5%96%E6%B3%A8%E5%85%A5di)、[圖片緩存](https://github.com/Trinea/android-open-project#%E4%BA%8C%E5%9B%BE%E7%89%87%E7%BC%93%E5%AD%98)、[網絡相關](https://github.com/Trinea/android-open-project#%E4%B8%89%E7%BD%91%E7%BB%9C%E7%9B%B8%E5%85%B3)、[數據庫ORM工具包](https://github.com/Trinea/android-open-project#%E5%9B%9B%E6%95%B0%E6%8D%AE%E5%BA%93-orm%E5%B7%A5%E5%85%B7%E5%8C%85)、[Android公共庫](https://github.com/Trinea/android-open-project#%E4%BA%94android%E5%85%AC%E5%85%B1%E5%BA%93)、[高版本向低版本兼容庫](https://github.com/Trinea/android-open-project#%E5%85%ADandroid-%E9%AB%98%E7%89%88%E6%9C%AC%E5%90%91%E4%BD%8E%E7%89%88%E6%9C%AC%E5%85%BC%E5%AE%B9)、[多媒體](https://github.com/Trinea/android-open-project#%E4%B8%83%E5%A4%9A%E5%AA%92%E4%BD%93%E7%9B%B8%E5%85%B3)、[事件總線](https://github.com/Trinea/android-open-project#%E5%85%AB%E4%BA%8B%E4%BB%B6%E6%80%BB%E7%BA%BF%E8%AE%A2%E9%98%85%E8%80%85%E6%A8%A1%E5%BC%8F)、[傳感器](https://github.com/Trinea/android-open-project#%E4%B9%9D%E4%BC%A0%E6%84%9F%E5%99%A8)、[安全](https://github.com/Trinea/android-open-project#%E5%8D%81%E5%AE%89%E5%85%A8)、[插件化](https://github.com/Trinea/android-open-project#%E5%8D%81%E4%B8%80%E6%8F%92%E4%BB%B6%E5%8C%96)、[文件](https://github.com/Trinea/android-open-project#%E5%8D%81%E4%BA%8C%E6%96%87%E4%BB%B6)、[其他](https://github.com/Trinea/android-open-project#%E5%8D%81%E4%B8%89%E5%85%B6%E4%BB%96)*
13 | [Android開源項目第三篇——優秀項目篇](https://github.com/Trinea/android-open-project#%E7%AC%AC%E4%B8%89%E9%83%A8%E5%88%86-%E4%BC%98%E7%A7%80%E9%A1%B9%E7%9B%AE)
14 | * 比較有意思的完整的Android項目*
15 | [Android開源項目第四篇——開發及測試工具篇](https://github.com/Trinea/android-open-project#%E7%AC%AC%E5%9B%9B%E9%83%A8%E5%88%86-%E5%BC%80%E5%8F%91%E5%B7%A5%E5%85%B7%E5%8F%8A%E6%B5%8B%E8%AF%95%E5%B7%A5%E5%85%B7)
16 | * 包括[開發效率工具](https://github.com/Trinea/android-open-project#%E4%B8%80%E5%BC%80%E5%8F%91%E6%95%88%E7%8E%87%E5%B7%A5%E5%85%B7)、[開發自測相關](https://github.com/Trinea/android-open-project#%E4%BA%8C%E5%BC%80%E5%8F%91%E8%87%AA%E6%B5%8B%E7%9B%B8%E5%85%B3)、[測試工具](https://github.com/Trinea/android-open-project#%E4%B8%89%E6%B5%8B%E8%AF%95%E5%B7%A5%E5%85%B7)、[開發及編譯環境](https://github.com/Trinea/android-open-project#%E5%9B%9B%E5%BC%80%E5%8F%91%E5%8F%8A%E7%BC%96%E8%AF%91%E7%8E%AF%E5%A2%83)、[其他](https://github.com/Trinea/android-open-project#%E4%BA%94%E5%85%B6%E4%BB%96)*
17 | [Android開源項目第五篇——優秀個人和團體篇](https://github.com/Trinea/android-open-project#%E7%AC%AC%E4%BA%94%E9%83%A8%E5%88%86)
18 | * 樂于分享並且有一些很不錯的開源項目的[個人](https://github.com/Trinea/android-open-project#%E4%B8%80%E4%B8%AA%E4%BA%BA)和[組織](https://github.com/Trinea/android-open-project#%E4%BA%8C%E7%BB%84%E7%BB%87),包括JakeWharton、Chris Banes、Koushik Dutta等大牛*
19 |
20 | ## 第一部分 個性化控件(View)
21 | 主要介紹那些不錯個性化的View,包括ListView、ActionBar、Menu、ViewPager、Gallery、GridView、ImageView、ProgressBar、TextView、ScrollView、TimeView、TipView、FlipView、ColorPickView、GraphView、UI Style等等。
22 | 、其他
23 | #### 一、ListView
24 | 1. android-pulltorefresh
25 | 一個強大的拉動刷新開源項目,支持各種控件下拉刷新,ListView、ViewPager、WevView、ExpandableListView、GridView、ScrollView、Horizontal ScrollView、Fragment上下左右拉動刷新,比下面johannilsson那個只支持ListView的強大的多。並且他實現的下拉刷新ListView在item不足一屏情況下也不會顯示刷新提示,體驗更好。
26 | 項目地址:https://github.com/chrisbanes/Android-PullToRefresh
27 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refreshview-demo.apk?raw=true
28 | APP示例:新浪微博各個頁面
29 |
30 | 1. android-pulltorefresh-listview
31 | 下拉刷新ListView
32 | 項目地址:https://github.com/johannilsson/android-pulltorefresh
33 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refresh-listview-demo.apk?raw=true
34 | PS:這個被很多人使用的項目實際有不少bug,推薦使用上面的android-pulltorefresh
35 |
36 | 1. DropDownListView
37 | 下拉刷新及滑動到底部加載更多ListView
38 | 項目地址:https://github.com/Trinea/AndroidCommon
39 | Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo
40 | 文檔介紹:http://www.trinea.cn/android/dropdown-to-refresh-and-bottom-load-more-listview/
41 |
42 | 1. DragSortListView
43 | 拖動排序的ListView,同時支持ListView滑動item刪除,各個Item高度不一、單選、複選、CursorAdapter做爲適配器、拖動背景變化等
44 | 項目地址:https://github.com/bauerca/drag-sort-listview
45 | Demo地址:https://play.google.com/store/apps/details?id=com.mobeta.android.demodslv
46 | APP示例:Wordpress Android
47 |
48 | 1. SwipeListView
49 | 支持定義ListView左右滑動事件,支持左右滑動位移,支持定義動畫時間
50 | 項目地址:https://github.com/47deg/android-swipelistview
51 | Demo地址:https://play.google.com/store/apps/details?id=com.fortysevendeg.android.swipelistview
52 | APP示例:微信
53 |
54 | 1. Android-SwipeToDismiss
55 | 滑動Item消失ListView
56 | 項目地址:https://github.com/romannurik/Android-SwipeToDismiss
57 | 支持3.0以下版本見:https://github.com/JakeWharton/SwipeToDismissNOA
58 | Demo地址:https://github.com/JakeWharton/SwipeToDismissNOA/SwipeToDismissNOA.apk/qr_code
59 |
60 | 1. StickyListHeaders
61 | GroupName滑動到頂端時會固定不動直到另外一個GroupName到達頂端的ExpandListView,支持快速滑動,支持Android2.3及以上
62 | 項目地址:https://github.com/emilsjolander/StickyListHeaders
63 | APP示例:Android 4.0聯系人
64 | 效果圖:
65 |
66 | 1. pinned-section-listview
67 | GroupName滑動到頂端時會固定不動直到另外一個GroupName到達頂端的ExpandListView
68 | 項目地址:https://github.com/beworker/pinned-section-listview
69 | 效果圖:
70 |
71 | 1. PinnedHeaderListView
72 | GroupName滑動到頂端時會固定不動直到另外一個GroupName到達頂端的ExpandListView
73 | 項目地址:https://github.com/JimiSmith/PinnedHeaderListView
74 |
75 | 1. QuickReturnHeader
76 | ListView/ScrollView的header或footer,當向下滾動時消失,向上滾動時出現
77 | 項目地址:https://github.com/ManuelPeinado/QuickReturnHeader
78 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/quick-return-header-demo.apk?raw=true
79 | APP示例:google plus
80 |
81 | 1. IndexableListView
82 | ListView右側會顯示item首字母快捷索引,點擊可快速滑動到某個item
83 | 項目地址:https://github.com/woozzu/IndexableListView
84 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/indexable-listview.apk?raw=true
85 | APP示例:微信通訊錄、小米聯系人
86 |
87 | 1. CustomFastScrollView
88 | ListView快速滑動,同時屏幕中間PopupWindows顯示滑動到的item內容或首字母
89 | 項目地址:https://github.com/nolanlawson/CustomFastScrollViewDemo
90 | 效果圖:
91 |
92 | 1. Android-ScrollBarPanel
93 | ListView滑動時固定的Panel指示顯示在scrollbar旁邊
94 | 項目地址:https://github.com/rno/Android-ScrollBarPanel
95 | 效果展示:https://github.com/rno/Android-ScrollBarPanel/raw/master/demo_capture.png
96 |
97 | 1. SlideExpandableListView
98 | 用戶點擊listView item滑出固定區域,其他item的區域收縮
99 | 項目地址:https://github.com/tjerkw/Android-SlideExpandableListView
100 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/slide-expandable-listView-demo.apk?raw=true
101 |
102 | 1. JazzyListView
103 | ListView及GridView item以特殊動畫效果進入屏幕,效果包括grow、cards、curl、wave、flip、fly等等
104 | 項目地址:https://github.com/twotoasters/JazzyListView
105 | Demo地址:https://play.google.com/store/apps/details?id=com.twotoasters.jazzylistview.sample
106 | 效果展示:http://lab.hakim.se/scroll-effects/
107 |
108 | 1. ListViewAnimations
109 | 帶Item顯示動畫的ListView,動畫包括底部飛入、其他方向斜飛入、下層飛入、漸變消失、滑動刪除等
110 | 項目地址:https://github.com/nhaarman/ListViewAnimations
111 | Demo地址:https://play.google.com/store/apps/details?id=com.haarman.listviewanimations
112 | 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
113 |
114 | 1. DevsmartLib-Android
115 | 橫向ListView
116 | 項目地址:https://github.com/dinocore1/DevsmartLib-Android
117 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/horizontal-listview-demo.apk?raw=true
118 |
119 | 1. HorizontalVariableListView
120 | 支持Item寬度不一致的ListView
121 | 項目地址:https://github.com/sephiroth74/HorizontalVariableListView
122 |
123 | 1. LinearListView
124 | 用LinearLayout實現的ListView,可解決多個ListView並且等問題。目前自己也有需要,等親自嘗試過後會再具體介紹
125 | 項目地址:https://github.com/frankiesardo/LinearListView
126 |
127 | 1. MultiChoiceAdapter
128 | 支持多選的ListView Adapter
129 | 項目地址:https://github.com/ManuelPeinado/MultiChoiceAdapter
130 | Demo地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.multichoiceadapter.demo
131 |
132 | 1. EnhancedListView
133 | 支持橫向滑動滑動刪除列表項以及撤銷刪除的ListView,該項目的前身是[SwipeToDismissUndoList](https://github.com/timroes/SwipeToDismissUndoList)
134 | 項目地址:https://github.com/timroes/EnhancedListView
135 | Demo地址:https://play.google.com/store/apps/details?id=de.timroes.android.listviewdemo&rdid=de.timroes.android.listviewdemo
136 |
137 | 1. ListBuddies
138 | 自動滾動的雙列ListView ,兩個ListView滾動速度不一致,有視差效果
139 | 項目地址:https://github.com/jpardogo/ListBuddies
140 | Demo地址:https://play.google.com/store/apps/details?id=com.jpardogo.android.listbuddies
141 | 效果展示:
142 |
143 |
144 | #### 二、ActionBar
145 | 1. ActionBarSherlock
146 | 爲Android所有版本提供統一的ActionBar,解決4.0以下ActionBar的適配問題
147 | 項目地址:https://github.com/JakeWharton/ActionBarSherlock
148 | Demo地址:https://play.google.com/store/apps/details?id=com.actionbarsherlock.sample.demos
149 | APP示例:太多了。。現在連google都在用
150 |
151 | 1. ActionBar-PullToRefresh
152 | 下拉刷新,ActionBar出現加載中提示
153 | 項目地址:https://github.com/chrisbanes/ActionBar-PullToRefresh
154 | Demo地址:https://play.google.com/store/apps/details?id=uk.co.senab.actionbarpulltorefresh.samples.stock
155 | APP示例:Gmail,Google plus,知乎等
156 |
157 | 1. FadingActionBar
158 | ListView向下滾動逐漸顯現的ActionBar
159 | 項目地址:https://github.com/ManuelPeinado/FadingActionBar
160 | Demo地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.fadingactionbar.demo
161 | APP示例:google music,知乎
162 |
163 | 1. NotBoringActionBar
164 | google music下拉收縮的ActionBar
165 | 項目地址:https://github.com/flavienlaurent/NotBoringActionBar
166 | Demo地址:http://flavienlaurent.com/blog/2013/11/20/making-your-action-bar-not-boring/
167 | APP示例:Google音樂
168 |
169 | 1. RefreshActionItem
170 | 帶進度顯示和刷新按鈕的ActionBar
171 | 項目地址:https://github.com/ManuelPeinado/RefreshActionItem
172 | Demo地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.refreshactionitem.demo
173 | APP示例:The New York Times,DevAppsDirect.
174 |
175 | 1. GlassActionBar
176 | 類似玻璃的有一定透明度的ActionBar
177 | 項目地址:https://github.com/ManuelPeinado/GlassActionBar
178 | Demo地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.glassactionbardemo
179 | APP示例:google music
180 |
181 |
182 | #### 三、Menu
183 | 1. MenuDrawer
184 | 滑出式菜單,通過拖動屏幕邊緣滑出菜單,支持屏幕上下左右劃出,支持當前View處于上下層,支持Windows邊緣、ListView邊緣、ViewPager變化劃出菜單等。
185 | 項目地址:https://github.com/SimonVT/android-menudrawer
186 | Demo地址:http://simonvt.github.io/android-menudrawer/
187 | APP示例:Gmail、Google Music等大部分google app
188 |
189 | 1. SlidingMenu
190 | 滑出式菜單,通過拖動屏幕邊緣滑出菜單,支持屏幕左右劃出,支持菜單zoom、scale、slide up三種動畫樣式出現。
191 | 項目地址:https://github.com/jfeinstein10/SlidingMenu
192 | Demo地址:https://play.google.com/store/apps/details?id=com.slidingmenu.example
193 | 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
194 | MenuDrawer和SlidingMenu比較:SlidingMenu支持菜單動畫樣式出現,MenuDrawer支持菜單view處于內容的上下層
195 |
196 | 1. ArcMenu
197 | 支持類似Path的左下角動畫旋轉菜單及橫向劃出菜單、圓心彈出菜單
198 | 項目地址:https://github.com/daCapricorn/ArcMenu
199 | APP示例:Path
200 | 效果圖:
201 | https://dl.dropboxusercontent.com/u/11369687/preview1.png
202 | https://dl.dropboxusercontent.com/u/11369687/raymenu.png
203 |
204 | 1. android-satellite-menu
205 | 類似Path的左下角動畫旋轉菜單
206 | 項目地址:https://github.com/siyamed/android-satellite-menu
207 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/satellite-menu-demo.apk?raw=true
208 | APP示例:Path
209 |
210 | 1. radial-menu-widget
211 | 圓形菜單,支持二級菜單
212 | 項目地址:https://code.google.com/p/radial-menu-widget/
213 | 效果圖:http://farm8.staticflickr.com/7377/11621125154_d1773c2dcc_o.jpg
214 |
215 | 1. Android Wheel Menu
216 | 圓形旋轉選取菜單
217 | 項目地址:https://github.com/anupcowkur/Android-Wheel-Menu
218 | 效果圖:
219 |
220 | 1. FoldingNavigationDrawer
221 | 滑動並以折疊方式打開菜單
222 | 項目地址:https://github.com/tibi1712/FoldingNavigationDrawer-Android
223 | 使用介紹:https://play.google.com/store/apps/details?id=com.ptr.folding.sample
224 | 效果圖:
225 |
226 | 1. AndroidResideMenu
227 | 仿 Dribbble 的邊欄菜單
228 | 項目地址:https://github.com/SpecialCyCi/AndroidResideMenu
229 | 效果圖:
230 |
231 |
232 | #### 四、ViewPager 、Gallery
233 | 1. Android-ViewPagerIndicator
234 | 配合ViewPager使用的Indicator,支持各種位置和樣式
235 | 項目地址:https://github.com/JakeWharton/Android-ViewPagerIndicator
236 | Demo地址:https://play.google.com/store/apps/details?id=com.viewpagerindicator.sample
237 | APP示例:太多了。。
238 |
239 | 1. JazzyViewPager
240 | 支持Fragment切換動畫的ViewPager,動畫包括轉盤、淡入淡出、翻頁、層疊、旋轉、方塊、翻轉、放大縮小等
241 | 項目地址:https://github.com/jfeinstein10/JazzyViewPager
242 | Demo地址:https://github.com/jfeinstein10/JazzyViewPager/blob/master/JazzyViewPager.apk?raw=true
243 | 效果類似桌面左右切換的各種效果,不過桌面並非用ViewPager實現而已
244 |
245 | 1. Android-DirectionalViewPager
246 | 支持橫向和縱向(垂直)的ViewPager
247 | 項目地址:https://github.com/JakeWharton/Android-DirectionalViewPager
248 | Demo地址:https://market.android.com/details?id=com.directionalviewpager.sample
249 |
250 | 1. android-pulltorefresh
251 | 支持下拉刷新的ViewPager
252 | 項目地址:https://github.com/chrisbanes/Android-PullToRefresh
253 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refreshview-demo.apk?raw=true
254 | APP示例:新浪微博各個頁面
255 |
256 | 1. FancyCoverFlow
257 | 支持Item切換動畫效果的類似Gallery View
258 | 項目地址:https://github.com/davidschreiber/FancyCoverFlow
259 | Demo地址:https://play.google.com/store/apps/details?id=at.technikum.mti.fancycoverflow.samples
260 | 效果圖:
261 |
262 | 1. AndroidTouchGallery
263 | 支持雙擊或雙指縮放的Gallery(用ViewPager實現),相比下面的PhotoView,在被放大後依然能滑到下一個item,並且支持直接從url和文件中獲取圖片,
264 | 項目地址:https://github.com/Dreddik/AndroidTouchGallery
265 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/touch-gallery-demo.apk?raw=true
266 | APP示例:類似微信中查看聊天記錄圖片時可雙擊放大,並且放大情況下能正常左右滑動到前後圖片
267 |
268 | 1. Android Auto Scroll ViewPager
269 | Android自動滾動 輪播循環的ViewPager
270 | 項目地址:https://github.com/Trinea/android-auto-scroll-view-pager
271 | Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo
272 | 文檔介紹:http://www.trinea.cn/android/auto-scroll-view-pager/
273 |
274 | 1. Salvage view
275 | 帶View緩存的Viewpager PagerAdapter,很方便使用
276 | 項目地址:https://github.com/JakeWharton/salvage
277 |
278 | 1. Android PagerSlidingTabStrip
279 | 配合ViewPager使用的Indicator,支持ViewPager Scroll時Indicator聯動
280 | 項目地址:https://github.com/astuetz/PagerSlidingTabStrip
281 | Demo地址:https://play.google.com/store/apps/details?id=com.astuetz.viewpager.extensions.sample
282 |
283 | 1. ViewPager3D
284 | ViewPager3D效果
285 | 項目地址:https://github.com/inovex/ViewPager3D
286 |
287 |
288 | #### 五、GridView
289 | 1. StaggeredGridView
290 | 允許非對齊行的GridView,類似Pinterest的瀑布流,並且跟ListView一樣自帶View緩存,繼承自ViewGroup
291 | 項目地址:https://github.com/maurycyw/StaggeredGridView
292 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/staggered-gridview-demo.apk?raw=true
293 | APP示例:Pinterest等
294 |
295 | 1. AndroidStaggeredGrid
296 | 允許非對齊行的GridView,類似Pinterest的瀑布流,繼承自AbsListView
297 | 項目地址:https://github.com/etsy/AndroidStaggeredGrid
298 | APP示例:Pinterest等
299 |
300 | 1. PinterestLikeAdapterView
301 | 允許非對齊行的GridView,類似Pinterest的瀑布流,允許下拉刷新
302 | 項目地址:https://github.com/GDG-Korea/PinterestLikeAdapterView
303 | APP示例:Pinterest等
304 |
305 | 1. DraggableGridView
306 | Item可拖動交換位置的GridView,實際是自己繼承ViewGroup實現,類似桌面的單屏效果,可屏幕自動上下滾動進行Item移動交換,多屏效果見下面PagedDragDropGrid
307 | 項目地址:https://github.com/thquinn/DraggableGridView
308 | Demo地址:https://github.com/thquinn/DraggableGridView/blob/master/bin/DraggableGridViewSample.apk?raw=true
309 |
310 | 1. StickyGridHeaders
311 | GroupName滑動到頂端時會固定不動直到另外一個GroupName到達頂端的GridView
312 | 項目地址:https://github.com/TonicArtos/StickyGridHeaders
313 | 效果圖:
314 |
315 | 1. PagedDragDropGrid
316 | Item可拖動交換位置、拖動刪除的自定義控件,實際是自己繼承ViewGroup實現,類似桌面的多屏效果,可拖動到屏幕邊緣,屏幕自動左右滾動進行Item移動交換,可拖動進行刪除,單屏效果見上面DraggableGridView
317 | 項目地址:https://github.com/mrKlar/PagedDragDropGrid
318 | Demo視頻:http://youtu.be/FYTSRfthSuQ
319 |
320 | 1. Android-DraggableGridViewPager
321 | Item可拖動交換位置的GridView,實際是自己繼承ViewGroup實現,類似桌面的多屏效果,可屏幕自動左右滾動進行Item移動交換,單屏效果見上面DraggableGridView
322 | 項目地址:https://github.com/zzhouj/Android-DraggableGridViewPager
323 | Demo地址:https://github.com/Trinea/trinea-download/blob/master/draggable-grid-viewpager-demo.apk?raw=true
324 |
325 |
326 | #### 六、ImageView
327 | 1. PhotoView
328 | 支持雙擊或雙指縮放的ImageView,在ViewPager等Scrolling view中正常使用,相比上面的AndroidTouchGallery,不僅支持ViewPager,同時支持單個ImageView
329 | 項目地址:https://github.com/chrisbanes/PhotoView
330 | Demo地址:https://play.google.com/store/apps/details?id=uk.co.senab.photoview.sample
331 | APP示例:photup
332 |
333 | 1. android-gif-drawable
334 | 支持gif顯示的view,用jni實現的,編譯生成so庫後直接xml定義view即可,而且本身不依賴于其他開源項目所以相對下面的ImageViewEx簡單的多
335 | 項目地址:https://github.com/koral--/android-gif-drawable
336 |
337 | 1. ImageViewEx
338 | 支持Gif顯示的ImageView
339 | 項目地址:https://github.com/frapontillo/ImageViewEx
340 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/imageviewex-demo.apk?raw=true
341 | 依賴很多,編譯過程很繁瑣!|_|!
342 |
343 | 1. RoundedImageView
344 | 帶圓角的ImageView
345 | 項目地址:https://github.com/vinc3m1/RoundedImageView
346 | 效果圖:
347 |
348 | 1. ColorArt
349 | 根據圖片的均色設置背景色顯示文字和圖片,類似itune11中效果
350 | 項目地址:https://github.com/MichaelEvans/ColorArt
351 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/color-art-demo.apk?raw=true
352 |
353 | 1. CircleImageView
354 | 圓形的ImageView
355 | 項目地址:https://github.com/hdodenhof/CircleImageView
356 | 效果圖:
357 |
358 | 1. ImageViewZoom
359 | 支持放大和平移的ImageView
360 | 項目地址:https://github.com/sephiroth74/ImageViewZoom
361 | APP示例:https://play.google.com/store/apps/details?id=com.aviary.android.feather
362 |
363 | 1. KenBurnsView
364 | 實現Ken Burns effect效果,達到身臨其境效果的ImageView
365 | 項目地址:https://github.com/flavioarfaria/KenBurnsView
366 |
367 | 1. CustomShapeImageView
368 | 各種形狀的ImageView, 相比上面的圓形ImageView,多了更多形狀
369 | 項目地址:https://github.com/MostafaGazar/CustomShapeImageView
370 | 效果圖:
371 |
372 |
373 | #### 七、ProgressBar
374 | 1. SmoothProgressBar
375 | 水平進度條
376 | 項目地址:https://github.com/castorflex/SmoothProgressBar
377 | Demo地址:https://play.google.com/store/apps/details?id=fr.castorflex.android.smoothprogressbar.sample
378 |
379 | 1. ProgressWheel
380 | 支持進度顯示的圓形ProgressBar
381 | 項目地址:https://github.com/Todd-Davies/ProgressWheel
382 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/progress-wheel-demo.apk?raw=true
383 |
384 | 1. android-square-progressbar
385 | 在圖片周圍顯示進度
386 | 項目地址:https://github.com/mrwonderman/android-square-progressbar
387 | Demo地址:https://play.google.com/store/apps/details?id=net.yscs.android.square_progressbar_example
388 | APP示例:square
389 | 效果圖:
390 |
391 | 1. HoloCircularProgressBar
392 | Android4.1 時鍾App樣式
393 | 項目地址:https://github.com/passsy/android-HoloCircularProgressBar
394 | APP示例:Android4.1時鍾App
395 | 效果圖:
396 |
397 | 1. ProgressButton
398 | 通過圖釘的不同狀態顯示進度
399 | 項目地址:https://github.com/f2prateek/progressbutton
400 | 文檔介紹:http://f2prateek.com/progressbutton/
401 | 效果圖:
402 |
403 | 1. GoogleProgressBar
404 | 類似google 多個圓形卡片翻轉的progressBar
405 | 項目地址:https://github.com/jpardogo/GoogleProgressBar
406 | 效果圖:
407 |
408 | 1. TH-ProgressButton
409 | 帶圓形進度顯示的按鈕
410 | 項目地址;https://github.com/torryharris/TH-ProgressButton
411 | 效果圖:   
412 |
413 | 1. NumberProgressBar
414 | 帶數字進度的進度條
415 | 項目地址:https://github.com/daimajia/NumberProgressBar
416 | 效果圖:
417 |
418 |
419 | #### 八、TextView
420 | 包括TextView及所有繼承自TextView控件,如EditText、Button、RadioButton
421 |
422 | 1. android-flowtextview
423 | 文字自動環繞其他View的Layout
424 | 項目地址:https://code.google.com/p/android-flowtextview/
425 | 效果圖:http://i949.photobucket.com/albums/ad332/vostroman1500/1.png
426 |
427 | 1. Android Form EditText
428 | 驗證輸入合法性的編輯框,支持輸入、英文、ip、url等多種正則驗證
429 | 項目地址:https://github.com/vekexasia/android-edittext-validator
430 | Demo地址:https://play.google.com/store/apps/details?id=com.andreabaccega.edittextformexample
431 |
432 | 1. Emojicon
433 | 支持emojis的TextView和EditText
434 | 項目地址:https://github.com/rockerhieu/emojicon
435 | 文檔地址:http://rockerhieu.com/emojicon/
436 |
437 | 1. android-circlebutton
438 | Android圓形按鈕,實際實現是繼承自ImageView
439 | 項目地址:https://github.com/markushi/android-circlebutton
440 | Demo地址:https://github.com/markushi/android-circlebutton/blob/master/example/example.apk
441 |
442 | 1. Segmented Radio Buttons for Android
443 | iOS’s segmented controls的實現
444 | 項目地址:https://github.com/vinc3m1/android-segmentedradiobutton
445 | Demo地址:https://github.com/thquinn/DraggableGridView/blob/master/bin/DraggableGridViewSample.apk?raw=true
446 | 效果圖:
447 |
448 | 1. Chips EditText Library
449 | 支持國家名字聯想從而選擇顯示該國國旗的EditText,實際就是通過SpannableStringBuilder實現
450 | 項目地址:https://github.com/kpbird/chips-edittext-library
451 | Demo地址:https://github.com/kpbird/chips-edittext-library/tree/master/ChipsEditTextDemo/bin
452 |
453 | 1. AutoFitTextView
454 | 可固定邊界內容字體大小自適應的TextView
455 | 項目地址:https://github.com/grantland/android-autofittextview
456 |
457 | 1. Shimmer for Android
458 | 文字發淡光的TextView
459 | 項目地址:https://github.com/RomainPiel/Shimmer-android
460 |
461 | 1. Titanic
462 | 可以顯示水位上升下降(不知道該怎麽描述 囧)的TextView
463 | 項目地址:https://github.com/RomainPiel/Titanic
464 | 效果圖:
465 |
466 | 1. android-iconify
467 | 提供帶Icon的TextView,Menu,Button等
468 | 項目地址:https://github.com/JoanZapata/android-iconify
469 |
470 | 1. Calligraphy
471 | 讓我們在android開發中使用自定義字體變得更加簡單
472 | 項目地址 :https://github.com/chrisjenx/Calligraphy
473 | 效果圖:
474 |
475 | 1. CreditsRoll
476 | 類似星球大戰字幕效果的TextView
477 | 項目地址:https://github.com/frakbot/CreditsRoll
478 |
479 | 1. android-process-buton
480 | 帶加載或提交進度的Button
481 | 項目地址:https://github.com/dmytrodanylyk/android-process-buton
482 |
483 |
484 | #### 九、ScrollView
485 | 1. Discrollview
486 | 支持滾動時Item淡入淡出,平移,縮放效果的ScrollView
487 | 項目地址:https://github.com/flavienlaurent/discrollview
488 | Demo地址:https://github.com/flavienlaurent/discrollview/raw/master/sample.apk
489 |
490 | 1. PullScrollView
491 | 仿照新浪微博Android客戶端個人中心的ScrollView,下拉背景伸縮回彈效果。
492 | 項目地址:https://github.com/MarkMjw/PullScrollView
493 | 效果圖:
494 |
495 | 1. ParallaxScrollView
496 | 支持視差滾動的ScrollView ,背景圖片的滾動速度小于ScrollView中子控件的滾動速度
497 | 項目地址:https://github.com/chrisjenx/ParallaxScrollView
498 | 示例APK地址:https://github.com/chrisjenx/ParallaxScrollView/downloads
499 |
500 |
501 | #### 十、TimeView
502 | 包括TimePicker、DatePicker、CalendarView、Clock等時間相關控件
503 |
504 | 1. android-times-square
505 | Android日曆時間部件,支持選取單個日期,多個日期,及日期區間段和對話框形式顯示
506 | 項目地址:https://github.com/square/android-times-square
507 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/times-square-demo.apk?raw=true
508 |
509 | 1. android-calendar-card
510 | 日曆
511 | 項目地址:https://github.com/kenumir/android-calendar-card
512 | Demo地址:https://play.google.com/store/apps/details?id=com.wt.calendarcardsample
513 | 效果圖:
514 |
515 | 1. AndroidWheel
516 | Android Wheel支持城市、多種日期時間、密碼、圖片
517 | 項目地址:https://github.com/sephiroth74/AndroidWheel
518 | 效果圖:
519 |
520 | 1. GoogleDateTimePickers
521 | 時間選擇部件
522 | 項目地址:https://github.com/Mirkoddd/GoogleDateTimePickers
523 | 文檔地址:https://play.google.com/store/apps/details?id=com.mirko.sample&hl=it
524 |
525 |
526 | #### 十一、TipView
527 | 包括Toast、角標、UndoBar等提示性控件
528 |
529 | 1. Crouton
530 | 豐富樣式的Toast,允許alert、comfirm、info樣式及點擊消失樣式,允許設置Toast顯示時間,允許自定義View。 本文32. SuperToasts爲其擴展版
531 | 項目地址:https://github.com/keyboardsurfer/Crouton
532 | Demo地址:http://play.google.com/store/apps/details?id=de.keyboardsurfer.app.demo.crouton
533 |
534 | 1. supertooltips
535 | 帶動畫效果的Tips顯示
536 | 項目地址:https://github.com/nhaarman/supertooltips
537 | Demo地址:https://play.google.com/store/apps/details?id=com.haarman.supertooltips
538 |
539 | 1. Android ViewBadger
540 | 爲其他View添加角標等
541 | 項目地址:https://github.com/jgilfelt/android-viewbadger
542 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/android-viewbadger.apk?raw=true
543 | 效果圖:
544 |
545 |
546 | 1. SuperToasts
547 | 更豐富樣式的toast,支持Button、Progress、Horizontal Progress樣式、支持進入動畫、支持撤銷及其動畫設置
548 | 項目地址:https://github.com/JohnPersano/SuperToasts
549 | Demo地址:https://play.google.com/store/apps/details?id=com.supertoastsdemo
550 | 效果圖:
551 |
552 | 1. UndoBar
553 | 屏幕底部顯示取消或是確認的PopupWindows
554 | 項目地址:https://github.com/soarcn/UndoBar
555 | 效果圖:
556 |
557 | 1. UndoBar
558 | 屏幕底部顯示取消或是確認某操作
559 | 項目地址:https://github.com/jenzz/Android-UndoBar
560 | 效果圖:
561 |
562 |
563 | #### 十二、FlipView
564 | 1. android-flip
565 | 類似Flipboard翻轉動畫的實現
566 | 項目地址:https://github.com/openaphid/android-flip
567 | Demo地址:https://github.com/openaphid/android-flip/blob/master/FlipView/Demo/APK/Aphid-FlipView-Demo.apk?raw=true
568 | APP示例:flipboard
569 |
570 | 1. FlipImageView
571 | 支持x、y、z及動畫選擇的翻轉動畫的實現
572 | 項目地址:https://github.com/castorflex/FlipImageView
573 | Demo地址:https://play.google.com/store/apps/details?id=fr.castorflex.android.flipimageview
574 |
575 |
576 | #### 十三、ColorPickView
577 | 1. ColorPickerView
578 | 顔色選擇器,支持PopupWindows或新的Activity中打開
579 | 項目地址:https://code.google.com/p/color-picker-view/
580 | 效果圖:
581 |
582 | 1. HoloColorPicker
583 | 顔色選擇器
584 | 項目地址:https://github.com/LarsWerkman/HoloColorPicker
585 | Demo地址:https://docs.google.com/file/d/0BwclyDTlLrdXRzVnTGJvTlRfU2s/edit
586 |
587 | 1. ColorPickerPreference
588 | 顔色選擇器
589 | 項目地址:https://github.com/attenzione/android-ColorPickerPreference
590 | 效果圖:
591 |
592 |
593 | #### 十四、GraphView
594 | 1. achartengine
595 | 強大的圖表繪制工具,支持折線圖、面積圖、散點圖、時間圖、柱狀圖、條圖、餅圖、氣泡圖、圓環圖、範圍(高至低)條形圖、撥號圖/表、立方線圖及各種圖的結合
596 | 項目地址:https://code.google.com/p/achartengine/
597 | 官方網站:http://www.achartengine.org/
598 | 效果圖:
599 | http://www.achartengine.org/dimages/sales_line_and_area_chart.png
600 | http://www.achartengine.org/dimages/temperature_range_chart.png
601 | http://www.achartengine.org/dimages/combined_chart.png
602 | http://www.achartengine.org/dimages/budget_chart.png
603 | APP示例:Wordpress Android,Google Analytics
604 |
605 | 1. GraphView
606 | 繪制圖表和曲線圖的View,可用于Android上的曲形圖、柱狀圖、波浪圖展示
607 | 項目地址:https://github.com/jjoe64/GraphView
608 | Demo工程:https://github.com/jjoe64/GraphView-Demos
609 | Demo地址:https://play.google.com/store/apps/details?id=com.sothree.umano
610 | APP示例:Wordpress Android,Google Analytics
611 |
612 | 1. HoloGraphLibrary
613 | 繪制現狀圖、柱狀圖、餅狀圖
614 | 項目地址:https://bitbucket.org/danielnadeau/holographlibrary/src
615 | 文檔介紹:https://bitbucket.org/danielnadeau/holographlibrary/wiki/Home
616 |
617 |
618 | #### 十五、UI Style
619 | 不同樣式的系統UI風格,如IOS、Bootstrap風格
620 |
621 | 1. UITableView
622 | ios風格控件,包括Button、ListView、TableView
623 | 項目地址:https://github.com/thiagolocatelli/android-uitableview
624 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/ui-tableview-demo.apk?raw=true
625 |
626 | 1. ATableView
627 | ios風格控件
628 | 項目地址:https://github.com/dmacosta/ATableView
629 | Demo地址:https://play.google.com/store/apps/details?id=com.nakardo.atableview.demo
630 |
631 | 1. Cards-UI
632 | 卡片式View,支持單個卡片,item爲卡片的ListView
633 | 項目地址:https://github.com/afollestad/Cards-UI
634 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/cards-ui-demo.apk?raw=true
635 |
636 | 1. cardslib
637 | 卡片式View,支持單個卡片,item爲卡片的ListView和GridView
638 | 項目地址:https://github.com/gabrielemariotti/cardslib
639 | Demo地址:https://play.google.com/store/apps/details?id=it.gmariotti.cardslib.demo
640 |
641 | 1. Android-Bootstrap
642 | Bootstrap 風格的按鈕
643 | 項目地址: https://github.com/Bearded-Hen/Android-Bootstrap
644 | 效果圖:
645 |
646 |
647 | #### 十六、其他
648 | 1. SwipeBackLayout
649 | 左右或向上滑動返回的Activity
650 | 項目地址:https://github.com/Issacw0ng/SwipeBackLayout
651 | Demo地址:https://play.google.com/store/apps/details?id=me.imid.swipebacklayout.demo
652 | APP示例:知乎
653 |
654 | 1. android-styled-dialogs
655 | 可自定義樣式的dialog,默認與Holo主題樣式一致,在Android2.2以上同一樣式
656 | 項目地址:https://github.com/inmite/android-styled-dialogs
657 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/styled-dialogs-demo.apk?raw=true
658 |
659 | 1. Android Sliding Up Panel
660 | 可拖動的View,能在當前Activity上扶起一個可拖動的Panel
661 | 項目地址:https://github.com/umano/AndroidSlidingUpPanel
662 | Demo地址:https://play.google.com/store/apps/details?id=com.sothree.umano
663 | APP示例:Google Music精簡播放欄
664 |
665 | 1. AndroidWheel
666 | Android Wheel支持城市、多種日期時間、密碼、圖片
667 | 項目地址:https://github.com/sephiroth74/AndroidWheel
668 | 效果圖:
669 |
670 | 1. TableFixHeaders
671 | 第一列固定的Table
672 | 項目地址:https://github.com/InQBarna/TableFixHeaders
673 | Demo地址:http://bit.ly/13buAIq
674 |
675 | 1. Inscription
676 | 可用于展示應用change和new feature信息
677 | 項目地址:https://github.com/MartinvanZ/Inscription
678 |
679 | 1. ActivityTransition
680 | Activity切換動畫,包括漸變、flip、某個位置進入等等
681 | 項目地址:https://github.com/ophilbert/ActivityTransition
682 | 使用介紹:https://github.com/jfeinstein10/JazzyViewPager/blob/master/JazzyViewPager.apk?raw=true
683 | 效果圖:類似桌面左右切換的各種效果,不過桌面並非用ViewPager實現而已
684 |
685 | 1. GlowPadBackport
686 | 將Android4.2的鎖屏界面解鎖擴展到Android1.6及1.6+
687 | 項目地址:https://github.com/rock3r/GlowPadBackport
688 | Demo地址:https://play.google.com/store/apps/details?id=net.sebastianopoggi.samples.ui.GlowPadSample
689 | 效果圖:
690 |
691 | 1. GlowPadView
692 | Android4鎖屏界面解鎖
693 | 項目地址:https://github.com/nadavfima/GlowPadView
694 | 效果圖:https://raw.github.com/nadavfima/GlowPadView/master/example.png
695 |
696 | 1. android-lockpattern
697 | Android的圖案密碼解鎖
698 | 項目地址:https://code.google.com/p/android-lockpattern/
699 | Demo地址:https://play.google.com/store/apps/details?id=group.pals.android.lib.ui.lockpattern.demo
700 | 使用介紹:https://code.google.com/p/android-lockpattern/wiki/QuickUse
701 | 示例APP:Android開機的圖案密碼解鎖,支付寶的密碼解鎖
702 |
703 | 1. RangeBar
704 | 類似于SeekBar,不同的是可以選擇一個範圍內的值而不是單個值
705 | 項目地址:https://github.com/edmodo/range-bar
706 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/range-bar-demo.apk?raw=true
707 | 效果圖: 
708 |
709 | 1. ChromeView
710 | 利用Chromium實現的WebView,解決各個Android版本WebView不同的問題,同時利用最新Chrome代碼
711 | 項目地址:https://github.com/pwnall/chromeview
712 |
713 | 1. Android Slider Preference Library
714 | 可添加到設置中的基于對話框的RankBar小部件
715 | 項目地址:https://github.com/jayschwa/AndroidSliderPreference
716 |
717 | 1. ShowcaseView library
718 | 用于高亮顯示應用程序的特定部分,從而突出突出重點
719 | 項目地址:https://github.com/amlcurran/ShowcaseView
720 |
721 | 1. android-segmented-control
722 | Android上的Segmented Controls,相當于RadioButton組
723 | 項目地址:https://github.com/hoang8f/android-segmented-control
724 |
725 |
726 | ## 第二部分 工具庫
727 | 主要包括那些不錯的開發庫,包括依賴注入框架、圖片緩存、網絡相關、數據庫ORM建模、Android公共庫、Android 高版本向低版本兼容、多媒體相關及其他。
728 | #### 一、依賴注入DI
729 | 通過依賴注入減少View、服務、資源簡化初始化,事件綁定等重複繁瑣工作
730 |
731 | 1. AndroidAnnotations(Code Diet)
732 | android快速開發框架
733 | 項目地址:https://github.com/excilys/androidannotations
734 | 文檔介紹:https://github.com/excilys/androidannotations/wiki
735 | 官方網站:http://androidannotations.org/
736 | 特點:(1) 依賴注入:包括view,extras,系統服務,資源等等
737 | (2) 簡單的線程模型,通過annotation表示方法運行在ui線程還是後台線程
738 | (3) 事件綁定:通過annotation表示view的響應事件,不用在寫內部類
739 | (4) REST客戶端:定義客戶端接口,自動生成REST請求的實現
740 | (5) 沒有你想象的複雜:AndroidAnnotations只是在在編譯時生成相應子類
741 | (6) 不影響應用性能:僅50kb,在編譯時完成,不會對運行時有性能影響。
742 | PS:與roboguice的比較:roboguice通過運行時讀取annotations進行反射,所以可能影響應用性能,而AndroidAnnotations在編譯時生成子類,所以對性能沒有影響
743 |
744 | 1. roboguice
745 | 幫你處理了很多代碼異常,利用annotation使得更少的代碼完成項目
746 | 項目地址:https://github.com/roboguice/roboguice
747 | 文檔介紹:https://github.com/roboguice/roboguice/wiki
748 |
749 | 1. butterknife
750 | 利用annotation幫你快速完成View的初始化,減少代碼
751 | 項目地址:https://github.com/JakeWharton/butterknife
752 | 文檔介紹:http://jakewharton.github.io/butterknife/
753 |
754 | 1. Dagger
755 | 依賴注入,適用于Android和Java
756 | 項目地址:https://github.com/square/dagger
757 | 文檔介紹:http://square.github.io/dagger/
758 |
759 |
760 | #### 二、圖片緩存
761 | 1. Android-Universal-Image-Loader
762 | 圖片緩存,目前使用最廣泛的圖片緩存,支持主流圖片緩存的絕大多數特性。
763 | 項目地址:https://github.com/nostra13/Android-Universal-Image-Loader
764 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/universal-imageloader-demo.apk?raw=true
765 | 文檔介紹:http://www.intexsoft.com/blog/item/74-universal-image-loader-part-3.html
766 |
767 | 1. picasso
768 | square開源的圖片緩存
769 | 項目地址:https://github.com/square/picasso
770 | 文檔介紹:http://square.github.io/picasso/
771 | 特點:(1)可以自動檢測adapter的重用並取消之前的下載
772 | (2)圖片變換
773 | (3)可以加載本地資源
774 | (4)可以設置占位資源
775 | (5)支持debug模式
776 |
777 | 1. ImageCache
778 | 圖片緩存,包含內存和Sdcard緩存
779 | 項目地址:https://github.com/Trinea/AndroidCommon
780 | Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo
781 | 文檔介紹:http://www.trinea.cn/android/android-imagecache/
782 | 特點:(1)支持預取新圖片,支持等待隊列
783 | (2)包含二級緩存,可自定義文件名保存規則
784 | (3)可選擇多種緩存算法(FIFO、LIFO、LRU、MRU、LFU、MFU等13種)或自定義緩存算法
785 | (4)可方便的保存及初始化恢複數據
786 | (5)支持不同類型網絡處理
787 | (6)可根據系統配置初始化緩存等
788 |
789 |
790 | #### 三、網絡相關
791 | 1. Asynchronous Http Client for Android
792 | Android異步Http請求
793 | 項目地址:https://github.com/loopj/android-async-http
794 | 文檔介紹:http://loopj.com/android-async-http/
795 | 特點:(1) 在匿名回調中處理請求結果
796 | (2) 在UI線程外進行http請求
797 | (3) 文件斷點上傳
798 | (4) 智能重試
799 | (5) 默認gzip壓縮
800 | (6) 支持解析成Json格式
801 | (7) 可將Cookies持久化到SharedPreferences
802 |
803 | 1. android-query
804 | 異步加載,更少代碼完成Android加載
805 | 項目地址:https://github.com/androidquery/androidquery 或 https://code.google.com/p/android-query/
806 | 文檔介紹:https://code.google.com/p/android-query/#Why_AQuery?
807 | Demo地址:https://play.google.com/store/apps/details?id=com.androidquery
808 | 特點:https://code.google.com/p/android-query/#Why_AQuery?
809 |
810 | 1. Async Http Client
811 | Java異步Http請求
812 | 項目地址:https://github.com/AsyncHttpClient/async-http-client
813 | 文檔介紹:http://sonatype.github.io/async-http-client/
814 |
815 | 1. Ion
816 | 支持圖片、json、http post等異步請求
817 | 項目地址:https://github.com/koush/ion
818 | 文檔介紹:https://github.com/koush/ion#more-examples
819 |
820 | 1. HttpCache
821 | Http緩存
822 | 項目地址:https://github.com/Trinea/AndroidCommon
823 | Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo
824 | 文檔介紹:http://www.trinea.cn/android/android-http-cache
825 | 特點是:(1) 根據cache-control、expires緩存http請求
826 | (2) 支持同步、異步Http請求
827 | (3) 在匿名回調中處理請求結果
828 | (4) 在UI線程外進行http請求
829 | (5) 默認gzip壓縮
830 |
831 | 1. Http Request
832 | 項目地址:https://github.com/kevinsawicki/http-request
833 | 文檔介紹:https://github.com/kevinsawicki/http-request#examples
834 |
835 | 1. okhttp
836 | square開源的http工具類
837 | 項目地址:https://github.com/square/okhttp
838 | 文檔介紹:http://square.github.io/okhttp/
839 | 特點:(1) 支持SPDY( http://zh.wikipedia.org/wiki/SPDY )協議。SPDY協議是Google開發的基于傳輸控制協議的應用層協議,通過壓縮,多路複用(一個TCP鏈接傳送網頁和圖片等資源)和優先級來縮短加載時間。
840 | (2) 如果SPDY不可用,利用連接池減少請求延遲
841 | (3) Gzip壓縮
842 | (4) Response緩存減少不必要的請求
843 |
844 | 1. Retrofit
845 | RESTFUL API設計
846 | 項目地址:https://github.com/square/retrofit
847 | 文檔介紹:http://square.github.io/retrofit/
848 |
849 | 1. RoboSpice
850 | Android異步網絡請求工具,支持緩存、REST等等
851 | 項目地址:https://github.com/stephanenicolas/robospice
852 | Demo地址:https://github.com/stephanenicolas/RoboDemo/downloads
853 |
854 |
855 | #### 四、數據庫 orm工具包
856 | orm的db工具類,簡化建表、查詢、更新、插入、事務、索引的操作
857 |
858 | 1. greenDAO
859 | Android Sqlite orm的db工具類
860 | 項目地址:https://github.com/greenrobot/greenDAO
861 | 文檔介紹:http://greendao-orm.com/documentation/
862 | 官方網站:http://greendao-orm.com/
863 | 特點:(1) 性能佳
864 | (2) 簡單易用的API
865 | (3) 內存小好小
866 | (4) 庫大小小
867 |
868 | 1. ActiveAndroid
869 | Android Sqlite orm的db工具類
870 | 項目地址:https://github.com/pardom/ActiveAndroid
871 | 文檔介紹:https://github.com/pardom/ActiveAndroid/wiki/_pages
872 |
873 | 1. Sprinkles
874 | Android Sqlite orm的db工具類
875 | 項目地址:https://github.com/emilsjolander/sprinkles
876 | 文檔介紹:http://emilsjolander.github.io/blog/2013/12/18/android-with-sprinkles/
877 | 特點:比較顯著的特點就是配合https://github.com/square/retrofit 能保存從服務器獲取的數據
878 |
879 | 1. ormlite-android
880 | 項目地址:https://github.com/j256/ormlite-android
881 | 文檔介紹:http://ormlite.com/sqlite_java_android_orm.shtml
882 |
883 |
884 | #### 五、Android公共庫
885 | 1. Guava
886 | Google的基于java1.6的類庫集合的擴展項目,包括collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O等等. 這些高質量的API可以使你的JAVa代碼更加優雅,更加簡潔
887 | 項目地址:https://code.google.com/p/guava-libraries/
888 | 文檔介紹:https://code.google.com/p/guava-libraries/wiki/GuavaExplained
889 |
890 | 1. Volley
891 | Google提供的網絡通信庫,使得網絡請求更簡單、更快速
892 | 項目地址:https://android.googlesource.com/platform/frameworks/volley
893 | Github地址:https://github.com/mcxiaoke/android-volley
894 | 文檔地址:http://commondatastorage.googleapis.com/io-2013/presentations/110%20-%20Volley-%20Easy,%20Fast%20Networking%20for%20Android.pdf
895 |
896 | 1. AndroidCommon
897 | Android公共庫
898 | 項目地址:https://github.com/Trinea/AndroidCommon
899 | Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo
900 | 文檔介紹:http://www.trinea.cn/android/android-common-lib/
901 | 包括:(1)緩存(圖片緩存、預取緩存、網絡緩存)
902 | (2) 公共View(下拉及底部加載更多ListView、底部加載更多ScrollView、滑動一頁Gallery)
903 | (3) Android常用工具類(網絡、下載、Android資源操作、shell、文件、Json、隨機數、Collection等等)
904 |
905 | 1. shipfaster
906 | 整合了Dagger Otto Retrofit Robolectric Picasso OkHttp,方便快速開發
907 | 項目地址:https://github.com/pyricau/shipfaster
908 |
909 | 1. CleanAndroidCode
910 | 整合了Dagger Otto AndroidAnnotations,方便快速開發
911 | 項目地址:https://github.com/pyricau/CleanAndroidCode
912 | 我目前也在做框架選型方面的工作,不出意外後面也會出個跟4、5類似的項目
913 |
914 |
915 | #### 六、Android 高版本向低版本兼容
916 | 1. ActionBarSherlock
917 | 爲Android所有版本提供統一的ActionBar,解決4.0以下ActionBar的適配問題
918 | 項目地址:https://github.com/JakeWharton/ActionBarSherlock
919 | Demo地址:https://play.google.com/store/apps/details?id=com.actionbarsherlock.sample.demos
920 | APP示例:太多了。。現在連google都在用
921 |
922 | 1. Nine Old Androids
923 | 將Android 3.0(Honeycomb)所有動畫API(ObjectAnimator ValueAnimator等)兼容到Android1.0
924 | 項目地址:https://github.com/JakeWharton/NineOldAndroids
925 | Demo地址:https://play.google.com/store/apps/details?id=com.jakewharton.nineoldandroids.sample
926 | 文檔介紹:http://nineoldandroids.com/
927 |
928 | 1. HoloEverywhere
929 | 將Android 3.0的Holo主題兼容到Android2.1++
930 | 項目地址:https://github.com/Prototik/HoloEverywhere
931 | Demo地址:https://raw.github.com/Prototik/HoloEverywhere/repo/org/holoeverywhere/demo/2.1.0/demo-2.1.0.apk
932 | 文檔介紹:http://android-developers.blogspot.com/2012/01/holo-everywhere.html
933 |
934 | 1. SherlockNavigationDrawer
935 | 將Android NavigationDrawer和ActionbarSherlock結合,解決4.0以下NavigationDrawer的適配問題
936 | 項目地址:https://github.com/tobykurien/SherlockNavigationDrawer
937 |
938 | 1. Notifications4EveryWhere
939 | 將Android 4.1的兼容到Android2.2++
940 | 項目地址:https://github.com/youxiachai/Notifications4EveryWhere
941 | NavigationDrawer文檔地址:http://developer.android.com/training/implementing-navigation/nav-drawer.html
942 |
943 | 1. Android Switch Widget Backport
944 | 將Android Switch和SwitchPreference的兼容到Android2.1++
945 | 項目地址:https://github.com/BoD/android-switch-backport
946 | Demo地址:https://play.google.com/store/apps/details?id=org.jraf.android.backport.switchwidget.sample
947 | 文檔介紹:https://github.com/BoD/android-switch-backport#using-the-switch
948 |
949 | 1. android-datepicker
950 | 將Android 4.0的datepicker兼容到Android2.2++
951 | 項目地址:https://github.com/SimonVT/android-datepicker
952 |
953 | 1. GlowPadBackport
954 | Android 4.2的GlowPadView向後適配到API4以上
955 | 項目地址:https://github.com/frakbot/GlowPadBackport
956 |
957 |
958 | #### 七、多媒體相關
959 | 1. cocos2d-x
960 | 跨平台的2d遊戲框架,支持Android、IOS、Linux、Windows等衆多平台
961 | 項目地址:https://github.com/cocos2d/cocos2d-x
962 | 文檔介紹:http://www.cocos2d-x.org/wiki
963 | 官方網站:http://www.cocos2d-x.org/
964 |
965 | 1. Vitamio
966 | 是一款Android與iOS平台上的全能多媒體開發框架
967 | 項目地址:https://github.com/yixia/VitamioBundle
968 | 網站介紹:http://www.vitamio.org/docs/
969 | 特點:(1) 全面支持硬件解碼與GPU渲染
970 | (2) 能夠流暢播放720P甚至1080P高清MKV,FLV,MP4,MOV,TS,RMVB等常見格式的視頻
971 | (3) 在Android與iOS上跨平台支持 MMS, RTSP, RTMP, HLS(m3u8)等常見的多種視頻流媒體協議,包括點播與直播。
972 |
973 | 1. PhotoProcessing
974 | 利用ndk處理圖片庫,支持Instafix、Ansel、Testino、XPro、Retro、BW、Sepia、Cyano、Georgia、Sahara、HDR、Rotate(旋轉)、Flip(翻轉)等各種特效
975 | 項目地址:https://github.com/lightbox/PhotoProcessing
976 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/photo-processing.apk?raw=true
977 |
978 | 1. Android StackBlur
979 | 圖片模糊效果工具類
980 | 項目地址:https://github.com/kikoso/android-stackblur
981 | Demo地址:https://github.com/kikoso/android-stackblur/blob/master/StackBlurDemo/bin/StackBlurDemo.apk?raw=true
982 | 文檔介紹:https://github.com/kikoso/android-stackblur#usage
983 |
984 | 1. Bitmap Smart Clipping using OpenCV
985 | 圖片智能裁剪保留重要部分顯示
986 | 項目地址:https://github.com/beartung/tclip-android
987 | 利用淘寶的 http://code.taobao.org/p/tclip/ 庫完成
988 | 一淘玩客正在使用的圖片裁剪,自動識別圖片中的重要區域,並且在圖片裁剪時保留重要區域
989 | 特點:(1). 能進行人臉識別。圖片中有人臉,將自動視爲人臉區域爲重要區域,將不會被裁剪掉
990 | (2).自動其它重要區域。如果圖片中未識別出人臉,則會根據特征分布計算出重區域
991 |
992 | 1. Cropper
993 | 圖片局部剪切工具,可觸摸控制選擇區域或旋轉
994 | 項目地址:https://github.com/edmodo/cropper
995 | 使用介紹:https://github.com/edmodo/cropper/wiki
996 | 效果圖:
997 |
998 | 1. android-crop
999 | 圖片裁剪Activity
1000 | 項目地址:https://github.com/jdamcd/android-crop
1001 | 效果圖:
1002 |
1003 | 1. TileView
1004 | 可分塊顯示大圖,支持2D拖動、雙擊、雙指放大、雙指捏合
1005 | 項目地址:https://github.com/moagrius/TileView
1006 | Demo地址:http://moagrius.github.io/TileView/TileViewDemo.apk
1007 |
1008 | 1. BlurEffectForAndroidDesign
1009 | 圖片模糊效果
1010 | 項目地址:https://github.com/PomepuyN/BlurEffectForAndroidDesign
1011 |
1012 | 1. android-eye
1013 | PC端網頁查看同一局域網內的手機攝像頭內容,可以用來監控哦
1014 | 項目地址:https://github.com/Teaonly/android-eye
1015 | Demo地址:https://play.google.com/store/apps/details?id=teaonly.droideye
1016 |
1017 | 1. libpng for Android
1018 | PNG圖片的jni庫,支持幾乎png的所有特性
1019 | 項目地址:https://github.com/julienr/libpng-android
1020 | 文檔地址:http://www.libpng.org/pub/png/libpng.html
1021 |
1022 | 1. android-gpuimage
1023 | 基于GPU的圖片濾鏡
1024 | 項目地址:https://github.com/CyberAgent/android-gpuimage
1025 |
1026 | 1. AndroidFaceCropper
1027 | 圖片臉部自動識別,將識別後的局部圖片返回
1028 | 項目地址:https://github.com/lafosca/AndroidFaceCropper
1029 |
1030 | 1. Android Video Crop
1031 | 利用TextureView播放和剪切視頻,類似ImageView.setScaleType
1032 | 項目地址:https://github.com/dmytrodanylyk/android-video-crop
1033 | Demo地址:https://github.com/lafosca/AndroidFaceCropper/releases/download/1.0/FaceCropper-sample-debug-unaligned.apk
1034 |
1035 | 1. svg-android
1036 | Android Svg矢量圖形支持
1037 | 項目地址:https://github.com/japgolly/svg-android https://github.com/japgolly/svg-android
1038 |
1039 |
1040 | #### 八、事件總線(訂閱者模式)
1041 | 通過發布/訂閱事件解耦事件發送和接受,從而簡化應用程序組件(Activities, Fragments及後台線程)之間的通信
1042 |
1043 | 1. EventBus
1044 | greenrobot的開源項目
1045 | 項目地址:https://github.com/greenrobot/EventBus
1046 | 文檔介紹:https://github.com/greenrobot/EventBus#general-usage-and-api
1047 | 特點:(1) 支持在不同類型的線程中處理訂閱,包括發布所在線程,UI線程、單一後台線程、異步線程
1048 | (2) 支持事件優先級定義,支持優先級高的訂閱者取消事件繼續傳遞,支持粘性事件,是不是跟系統的有序廣播、粘性廣播很像啊
1049 | (3) 不是基于annotations
1050 | (4) 性能更優
1051 | (5) 體積小
1052 | (6) 支持單例創建或創建多個對象
1053 | (7) 支持根據事件類型訂閱
1054 |
1055 | 1. Otto
1056 | Square的開源項目,基于Guava的Android優化
1057 | 項目地址:https://github.com/square/otto
1058 | 文檔介紹:http://square.github.io/otto/
1059 | [EventBus與Otto的功能及性能對比文檔](https://github.com/greenrobot/EventBus#comparison-with-squares-otto)
1060 | [EventBus與Otto性能對比Demo Apk](https://play.google.com/store/apps/details?id=de.greenrobot.eventperf)
1061 |
1062 |
1063 | #### 九、傳感器
1064 | 1. Great Android Sensing Toolkit
1065 | Android感應器工具包,包含示例及使用過程中可能需要的算法
1066 | 項目地址:https://github.com/gast-lib/gast-lib
1067 | Demo地址:https://play.google.com/store/apps/details?id=root.gast.playground
1068 | 文檔介紹:https://github.com/gast-lib/gast-lib#documentation
1069 |
1070 | 1. SensorManager
1071 | Android傳感器管理
1072 | 項目地址:https://github.com/nlathia/SensorManager
1073 | 文檔介紹:https://docs.google.com/document/d/1TqThJULb-4e6TGb1gdkAaPCfyuXStjJpbnt7a0OZ9OE/edit
1074 |
1075 | 1. GPSLogger
1076 | 記錄GPS信息
1077 | 項目地址:https://github.com/mendhak/gpslogger
1078 | Demo地址:https://play.google.com/store/apps/details?id=com.mendhak.gpslogger
1079 | 文檔介紹:http://code.mendhak.com/gpslogger/
1080 |
1081 | 1. Pedometer
1082 | 計步器,使用硬件計步感應器
1083 | 項目地址:https://github.com/j4velin/Pedometer
1084 |
1085 | 1. leapcast
1086 | ChromeCast模擬器的App
1087 | 項目地址:https://github.com/dz0ny/leapcast
1088 |
1089 | 1. Arduino-Communicator
1090 | 與Arduino通信的App
1091 | 項目地址:https://github.com/jeppsson/Arduino-Communicator
1092 |
1093 | 1. android-pedometer
1094 | Android計步器
1095 | 項目地址:https://github.com/bagilevi/android-pedometer
1096 | Demo地址:http://pedometer.googlecode.com/files/Pedometer-1.4.apk
1097 |
1098 | 1. OwnTracks for Android
1099 | 自己的軌迹記錄
1100 | 項目地址:https://github.com/owntracks/android
1101 |
1102 | 1. Shake Detector library for Android
1103 | Android手機震動搖晃檢測庫,提供供UI線程調用的回調接口
1104 | 項目地址:https://github.com/tbouron/ShakeDetector
1105 | Demo地址:https://play.google.com/store/apps/details?id=com.github.tbouron.shakedetector.example
1106 |
1107 | 1. Android heart rate monitor
1108 | Android心跳檢測
1109 | 項目地址:https://github.com/phishman3579/android-heart-rate-monitor
1110 |
1111 | 1. Bluetooth LE Library for Android
1112 | 藍牙源信息,包括寶庫Mac、更新時間、RSSI、UUID、信號源距離、影響範圍等信息
1113 | 項目地址:https://github.com/alt236/Bluetooth-LE-Library---Android
1114 | Demo地址:https://play.google.com/store/apps/details?id=uk.co.alt236.btlescan
1115 |
1116 | 1. farebot
1117 | 通過NFC 從公交卡中讀取數據的一個應用
1118 | 項目地址:https://github.com/codebutler/farebot
1119 |
1120 |
1121 |
1122 | #### 十、安全
1123 | 1. SQLCipher
1124 | Sqlite加密工具
1125 | 項目地址:https://github.com/sqlcipher/sqlcipher
1126 | 幫助文檔:http://sqlcipher.net/sqlcipher-for-android/
1127 |
1128 | 1. Conceal
1129 | 快速高效的進行文件加密解密
1130 | 項目地址:https://github.com/facebook/conceal
1131 | 文檔介紹:https://github.com/facebook/conceal#usage
1132 |
1133 | 1. Android-PasscodeLock
1134 | 應用鎖,每次啓動或從任何Activity啓動應用都需要輸入四位數字的密碼方可進入
1135 | 項目地址:https://github.com/wordpress-mobile/Android-PasscodeLock
1136 | Demo地址:https://play.google.com/store/apps/details?id=com.sothree.umano
1137 | APP示例:Wordpress Android,支付寶,挖財
1138 |
1139 | 1. GlowPadBackport
1140 | 將Android4.2的鎖屏界面解鎖擴展到Android1.6及1.6+
1141 | 項目地址:https://github.com/rock3r/GlowPadBackport
1142 | Demo地址:https://play.google.com/store/apps/details?id=net.sebastianopoggi.samples.ui.GlowPadSample
1143 | 效果圖:
1144 |
1145 | 1. GlowPadView
1146 | Android 4鎖屏界面解鎖
1147 | 項目地址:https://github.com/nadavfima/GlowPadView
1148 | 效果圖:https://raw.github.com/nadavfima/GlowPadView/master/example.png
1149 |
1150 | 1. android-lockpattern
1151 | Android的圖案密碼解鎖
1152 | 項目地址:https://code.google.com/p/android-lockpattern/
1153 | Demo地址:https://play.google.com/store/apps/details?id=group.pals.android.lib.ui.lockpattern.demo
1154 | 使用介紹:https://code.google.com/p/android-lockpattern/wiki/QuickUse
1155 | 示例APP:Android開機的圖案密碼解鎖,支付寶的密碼解鎖
1156 |
1157 |
1158 | #### 十一、插件化
1159 | 1. Android Plugin Framework
1160 | Android插件式開發
1161 | 項目地址:https://github.com/umeng/apf
1162 |
1163 | 1. xCombine
1164 | Android App插件式插件開發
1165 | 項目地址:https://github.com/wyouflf/xCombine
1166 | 文檔介紹:http://my.oschina.net/u/1171837/blog/155377
1167 |
1168 | 1. dynamic-load-apk
1169 | Android動態加載Apk,熱部署
1170 | 項目地址:https://github.com/singwhatiwanna/dynamic-load-apk
1171 | 文檔介紹:http://blog.csdn.net/singwhatiwanna/article/details/22597587
1172 |
1173 |
1174 | #### 十二、文件
1175 | 對不同文檔類型的處理,包括PDF、Word、EPub、Html、Zip等
1176 |
1177 | 1. purePDF
1178 | 允許從任何運行的SWF文件讀取和創建PDF文檔
1179 | 項目地址:https://github.com/sephiroth74/purePDF
1180 |
1181 | 1. Office 365 SDK for Android Preview
1182 | 可支持Microsoft SharePoint Lists, Microsoft SharePoint Files, Microsoft Exchange Calendar, Microsoft Exchange Contacts, Microsoft Exchange Mail
1183 | 項目地址:https://github.com/OfficeDev/Office-365-SDK-for-Android
1184 |
1185 | 1. OpenSpritz-Android
1186 | EPub閱讀器
1187 | 項目地址:https://github.com/OnlyInAmerica/OpenSpritz-Android
1188 |
1189 | 1. jsoup
1190 | 一個解析html的java庫,可方便的提取和操作數據
1191 | 項目地址:https://github.com/jhy/jsoup
1192 | 官方網站:http://jsoup.org/
1193 | 作用:(1) 從一個url、文件或string獲得html並解析
1194 | (2) 利用dom遍曆或css選擇器查找、提取數據
1195 | (3) 操作html元素
1196 | (4) 根據白名單去除用于提交的非法數據防止xss攻擊
1197 | (5) 輸出整齊的html
1198 |
1199 | 1. ZIP
1200 | java壓縮和解壓庫
1201 | 項目地址:https://github.com/zeroturnaround/zt-zip
1202 | 文檔介紹:https://github.com/zeroturnaround/zt-zip#examples
1203 | 作用:(1) 解壓和壓縮,並支持文件夾內遞歸操作
1204 | (2) 支持包含和排除某些元素
1205 | (3) 支持重命名元素
1206 | (4) 支持遍曆zip包內容
1207 | (5) 比較兩個zip包等功能
1208 |
1209 |
1210 | #### 十三、其他
1211 | 1. Salvage view
1212 | 帶View緩存的Viewpager PagerAdapter,很方便使用
1213 | 項目地址:https://github.com/JakeWharton/salvage
1214 |
1215 | 1. Android Priority Job Queue
1216 | Android後台任務隊列
1217 | 項目地址:https://github.com/path/android-priority-jobqueue
1218 | 文檔介紹:https://github.com/path/android-priority-jobqueue#getting-started
1219 |
1220 | 1. Cobub Razor
1221 | 開源的mobile行爲分析系統,包括web端、android端,支持ios和window phone
1222 | 項目地址:https://github.com/cobub/razor
1223 | Demo地址:http://demo.cobub.com/razor
1224 | 網站介紹:http://dev.cobub.com/
1225 |
1226 | 1. aFileChooser
1227 | 文件選擇器,可內嵌到程序中,而無需使用系統或三方文件選擇器。
1228 | 項目地址:https://github.com/iPaulPro/aFileChooser
1229 |
1230 | 1. androidpn
1231 | 基于xmpp協議的消息推送解決方案,包括服務器端和android端。
1232 | 項目地址:https://github.com/dannytiehui/androidpn
1233 |
1234 | 1. Bolts
1235 | Android的異步編程模式
1236 | 項目地址:https://github.com/BoltsFramework/Bolts-Android/
1237 | 與AsyncTask比較:(1) 使用的是無大小限制的線程池
1238 | (2) 任務可組合可級聯,防止了代碼耦合
1239 |
1240 | 1. CastCompanionLibrary-android
1241 | 使Android程序中更快的接入Google Cast
1242 | 項目地址:https://github.com/googlecast/CastCompanionLibrary-android
1243 | 文檔介紹:https://developers.google.com/cast/
1244 |
1245 | 1. CastVideos-android
1246 | 從Android設備分享Video通過Google Cast
1247 | 項目地址:https://github.com/googlecast/CastVideos-android
1248 | 文檔介紹:https://developers.google.com/cast/
1249 |
1250 | 1. Uninstall_Statics
1251 | Android應用自身被卸載監聽及打開浏覽器等反饋功能實現
1252 | 項目地址:https://github.com/sevenler/Uninstall_Statics
1253 | 文檔介紹:http://www.cnblogs.com/zealotrouge/p/3157126.html
1254 | http://www.cnblogs.com/zealotrouge/p/3159772.html
1255 |
1256 | 1. Memento
1257 | 保證在系統配置改變時,Activity中的某些數據可以簡單安全的保持不變
1258 | 項目地址:https://github.com/mttkay/memento
1259 | 文檔介紹:https://github.com/mttkay/memento#usage
1260 |
1261 | 1. FreeFlow
1262 | 布局引擎,更簡單的創建自定義布局,並且當數據和布局改變時更美觀的過渡動畫
1263 | 項目地址:https://github.com/Comcast/FreeFlow
1264 | Demo地址:https://github.com/Comcast/FreeFlow/releases
1265 |
1266 | 1. Android Gesture Detectors Framework
1267 | Android手勢框架,支持雙指旋轉、移動、平移、縮放等
1268 | 項目地址:https://github.com/Almeros/android-gesture-detectors
1269 |
1270 | 1. Mapbox Android SDK
1271 | Android Map的替代版
1272 | 項目地址:https://github.com/mapbox/mapbox-android-sdk
1273 |
1274 | 1. Activity animation
1275 | Activity跳轉動畫,支持各個方向波浪的效果
1276 | 項目地址:https://github.com/flavienlaurent/activityanimation
1277 | 在線演示:https://www.youtube.com/watch?v=-E0sc6w_Jck
1278 |
1279 | 1. KryoNet
1280 | 通過NIO提供客戶端和服務器端TCP/UDP網絡傳輸的Java庫
1281 | 項目地址:https://github.com/EsotericSoftware/kryonet
1282 |
1283 |
1284 | ## 第三部分 優秀項目
1285 | 主要介紹那些Android還不錯的完整項目,目前包含的項目主要依據是項目有意思或項目分層規範比較好。
1286 | Linux
1287 | 項目地址:https://github.com/torvalds/linux
1288 | Android
1289 | 項目地址:https://android.googlesource.com/ 或 https://github.com/android
1290 | 以上兩個項目,不解釋
1291 |
1292 | (1) ZXing
1293 | 二維碼掃描工具
1294 | 項目地址:https://github.com/zxing/zxing 或 https://code.google.com/p/zxing/
1295 | APK地址:https://play.google.com/store/apps/details?id=com.google.zxing.client.android
1296 | PS:現在市面上很多應用的二維碼掃描功能都是從這個修改而來
1297 |
1298 | (2) photup
1299 | 編輯機批量上傳照片到facebook上
1300 | 項目地址:https://github.com/chrisbanes/photup
1301 | APK地址:https://play.google.com/store/apps/details?id=uk.co.senab.photup
1302 | PS:代碼分包合理,很棒。不過這個項目依賴的開源項目比較多,比較難編譯
1303 |
1304 | (3) github-android
1305 | Github的Android客戶端項目
1306 | 項目地址:https://github.com/github/android
1307 | APK地址:https://play.google.com/store/apps/details?id=com.github.mobile
1308 |
1309 | (4) Notes
1310 | MIUI便簽
1311 | 項目地址:https://github.com/MiCode/Notes
1312 | APK地址:https://github.com/Trinea/TrineaDownload/blob/master/miui-note-demo.apk?raw=true
1313 | PS:項目分包比較合理,相比較miui的文件管理器https://github.com/MiCode/FileExplorer 代碼規範較好得多
1314 |
1315 | (5) weicuiyuan
1316 | 四次元-新浪微博客戶端
1317 | 項目地址:https://github.com/qii/weiciyuan
1318 | APK地址:https://play.google.com/store/apps/details?id=org.qii.weiciyuan
1319 |
1320 | (6) gnucash-android
1321 | 一個記賬理財軟件
1322 | 項目地址:https://github.com/codinguser/gnucash-android
1323 | APK地址:http://play.google.com/store/apps/details?id=org.gnucash.android
1324 |
1325 | (7) AntennaPod
1326 | 支持rss訂閱、音樂訂閱
1327 | 項目地址:https://github.com/danieloeh/AntennaPod
1328 | APK地址:https://play.google.com/store/apps/details?id=de.danoeh.antennapod
1329 |
1330 | (8) ChaseWhisplyProject
1331 | 打鬼遊戲
1332 | 項目地址:https://github.com/tvbarthel/ChaseWhisplyProject
1333 | APK地址:https://play.google.com/store/apps/details?id=fr.tvbarthel.games.chasewhisply
1334 |
1335 | (9) Tweet Lanes
1336 | 功能完整的Twitter客戶端
1337 | 項目地址:https://github.com/chrislacy/TweetLanes
1338 | APK地址:https://play.google.com/store/apps/details?id=com.tweetlanes.android
1339 |
1340 | (10) Financius
1341 | 簡單易用的記賬程序
1342 | 項目地址:https://github.com/mvarnagiris/Financius
1343 | APK地址:https://play.google.com/store/apps/details?id=com.code44.finance
1344 |
1345 | (11) todo.txt-android
1346 | todo.txt的官方Android應用
1347 | 項目地址:https://github.com/ginatrapani/todo.txt-android
1348 | APK地址:https://play.google.com/store/apps/details?id=com.todotxt.todotxttouch
1349 |
1350 | (12) simpletask
1351 | 基于todo.txt官方應用的另一個客戶端
1352 | 項目地址:https://github.com/mpcjanssen/simpletask-android
1353 | APK地址:https://play.google.com/store/apps/details?id=nl.mpcjanssen.todotxtholo
1354 |
1355 | (13) Muzei Live Wallpaper
1356 | 定時更換桌面精美壁紙
1357 | 項目地址:https://github.com/romannurik/muzei
1358 | APK地址:https://play.google.com/store/apps/details?id=net.nurik.roman.muzei
1359 |
1360 |
1361 | ## 第四部分 開發工具及測試工具
1362 | 主要介紹和Android開發工具和測試工具相關的開源項目。
1363 | #### 一、開發效率工具
1364 | 1. Json2Java
1365 | 根據JSon數據自動生成對應的Java實體類,還支持Parcel、Gson Annotations對應代碼自動生成。期待後續的提取父類以及多url構建整個工程的功能
1366 | 項目地址:https://github.com/jonfhancock/JsonToJava
1367 | 在線演示:http://jsontojava.appspot.com/
1368 |
1369 | 1. IntelliJ Plugin for Android Parcelable boilerplate code generation
1370 | Android studio插件,生成Parcelable代碼
1371 | 項目地址:https://github.com/mcharmas/android-parcelable-intellij-plugin
1372 | 效果圖:
1373 |
1374 | 1. Android Holo Colors IntelliJ Plugin
1375 | Android studio插件,生成holo樣式9 patch圖片
1376 | 項目地址:https://github.com/jeromevdl/android-holo-colors-idea-plugin
1377 | 效果圖:
1378 |
1379 | 1. Android Drawable Factory
1380 | 用于生成各個分辨率的圖片
1381 | 項目地址:https://github.com/tizionario/AndroidDrawableFactory
1382 | 效果圖:
1383 |
1384 | 1. SelectorChapek for Android
1385 | Android Studio插件,可根據固定文件名格式資源自動生成drawable selectors xml文件。
1386 | 項目地址:https://github.com/inmite/android-selector-chapek
1387 |
1388 | 1. Android Action Bar Style Generator
1389 | Android ActionBar樣式生成器,可在線選擇ActionBar樣式自動生成所需要的圖片資源及xml文件
1390 | 項目地址:https://github.com/jgilfelt/android-actionbarstylegenerator
1391 | 在線演示:http://jgilfelt.github.io/android-actionbarstylegenerator/
1392 |
1393 | 1. ButterKnifeZelezny
1394 | 用于快速生成[ButterKnife](https://github.com/JakeWharton/butterknife)View注入代碼的Android Studio/IDEA插件
1395 | 項目地址:https://github.com/inmite/android-butterknife-zelezny
1396 |
1397 | 1. RoboCoP
1398 | 利用Gradle task根據固定格式的json文件生成ContentProvider
1399 | 項目地址:https://github.com/mediarain/RoboCoP
1400 |
1401 | 1. appiconsizes
1402 | 用于生成各個分辨率的圖片
1403 | 項目地址:http://www.appiconsizes.com/
1404 |
1405 | 1. Gradle Retrolambda Plugin
1406 | [Retrolambda](https://github.com/orfjackal/retrolambda)是將Java8的Lambdas應用于Java7的工具,本項目是Gradle插件,通過Retrolambda從而使Java或Android項目用Java8的Lambdas編寫,將編譯後的字節碼轉換爲Java6和7的字節碼從而正常運行
1407 | 項目地址:https://github.com/evant/gradle-retrolambda
1408 |
1409 | 1. Dagger IntelliJ Plugin
1410 | dagger的intellij插件
1411 | 項目地址:https://github.com/square/dagger-intellij-plugin
1412 |
1413 | 1. Android Gen Drawable Maven plugin
1414 | 在編譯時根據SVG描述文件生成不同分辨率的jpg、png或點9圖片
1415 | 項目地址:https://github.com/avianey/androidgendrawable-maven-plugin
1416 |
1417 |
1418 | #### 二、開發自測相關
1419 | 1. Quality Tools for Android
1420 | Android測試及自測工具集合和示例
1421 | 項目地址:https://github.com/stephanenicolas/Quality-Tools-for-Android
1422 |
1423 | 1. android-test-kit
1424 | Google的Android測試工具
1425 | 包括GoogleInstrumentationTestRunner(增強版的InstrumentationTestRunner)和Espresso(用于快速寫出可靠測試用例的API)
1426 | 項目地址:https://code.google.com/p/android-test-kit/
1427 | 文檔介紹:https://code.google.com/p/android-test-kit/w/list
1428 |
1429 | 1. robolectric
1430 | 測試用例編寫框架
1431 | 項目地址:https://github.com/robolectric/robolectric
1432 | Demo地址:https://github.com/robolectric/robolectricsample
1433 | 文檔介紹:http://robolectric.org/
1434 | 特點:(1). 不需要模擬器在一般JVM就可以運行測試用例
1435 | (2). 能完成在真機上的大部分測試包括感應器
1436 | 其他的測試用例及相關模塊Mock可見:[android-mock](https://code.google.com/p/android-mock/), [mockito](https://code.google.com/p/mockito/), [easy-mock](https://github.com/easymock/easymock)
1437 |
1438 | 1. Android FEST
1439 | 提供一些列方便的斷言,可用于提高編寫Android自測代碼效率
1440 | 項目地址:https://github.com/square/fest-android
1441 |
1442 | 1. BoundBox
1443 | 可用于測試類各種訪問權限的屬性、方法。實際是通過BoundBox這個annotation生成一個屬性和方法都是public權限的中間類並對此類進行測試完成的
1444 | 項目地址:https://github.com/stephanenicolas/boundbox
1445 |
1446 | 1. Hugo
1447 | 用于打印函數信息及執行時間的工具,僅在debug模式生效
1448 | 項目地址:https://github.com/JakeWharton/hugo
1449 |
1450 | 1. scalpel
1451 | 在應用下面添加一層用于界面調試,待詳細補充 // TODO
1452 | 項目地址:https://github.com/JakeWharton/scalpel
1453 |
1454 | 1. Android Screenshot library
1455 | Android截圖工具類,用于在持續集成時截圖
1456 | 項目地址:https://github.com/rtyley/android-screenshot-lib
1457 |
1458 | 1. sonar-android-lint-plugin
1459 | 將android lint的錯誤在sonar中展現
1460 | 項目地址:https://github.com/SonarCommunity/sonar-android
1461 |
1462 |
1463 | #### 三、測試工具
1464 | 1. Spoon
1465 | 可用于android不同機型設備自動化測試,能將應用apk和測試apk運行在不同機器上並生成相應測試報告。
1466 | 項目地址:https://github.com/square/spoon
1467 |
1468 | 1. Tencent APT
1469 | APT是騰訊開源的一個Android平台高效性能測試組件,提供豐富實用的功能,適用于開發自測、定位性能瓶頸;測試人員完成性能基准測試、競品對比測試
1470 | 項目地址:https://github.com/stormzhang/APT
1471 |
1472 | 1. Emmagee
1473 | 網易開源的性能測試工具,包括CPU、內存、網絡流量、啓動時間、電池狀態等
1474 | 項目地址:https://github.com/NetEase/Emmagee
1475 |
1476 |
1477 | #### 四、開發及編譯環境
1478 | 1. Buck
1479 | facebook開源的Android編譯工具,效率是ant的兩倍。主要優點在于:
1480 | (1) 加快編譯速度,通過並行利用多核cpu和跟蹤不變資源減少增量編譯時間實現
1481 | (2) 可以在編譯系統中生成編譯規則而無須另外的系統生成編譯規則文件
1482 | (3) 編譯同時可生成單元測試結果
1483 | (4) 既可用于IDE編譯也可用于持續集成編譯
1484 | (5) facebook持續優化中
1485 | 項目地址:https://github.com/facebook/buck
1486 |
1487 | 1. Android Maven Plugin
1488 | Android Maven插件,可用于對android三方依賴進行管理。在J2EE開發中,maven是非常成熟的依賴庫管理工具,可統一管理依賴庫。
1489 | 項目地址:https://github.com/jayway/maven-android-plugin
1490 |
1491 | 1. umeng-muti-channel-build-tool
1492 | 渠道打包工具
1493 | 項目地址:https://github.com/umeng/umeng-muti-channel-build-tool
1494 | 另可參見Google的構建系統Gradle:http://tools.android.com/tech-docs/new-build-system/user-guide
1495 |
1496 | 1. Genymotion
1497 | 目前最好用最快的android模擬器
1498 | 項目地址:http://www.genymotion.com/
1499 | Android studio集成控件: http://plugins.jetbrains.com/plugin/7269?pr=idea
1500 | Cyril Mottier推薦:http://cyrilmottier.com/2013/06/27/a-productive-android-development-environment/
1501 |
1502 | 1. gradle-mvn-push
1503 | 方便的將Gradle的Artifacts上傳到Maven倉庫
1504 | 項目地址:https://github.com/chrisbanes/gradle-mvn-push
1505 | 文檔介紹:https://github.com/chrisbanes/gradle-mvn-push#usage
1506 |
1507 | 1. Android Emulator Plugin for Jenkins
1508 | Android模擬器 jenkins插件,用于Jenkins做持續集成時跑模擬器測試
1509 | 項目地址:https://github.com/jenkinsci/android-emulator-plugin
1510 |
1511 | 1. Android Maven Plugin
1512 | 管理應用所需要的依賴庫。包括的構建工具有Maven、Gradle、ant、sbt
1513 | 項目地址:https://github.com/mosabua/maven-android-sdk-deployer
1514 |
1515 | 1. SDK Manager Plugin
1516 | 下載和管理Android SDK的Gradle插件
1517 | 項目地址:https://github.com/JakeWharton/sdk-manager-plugin
1518 |
1519 | 1. Gradle Protobuf Plugin
1520 | 將.proto文件轉換成Java文件的gradle插件
1521 | 項目地址:https://github.com/andrewkroh/gradle-protobuf-plugin
1522 |
1523 |
1524 | #### 五、其他
1525 | 1. ViewServer
1526 | 允許app運行在任何手機上都可以用HierarchyViewer查看
1527 | 項目地址:https://github.com/romainguy/ViewServer
1528 |
1529 | 1. GridWichterle for Android
1530 | 在整個系統上顯示一個grid,用來幫助查看應用布局及使得布局更美觀,可設置grid網格大小和顔色,android推薦48dp和8dp,可見 Android Design Guidelines – Metrics and Grids
1531 | 項目地址:https://github.com/inmite/android-grid-wichterle
1532 | APK地址:https://play.google.com/store/apps/details?id=eu.inmite.android.gridwichterle
1533 | PS:比起hierarchyviewer相差甚遠,不過偶爾可用來作爲布局查看工具。
1534 |
1535 | 1. Catlog
1536 | 手機端log查看工具,支持不同顔色顯示、關鍵字過濾、級別過濾、進程id過濾、錄制功能等
1537 | 項目地址:https://github.com/nolanlawson/Catlog
1538 | 在線演示:https://play.google.com/store/apps/details?id=com.nolanlawson.logcat
1539 |
1540 | 1. PID Cat
1541 | 根據package查看logcat日志
1542 | 項目地址:https://github.com/JakeWharton/pidcat
1543 |
1544 | 1. ACRA
1545 | 應用崩潰信息上報到GoogleDoc工具,網頁版展現結果三方開源地址https://github.com/BenoitDuffez/crashreportsviewer
1546 | 項目地址:https://github.com/ACRA/acra
1547 | 文檔地址:https://github.com/ACRA/acra/wiki/BasicSetup
1548 |
1549 | 1. Crashlytics
1550 | 提供豐富的應用崩潰信息收集
1551 | 輕量級,豐富,可自定義應用崩潰信息收集器,附有郵件通知
1552 | 項目地址:http://www.crashlytics.com/
1553 | 集成插件:[Android Studio, Eclipse and IntelliJ](http://try.crashlytics.com/sdk-android/?utm_source=blog&utm_medium=blog&utm_campaign=Announcing_android_studio_wp&utm_content=CTA_button)
1554 |
1555 | 1. Android Resource Navigator
1556 | chrome插件,可以方便的查看github上android源碼工程的styles.xml和themes.xml。主要功能:
1557 | (1) 快速打開android styles.xml themes.xml
1558 | (2) 方便在資源間跳轉。styles.xml themes.xml文件中資源鏈接跳轉,可以方便跳轉到某個資源
1559 | (3) 方便查找某個style和theme。chrome地址欄輸入arn+tab+搜索內容回車即可
1560 | (4) 自動下載不同分辨率下的drawable
1561 | (5) 通過映射查找那些不是按照固定命名規則命名的style和theme
1562 | 項目地址:https://github.com/jgilfelt/android-resource-navigator
1563 | 示例:https://chrome.google.com/webstore/detail/android-resource-navigato/agoomkionjjbejegcejiefodgbckeebo?hl=en&gl=GB
1564 |
1565 | 1. android-resource-remover
1566 | 根據lint的提示刪除項目中無用的資源,減少包的大小
1567 | 項目地址:https://github.com/KeepSafe/android-resource-remover
1568 |
1569 | 1. Telescope
1570 | 通過手勢截圖以特定主題發送到特定郵箱地址報告Bug
1571 | 項目地址:https://github.com/mattprecious/telescope
1572 |
1573 |
1574 | ## 第五部分
1575 | 主要介紹那些樂于分享並且有一些很不錯的開源項目的個人和組織。Follow大神,深挖大神的項目和following,你會發現很多。
1576 |
1577 | #### 一、個人
1578 | 1. JakeWharton
1579 | 就職于Square,絕對牛逼的大神,項目主要集中在Android版本兼容,ViewPager及開發工具上
1580 | Github地址:https://github.com/JakeWharton
1581 | 代表作:ActionBarSherlock,Android-ViewPagerIndicator,Nine Old Androids,SwipeToDismissNOA,hugo,butterknife,Android-DirectionalViewPager, scalpel
1582 | pidcat另外對square及其他開源項目有很多貢獻
1583 | 主頁:http://jakewharton.com/
1584 |
1585 | 1. Chris Banes
1586 | Github地址:https://github.com/chrisbanes
1587 | 代表作:ActionBar-PullToRefresh,PhotoView,Android-BitmapCache,Android-PullToRefresh
1588 | 主頁:http://chris.banes.me/
1589 |
1590 | 1. Koushik Dutta
1591 | 就職于ClockworkMod
1592 | Github地址:https://github.com/koush
1593 | 代表作:Superuser,AndroidAsync,UrlImageViewHelper,ion, 另外對https://github.com/CyanogenMod 的開源項目有很多貢獻
1594 | 主頁:http://koush.com/
1595 |
1596 | 1. Simon Vig
1597 | Github地址:https://github.com/SimonVT
1598 | 代表作:android-menudrawer,MessageBar
1599 | 主頁:http://simonvt.net/
1600 |
1601 | 1. Manuel Peinado
1602 | Github地址:https://github.com/ManuelPeinado
1603 | 代表作:FadingActionBar,GlassActionBar,RefreshActionItem,QuickReturnHeader
1604 |
1605 | 1. Emil Sj?lander
1606 | Github地址:https://github.com/emilsjolander
1607 | 代表作:StickyListHeaders,sprinkles,android-FlipView
1608 | 主頁:http://emilsjolander.se/
1609 |
1610 | 1. greenrobot
1611 | Github地址:https://github.com/greenrobot
1612 | 代表作:greenDAO,EventBus
1613 | 主頁:http://greenrobot.de/
1614 |
1615 | 1. Jeff Gilfelt
1616 | Github地址:https://github.com/jgilfelt
1617 | 代表作:android-mapviewballoons,android-viewbadger,android-actionbarstylegenerator,android-sqlite-asset-helper
1618 | 主頁:http://jeffgilfelt.com
1619 |
1620 | 1. Romain Guy
1621 | Android team成員(2013.10已離開Android team,仍在Google)
1622 | Github地址:https://github.com/romainguy
1623 | 代表作:ViewServer
1624 | 主頁:http://www.curious-creature.org/category/android/
1625 | 個人攝影作品:http://www.flickr.com/photos/romainguy
1626 |
1627 | 1. sephiroth74
1628 | 就職于Aviary.com
1629 | Github地址:https://github.com/sephiroth74
1630 | 代表作:ImageViewZoom,HorizontalVariableListView,AndroidWheel,purePDF
1631 | 主頁:http://www.sephiroth.it/
1632 |
1633 | 1. Cyril Mottier
1634 | Google開發者專家認證,發布一些Android技巧及文章
1635 | Github地址:https://github.com/cyrilmottier
1636 | 代表作:GreenDroid,Polaris
1637 | 主頁:http://cyrilmottier.com/
1638 |
1639 |
1640 | #### 二、組織
1641 | 1. Square
1642 | 有態度有良心的企業,很多不錯的分享
1643 | Github地址:https://github.com/square
1644 | 代表作:okhttp、fest-android,android-times-square、picasso、dagger、spoon等等
1645 | 主頁:http://square.github.io/
1646 |
1647 | 1. Inmite s.r.o.
1648 | Github地址:https://github.com/inmite
1649 | 代表作:android-styled-dialogs,android-grid-wichterle,android-selector-chapek
1650 | 主頁:http://www.inmite.eu/
1651 |
1652 |
1653 | #### 三、博客
1654 | 1. Chet Haase
1655 | Android framework UI team 成員
1656 | 主頁:http://graphics-geek.blogspot.com/
1657 |
1658 |
1659 | ## License
1660 |
1661 | Copyright 2014 trinea.cn
1662 |
1663 | Licensed under the Apache License, Version 2.0 (the "License");
1664 | you may not use this file except in compliance with the License.
1665 | You may obtain a copy of the License at
1666 |
1667 | http://www.apache.org/licenses/LICENSE-2.0
1668 |
1669 | Unless required by applicable law or agreed to in writing, software
1670 | distributed under the License is distributed on an "AS IS" BASIS,
1671 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1672 | See the License for the specific language governing permissions and
1673 | limitations under the License.
1674 |
1675 |
--------------------------------------------------------------------------------