├── English Version └── README.md ├── LICENSE ├── README.md └── 繁體中文版 └── README.md /English Version/README.md: -------------------------------------------------------------------------------- 1 | Android Open Source Projects 2 | ==================== 3 | 4 | Welcome to recommend good android open source projects, you can [Commit](https://github.com/Trinea/android-open-project/wiki/Standard-of-adding-and-editing-content "Standard of adding and editing content") directly or tell me at [Colloct Page](https://github.com/Trinea/android-open-project/issues/1). Welcome `Star` and `Fork` 5 | 6 | Twitter:[trinea_cn](https://twitter.com/trinea_cn)    HomePage: [www.trinea.cn](http://www.trinea.cn/)    Email:[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 | Share:                 8 | ### Include: 9 | >[1. Personalized Views](https://github.com/Trinea/android-open-project/tree/master/English%20Version#first-part-personalized-views) 10 | *  include [ListView](https://github.com/Trinea/android-open-project/tree/master/English%20Version#first-listview), [ActionBar](https://github.com/Trinea/android-open-project/tree/master/English%20Version#second-actionbar), [Menu](https://github.com/Trinea/android-open-project/tree/master/English%20Version#third-menu), [ViewPager](https://github.com/Trinea/android-open-project/tree/master/English%20Version#fourth-viewpager-gallery), [Gallery](https://github.com/Trinea/android-open-project/tree/master/English%20Version#fifth-gridview), [ImageView](https://github.com/Trinea/android-open-project/tree/master/English%20Version#sixth-imageview), [ProgressBar](https://github.com/Trinea/android-open-project/tree/master/English%20Version#seventh-progressbar), [TextView](https://github.com/Trinea/android-open-project/tree/master/English%20Version#eighth-textview),[ScrollView](), [TimeView](), [TipView](), [FlipView](), [ColorPickView](), [GraphView](), [UI Style](), [Others](https://github.com/Trinea/android-open-project/tree/master/English%20Version#ninth-others)* 11 | [2. Common Util Libs](https://github.com/Trinea/android-open-project/tree/master/English%20Version#second-part-common-util-libs) 12 | *  include [Dependency Injection](https://github.com/Trinea/android-open-project/tree/master/English%20Version#first-dependency-injection), [ImageCache](https://github.com/Trinea/android-open-project/tree/master/English%20Version#second-image-cache), [Network](https://github.com/Trinea/android-open-project/tree/master/English%20Version#third-network), [Database ORM](https://github.com/Trinea/android-open-project/tree/master/English%20Version#fourth-database-orm), [Android common lib](https://github.com/Trinea/android-open-project/tree/master/English%20Version#fifth-android-common-lib), [Compatible low version](https://github.com/Trinea/android-open-project/tree/master/English%20Version#sixth-android-compatible-low-version), [Multimedia](https://github.com/Trinea/android-open-project/tree/master/English%20Version#seventh-multimedia), [Event Bus](https://github.com/Trinea/android-open-project/tree/master/English%20Version#eighth-event-bus), [Sensor](https://github.com/Trinea/android-open-project/tree/master/English%20Version#ninth-sensor), [Security](https://github.com/Trinea/android-open-project/tree/master/English%20Version#tenth-security), [Plug-in](), [File](), [Others](https://github.com/Trinea/android-open-project/tree/master/English%20Version#eleventh-others)* 13 | [3. Excellent projects](https://github.com/Trinea/android-open-project/tree/master/English%20Version#third-part-excellent-projects) 14 | *  more interesting android project* 15 | [4. Development and testing tools](https://github.com/Trinea/android-open-project/tree/master/English%20Version#forth-part-development-and-testing-tools) 16 | *  include [Development productivity tools](https://github.com/Trinea/android-open-project/tree/master/English%20Version#first-development-productivity-tools), [Develop self-test related](https://github.com/Trinea/android-open-project/tree/master/English%20Version#second-develop-self-test-related), [Testing tools](https://github.com/Trinea/android-open-project/tree/master/English%20Version#third-testing-tools), [Development and build environment](https://github.com/Trinea/android-open-project/tree/master/English%20Version#fourth-development-and-build-environment), [Others](https://github.com/Trinea/android-open-project/tree/master/English%20Version#fifth-others)* 17 | [5. Outstanding individuals and groups](https://github.com/Trinea/android-open-project/tree/master/English%20Version#fifth-part-outstanding-individuals-and-groups) 18 | *  Willing to share and have some very good open source project [Individual](https://github.com/Trinea/android-open-project/tree/master/English%20Version#first-individual) and [Group](https://github.com/Trinea/android-open-project/tree/master/English%20Version#second-group),include JakeWharton, Chris Banes, Koushik Dutta and so on* 19 | 20 | *Thank [likebamoo](https://github.com/likebamboo) [vmlinz](https://github.com/vmlinz) [xalexchen](https://github.com/xalexchen) [youxiachai](https://github.com/youxiachai) [stormzhang](https://github.com/stormzhang)* 21 | 22 | ## 1. Personalized Views 23 | Customed View. include ListView, ActionBar, Menu, ViewPager, Gallery, GridView, ImageView, ProgressBar, Dialog, Toast, EditText, TableView, Activity Animation and so on。 24 | #### 1. ListView 25 | 1. android-pulltorefresh 26 | Provide a reusable Pull to Refresh widget for Android, support ListView, ExpandableListView, GridView, WebView, ScrollView, HorizontalScrollView, ViewPager, support pulling Down from the top, and Pulling Up from the bottom and so on. 27 | Project Address: https://github.com/chrisbanes/Android-PullToRefresh 28 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refreshview-demo.apk?raw=true 29 | Similar App: Sina Weibo Pages 30 | 31 | 1. android-pulltorefresh-listview 32 | Pull to refresh listView for android, There is some bug for this 33 | Project Address: https://github.com/johannilsson/android-pulltorefresh 34 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refresh-listview-demo.apk?raw=true 35 | 36 | 1. android-Ultra-Pull-to-Refresh 37 | It's a replacement for the deprecated pull to refresh solution. It can contain any view you want. 38 | It's easy to use and more powerful than SwipeRefreshLayout. 39 | It's well designed, you can customize the UI effect you want as easy as adding a headview to ListView. 40 | Support `API LEVEL >= 8` 41 | Project Address: https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh 42 | Demo Apk: https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh/blob/master/ptr-demo/target/ultra-ptr-demo.apk?raw=true 43 |
44 | 45 | 46 | 47 | 48 |
49 | 50 | 1. DropDownListView 51 | Pull to refresh and load more when on bottom listView for android 52 | Project Address: https://github.com/Trinea/AndroidCommon 53 | Demo Apk: https://play.google.com/store/apps/details?id=cn.trinea.android.demo 54 | Document: http://www.trinea.cn/android/dropdown-to-refresh-and-bottom-load-more-listview/ 55 | 56 | 1. DragSortListView 57 | Android ListView with drag and drop reordering. 58 | Project Address: https://github.com/bauerca/drag-sort-listview 59 | Demo Apk: https://play.google.com/store/apps/details?id=com.mobeta.android.demodslv 60 | Similar App: Wordpress Android 61 | 62 | 1. SwipeListView 63 | An Android List View implementation with support for drawable cells and many other swipe related features 64 | Project Address: https://github.com/47deg/android-swipelistview 65 | Demo Apk: https://play.google.com/store/apps/details?id=com.fortysevendeg.android.swipelistview 66 | Similar App: 微信 67 | 68 | 1. RecyclerViewSwipeDismiss 69 | lightweight support-v7 RecyclerView Swipe to dismiss library,Just bind `onTouchListener` 70 | Project Address:https://github.com/CodeFalling/RecyclerViewSwipeDismiss 71 | Renderings: ![Renderings](http://i2.tietuku.com/a5a1a6fbd300397a.gif) 72 | 73 | 1. Android-SwipeToDismiss 74 | Android swipe to dismiss listView 75 | Project Address: https://github.com/romannurik/Android-SwipeToDismiss 76 | Demo Apk: https://github.com/JakeWharton/SwipeToDismissNOA/SwipeToDismissNOA.apk/qr_code 77 | 78 | 1. StickyListHeaders 79 | An android library for section headers of listView that stick to the top 80 | Project Address: https://github.com/emilsjolander/StickyListHeaders 81 | Similar App: Contacts app of Android 4.0 Ice Cream Sandwich 82 | Renderings: ![Renderings](https://raw.github.com/emilsjolander/StickyListHeaders/master/demo.gif) 83 | 84 | 1. pinned-section-listview 85 | Easy to use ListView with pinned sections for Android. Pinned section is a header view which sticks to the top of the list until at least one item of that section is visible. 86 | Project Address: https://github.com/beworker/pinned-section-listview 87 | Renderings: ![Renderings](https://raw.github.com/beworker/pinned-section-listview/master/screen1.png) 88 | 89 | 1. PinnedHeaderListView 90 | A ListView with pinned section headers for Android 91 | Project Address: https://github.com/JimiSmith/PinnedHeaderListView 92 | 93 | 1. QuickReturnHeader 94 | A ListView/ScrollView header that hides when scrolling down and reappears immediately when scrolling up, regardless of how far down the list we've gone. 95 | Project Address: https://github.com/ManuelPeinado/QuickReturnHeader 96 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/quick-return-header-demo.apk?raw=true 97 | Similar App: google plus 98 | 99 | 1. IndexableListView 100 | iPhone like fast scroll ListView on Android with non-alphabetic overlays 101 | Project Address: https://github.com/woozzu/IndexableListView 102 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/indexable-listview.apk?raw=true 103 | Similar App: Weichat contact 104 | 105 | 1. CustomFastScrollView 106 | A FastScrollView with non-alphabetic overlays 107 | Project Address: https://github.com/nolanlawson/CustomFastScrollViewDemo 108 | Renderings: ![Renderings](https://raw.github.com/nolanlawson/CustomFastScrollViewDemo/master/example.png) 109 | 110 | 1. Android-ScrollBarPanel 111 | Android-ScrollBarPanel allows to attach a View to a scroll indicator like it's done in Path 2.0 112 | Project Address: https://github.com/rno/Android-ScrollBarPanel 113 | Renderings: ![Renderings](https://github.com/rno/Android-ScrollBarPanel/raw/master/demo_capture.png) 114 | 115 | 1. SlideExpandableListView 116 | A better ExpandableListView, with animated expandable views for each list item 117 | Project Address: https://github.com/tjerkw/Android-SlideExpandableListView 118 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/slide-expandable-listView-demo.apk?raw=true 119 | 120 | 1. JazzyListView 121 | JazzyListView is an extension of ListView designed to animate list item views as they become visible. There are a number of pre-built, bundled effects that can be used by setting the effect in code or an XML layout attribute, like grow, cards, curl, wave, flip, fly. Also, it is possible to use a custom effect by implementing a JazzyEffect. 122 | Project Address: https://github.com/twotoasters/JazzyListView 123 | Demo Apk: https://play.google.com/store/apps/details?id=com.twotoasters.jazzylistview.sample 124 | 125 | 1. ListViewAnimations 126 | An Android library which allows developers to easily add animations to ListView items 127 | Project Address: https://github.com/nhaarman/ListViewAnimations 128 | Demo Apk: https://play.google.com/store/apps/details?id=com.haarman.listviewanimations 129 | Similar App: Google plus, Google Now, Ultimate, Light Flow Lite, TreinVerkeer, Running Coach, Pearl Jam Lyrics, Calorie Chart, Car Hire, Super BART, DK FlashCards, Counter Plus, Voorlees Verhaaltjes 2.0 130 | 131 | 1. DevsmartLib-Android 132 | A Horizontal ListView for Android 133 | Project Address: https://github.com/dinocore1/DevsmartLib-Android 134 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/horizontal-listview-demo.apk?raw=true 135 | 136 | 1. HorizontalVariableListView 137 | Horizontal list view for Android which allows variable items widths 138 | Project Address: https://github.com/sephiroth74/HorizontalVariableListView 139 | 140 | 1. LinearListView 141 | Android library that allows you to bind a LinearLayout with a ListAdapter. 142 | Project Address: https://github.com/frankiesardo/LinearListView 143 | 144 | 1. MultiChoiceAdapter 145 | A ListView adapter with support for multiple choice modal selection 146 | Project Address: https://github.com/ManuelPeinado/MultiChoiceAdapter 147 | Demo Apk: https://play.google.com/store/apps/details?id=com.manuelpeinado.multichoiceadapter.demo 148 | 149 | 1. EnhancedListView 150 | An Android ListView with enhanced functionality (e.g. Swipe To Dismiss and Undo) 151 | Project Address: https://github.com/timroes/EnhancedListView 152 | Demo Apk: https://play.google.com/store/apps/details?id=de.timroes.android.listviewdemo&rdid=de.timroes.android.listviewdemo 153 | 154 | 1. ListBuddies 155 | Android library of a pair of auto-scroll circular parallax ListViews like the ones on the expedia app home page. 156 | Project Address: https://github.com/jpardogo/ListBuddies 157 | Demo Apk: https://play.google.com/store/apps/details?id=com.jpardogo.android.listbuddies 158 | Renderings: ![Renderings](https://raw.github.com/jpardogo/ListBuddies/master/art/screenshot_listbuddies_2.png) 159 | 160 | 161 | #### 2. ActionBar 162 | 1. ActionBarSherlock 163 | Action bar implementation which uses the native action bar on Android 4.0+ and a custom implementation on pre-4.0 through a single API and theme. 164 | Project Address: https://github.com/JakeWharton/ActionBarSherlock 165 | Demo Apk: https://play.google.com/store/apps/details?id=com.actionbarsherlock.sample.demos 166 | 167 | 1. ActionBar-PullToRefresh 168 | ActionBar-PullToRefresh provides an easy way to add a modern version of the pull-to-refresh interaction to your application. 169 | Project Address: https://github.com/chrisbanes/ActionBar-PullToRefresh 170 | Demo Apk: https://play.google.com/store/apps/details?id=uk.co.senab.actionbarpulltorefresh.samples.stock 171 | Similar App: Gmail,Google plus 172 | 173 | 1. FadingActionBar 174 | Android library implementing a fading effect for the action bar, similar to the one found in the Play Music app 175 | Project Address: https://github.com/ManuelPeinado/FadingActionBar 176 | Demo Apk: https://play.google.com/store/apps/details?id=com.manuelpeinado.fadingactionbar.demo 177 | Similar App: google music 178 | 179 | 1. NotBoringActionBar 180 | Auto dismis actionbar when content scroll down 181 | Project Address: https://github.com/flavienlaurent/NotBoringActionBar 182 | Demo Apk: http://flavienlaurent.com/blog/2013/11/20/making-your-action-bar-not-boring/ 183 | Similar App: google music 184 | 185 | 1. RefreshActionItem 186 | An action bar item which acts both as a refresh button and as a progress indicator 187 | Project Address: https://github.com/ManuelPeinado/RefreshActionItem 188 | Demo Apk: https://play.google.com/store/apps/details?id=com.manuelpeinado.refreshactionitem.demo 189 | Similar App: The New York Times,DevAppsDirect. 190 | 191 | 1. GlassActionBar 192 | An Android library which implements a glass-like effect for the action bar 193 | Project Address: https://github.com/ManuelPeinado/GlassActionBar 194 | Demo Apk: https://play.google.com/store/apps/details?id=com.manuelpeinado.glassactionbardemo 195 | Similar App: google music 196 | 197 | 198 | #### 3. Menu 199 | 1. MenuDrawer 200 | A slide-out menu implementation, which allows users to navigate between views in your app. Most commonly the menu is revealed by either dragging the edge of the screen, or clicking the 'up' button in the action bar. It support content below or up to menu when compare to SlidingMenu. 201 | Project Address: https://github.com/SimonVT/android-menudrawer 202 | Demo Apk: http://simonvt.github.io/android-menudrawer/ 203 | Similar App: Gmail, Google Music 204 | 205 | 1. SlidingMenu 206 | An Android library that allows you to easily create applications with slide-in menus. It support animation when compare to MenuDrawer. 207 | Project Address: https://github.com/jfeinstein10/SlidingMenu 208 | Demo Apk: https://play.google.com/store/apps/details?id=com.slidingmenu.example 209 | Similar 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 210 | 211 | 1. ArcMenu 212 | An android custom view which looks like the menu in Path 2.0 for iOS. 213 | Project Address: https://github.com/daCapricorn/ArcMenu 214 | Similar App: Path 215 | Renderings: ![Renderings](https://dl.dropboxusercontent.com/u/11369687/preview0.png) 216 | 217 | 1. android-satellite-menu 218 | Android Satellite Menu 219 | Project Address: https://github.com/siyamed/android-satellite-menu 220 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/satellite-menu-demo.apk?raw=true 221 | Similar App: Path 222 | 223 | 1. radial-menu-widget 224 | A radial (pie) menu for Android 225 | Project Address: https://code.google.com/p/radial-menu-widget/ 226 | Renderings: http://farm8.staticflickr.com/7377/11621125154_d1773c2dcc_o.jpg 227 | 228 | 1. Android Wheel Menu 229 | Circular menu widget for Android. 230 | Project Address: https://github.com/anupcowkur/Android-Wheel-Menu 231 | Renderings: ![Renderings](https://raw.github.com/anupcowkur/Android-Wheel-Menu/master/graphics/wheel.gif) 232 | 233 | 1. FoldingNavigationDrawer 234 | Folding navigation drawer for android. 235 | Project Address: https://github.com/tibi1712/FoldingNavigationDrawer-Android 236 | Demo Apk: https://play.google.com/store/apps/details?id=com.ptr.folding.sample 237 | Renderings: ![Renderings](https://lh6.ggpht.com/VnKUZenAozQ0KFAm5blFTGqMaKFjvX-BK2JH-jrX1sIXVTqciACqRhqFH48hc4pm2Q=h310-rw) 238 | 239 | 1. AndroidResideMenu 240 | The idea of ResideMenu is from Dribbble 1 and 2 likes iOS ResideMenu 241 | Project Address: https://github.com/SpecialCyCi/AndroidResideMenu 242 | Renderings: ![Renderings](https://github.com/SpecialCyCi/AndroidResideMenu/raw/master/2.gif) 243 | 244 | 245 | #### 4. ViewPager Gallery 246 | 1. Android-ViewPagerIndicator 247 | Paging indicator widgets compatible with the ViewPager from the Android Support Library and ActionBarSherlock. Originally based on Patrik Åkerfeldt's ViewFlow. 248 | Project Address: https://github.com/JakeWharton/Android-ViewPagerIndicator 249 | Demo Apk: https://play.google.com/store/apps/details?id=com.viewpagerindicator.sample 250 | 251 | 1. JazzyViewPager 252 | An easy to use ViewPager that adds an awesome set of custom swiping animations. Just change your ViewPagers to JazzyViewPagers and you're good to go! 253 | Project Address: https://github.com/jfeinstein10/JazzyViewPager 254 | Demo Apk: https://github.com/jfeinstein10/JazzyViewPager/blob/master/JazzyViewPager.apk?raw=true 255 | 256 | 1. Android-DirectionalViewPager 257 | ViewPager class that supports paging both vertically and horizontally as well as changing between the two at runtime. 258 | Project Address: https://github.com/JakeWharton/Android-DirectionalViewPager 259 | Demo Apk: https://market.android.com/details?id=com.directionalviewpager.sample 260 | 261 | 1. android-pulltorefresh 262 | Provide a reusable Pull to Refresh widget for Android, support ListView, ExpandableListView, GridView, WebView, ScrollView, HorizontalScrollView, ViewPager, support pulling Down from the top, and Pulling Up from the bottom and so on. 263 | Project Address: https://github.com/chrisbanes/Android-PullToRefresh 264 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refreshview-demo.apk?raw=true 265 | 266 | 1. FancyCoverFlow 267 | FancyCoverFlow is a flexible Android widget providing out of the box view transformations to give your app a unique look and feel. 268 | Project Address: https://github.com/davidschreiber/FancyCoverFlow 269 | Demo Apk: https://play.google.com/store/apps/details?id=at.technikum.mti.fancycoverflow.samples 270 | Renderings: ![Renderings](https://github-camo.global.ssl.fastly.net/ef5ced52b7b54652b50499521ed797c0188c7a6b/687474703a2f2f64617669647363687265696265722e6769746875622e696f2f46616e6379436f766572466c6f772f73637265656e73686f74322e706e67) 271 | 272 | 1. AndroidTouchGallery 273 | Android widget for gallery, using viewpager. Allow pinch zoom and drag for images by url. Widget allows use it in Android > 2.0 274 | Project Address: https://github.com/Dreddik/AndroidTouchGallery 275 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/touch-gallery-demo.apk?raw=true 276 | 277 | 1. Android Auto Scroll ViewPager 278 | Android Auto scroll ViewPager or ViewPager in ViewPager 279 | Project Address: https://github.com/Trinea/android-auto-scroll-view-pager 280 | Demo Apk: https://play.google.com/store/apps/details?id=cn.trinea.android.demo 281 | Document: http://www.trinea.cn/android/auto-scroll-view-pager/ 282 | 283 | 1. Salvage view 284 | Generic view recycler and ViewPager PagerAdapter implementation. 285 | Project Address: https://github.com/JakeWharton/salvage 286 | 287 | 1. Android PagerSlidingTabStrip 288 | An interactive indicator to navigate between the different pages of a ViewPager 289 | Project Address: https://github.com/astuetz/PagerSlidingTabStrip 290 | Demo Apk: https://play.google.com/store/apps/details?id=com.astuetz.viewpager.extensions.sample 291 | 292 | 1. SmartTabLayout 293 | A custom ViewPager title strip which gives continuous feedback to the user when scrolling.This library has been added some features and utilities based on android-SlidingTabBasic project of Google Samples. 294 | Project Address: https://github.com/ogaclejapan/SmartTabLayout 295 | Demo Apk: https://play.google.com/store/apps/details?id=com.ogaclejapan.smarttablayout.demo 296 | Renderings: ![Renderings](https://raw.githubusercontent.com/ogaclejapan/SmartTabLayout/master/art/demo1.gif) 297 | 298 | 1. ViewPager3D 299 | A ViewPager with 3D effect 300 | Project Address: https://github.com/inovex/ViewPager3D 301 | 302 | 1. AnimaTabsview 303 | A animation effect like 网易云音乐 304 | Project Address: https://github.com/wuyexiong/transparent-over-animtabsview 305 | Demo: http://v.youku.com/v_show/id_XNzA4MjY5NjA0.html 306 | 307 | 1. LoopingViewPager 308 | A ViewPager which support loop scroll 309 | Project Address: https://github.com/imbryk/LoopingViewPager 310 | 311 | 1. android_page_curl 312 | Paging effect of iReader 313 | Project Address: https://github.com/harism/android_page_curl 314 | Demo App:iReader 315 | Demo: https://www.youtube.com/watch?v=iwu7P5PCpsw 316 | 317 | 1. ViewPagerIndicator 318 | A custom ViewPagerIndicator 319 | Project Address: https://github.com/LuckyJayce/ViewPagerIndicator 320 | 321 | 322 | 1. ScreenSlideIndicator 323 | Lightweight ViewPager Cycle Indicadtor 324 | Project Address: [ScreenSlidePager](https://github.com/LyndonChin/Android-ScreenSlidePager) 325 | Renderings: ![](https://raw.githubusercontent.com/LyndonChin/Android-ScreenSlidePager/master/screenslidepager.gif) 326 | 327 | 1. ViewPager3D 328 | A ViewPager with 3D effect 329 | Project Address: https://github.com/inovex/ViewPager3D 330 | 331 | 1. AnimaTabsview 332 | A animation effect like 网易云音乐 333 | Project Address: https://github.com/wuyexiong/transparent-over-animtabsview 334 | Demo: http://v.youku.com/v_show/id_XNzA4MjY5NjA0.html 335 | 336 | 1. LoopingViewPager 337 | A ViewPager which support loop scroll 338 | Project Address: https://github.com/imbryk/LoopingViewPager 339 | 340 | 1. android_page_curl 341 | Paging effect of iReader 342 | Project Address: https://github.com/harism/android_page_curl 343 | Demo App: iReader 344 | Demo: https://www.youtube.com/watch?v=iwu7P5PCpsw 345 | 346 | 1. ViewPagerIndicator 347 | A custom ViewPagerIndicator 348 | Project Address: https://github.com/LuckyJayce/ViewPagerIndicator 349 | 350 | 1. ScreenSlideIndicator 351 | Lightweight ViewPager Cycle Indicadtor 352 | Project Address: [ScreenSlidePager](https://github.com/LyndonChin/Android-ScreenSlidePager) 353 | Renderings: ![](https://raw.githubusercontent.com/LyndonChin/Android-ScreenSlidePager/master/screenslidepager.gif) 354 | 355 | 1. RecyclerViewPager 356 | A ViewPager implemention inherits from RecyclerView. Support fling operation like gallary and custom fling speed. Support Fragment. 357 | Project Address: [RecyclerViewPager](https://github.com/lsjwzh/RecyclerViewPager) 358 | Renderings: 359 | ![](https://github.com/lsjwzh/RecyclerViewPager/blob/master/fragment.gif) 360 | 361 | 362 | #### 5. GridView 363 | 1. StaggeredGridView 364 | A modified version of Android's experimental StaggeredGridView. Includes own OnItemClickListener and OnItemLongClickListener, selector, and fixed position restore. contains cache, extends from ViewGroup 365 | Project Address: https://github.com/maurycyw/StaggeredGridView 366 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/staggered-gridview-demo.apk?raw=true 367 | Similar App: Pinterest 368 | 369 | 1. AndroidStaggeredGrid 370 | An Android staggered grid view which supports multiple columns with rows of varying sizes. extends from AbsListView 371 | Project Address: https://github.com/etsy/AndroidStaggeredGrid 372 | Similar App: Pinterest 373 | 374 | 1. PinterestLikeAdapterView 375 | An Android multi column list view like Pinterest. allow pull to refresh. 376 | Project Address: https://github.com/GDG-Korea/PinterestLikeAdapterView 377 | Similar App: Pinterest 378 | 379 | 1. DraggableGridView 380 | A drag-and-drop scrolling grid view for Android, extends from ViewGroup. It can swich from up to bottom, If you want switch from left screen to right please use PagedDragDropGrid below 381 | Project Address: https://github.com/thquinn/DraggableGridView 382 | Demo Apk: https://github.com/thquinn/DraggableGridView/blob/master/bin/DraggableGridViewSample.apk?raw=true 383 | 384 | 1. StickyGridHeaders 385 | StickyGridHeaders is an Android library that provides a GridView that shows items in sections with headers. By default the section headers stick to the top like the People app in Android 4.x but this can be turned off. 386 | Project Address: https://github.com/TonicArtos/StickyGridHeaders 387 | Renderings: ![Renderings](https://github-camo.global.ssl.fastly.net/90b57e9383704c400706545225d439e057c6fcc0/687474703a2f2f342e62702e626c6f6773706f742e636f6d2f2d535f4262685758367754592f55517057306377554745492f41414141414141414776552f7a7a4a586a2d50635662592f73313630302f73637265656e2d6c616e6473636170652d736d616c6c65722e706e67) 388 | 389 | 1. PagedDragDropGrid 390 | An Android ViewGroup that implements a paged grid with drag'n'drop moveable items. It can swich from left screen to right, If you want switch from up to bottom please use DraggableGridView above 391 | Project Address: https://github.com/mrKlar/PagedDragDropGrid 392 | Demo视频:http://youtu.be/FYTSRfthSuQ 393 | 394 | 1. Android-DraggableGridViewPager 395 | Zaker style grid view pager, support dragging & rearrange, using as zaker's main screen. 396 | Project Address: https://github.com/zzhouj/Android-DraggableGridViewPager 397 | Demo Apk: https://github.com/Trinea/trinea-download/blob/master/draggable-grid-viewpager-demo.apk?raw=true 398 | 399 | 1. GridView with Header and Footer 400 | Same with `ListView`. It allows you call `addHeaderView()`, `addFooterView` to add views to GridView. 401 | Project Address:https://github.com/liaohuqiu/android-GridViewWithHeaderAndFooter 402 | Renderings:![Screen Shot](https://raw.githubusercontent.com/liaohuqiu/android-GridViewWithHeaderAndFooter/master/screen-shot.png) 403 | 404 | 405 | #### 6. ImageView 406 | 1. PhotoView 407 | Implementation of ImageView for Android that supports zooming, by various touch gestures, like multi-touch and double-tap. Works perfectly when using used in a scrolling parent (such as ViewPager). Allows the application to be notified when the displayed Matrix has changed. Useful for when you need to update your UI based on the current zoom/scroll position. 408 | Project Address: https://github.com/chrisbanes/PhotoView 409 | Demo Apk: https://play.google.com/store/apps/details?id=uk.co.senab.photoview.sample 410 | Similar App: photup 411 | 412 | 1. android-gif-drawable 413 | Views and Drawable for displaying animated GIFs on Android. Bundled GIFLib via JNI is used to render frames. This way should be more efficient than WebView or Movie classes. Animation starts automatically and run only if View with attached GifDrawable is visible. 414 | Project Address: https://github.com/koral--/android-gif-drawable 415 | 416 | 1. ImageViewEx 417 | Extension of Android's ImageView that supports animated GIFs and includes a better density management. 418 | Project Address: https://github.com/frapontillo/ImageViewEx 419 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/imageviewex-demo.apk?raw=true 420 | 421 | 1. RoundedImageView 422 | A fast ImageView that supports rounded corners and ovals or circles 423 | Project Address: https://github.com/vinc3m1/RoundedImageView 424 | Renderings: ![Renderings](https://raw.github.com/makeramen/RoundedImageView/master/screenshot.png) 425 | 426 | 1. SelectableRoundedImageView 427 | ImageView that supports different radiuses on each corner. It also supports oval(and circle) shape and border. 428 | Project Address: https://github.com/pungrue26/SelectableRoundedImageView 429 | Demo Apk: https://play.google.com/store/apps/details?id=com.joooonho 430 | Renderings: ![Renderings](https://camo.githubusercontent.com/25d2e5fb8783b5dd09c00b03091172a79c69350e/687474703a2f2f692e696d6775722e636f6d2f55355653376d322e706e673f31) 431 | 432 | 1. ColorArt 433 | iTunes 11-style color matching code for Android, is a library that uses an image to create a themed image/text display 434 | Project Address: https://github.com/MichaelEvans/ColorArt 435 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/color-art-demo.apk?raw=true 436 | 437 | 1. CircleImageView 438 | A circular ImageView for Android 439 | Project Address: https://github.com/hdodenhof/CircleImageView 440 | Renderings: ![Renderings](https://raw.github.com/hdodenhof/CircleImageView/master/screenshot.png) 441 | 442 | 1. ImageViewZoom 443 | Android ImageView widget with zoom and pan capabilities 444 | Project Address: https://github.com/sephiroth74/ImageViewZoom 445 | Similar App: https://play.google.com/store/apps/details?id=com.aviary.android.feather 446 | 447 | 1. KenBurnsView 448 | Android library that provides an extension to ImageView that creates an immersive experience by animating its drawable using the Ken Burns Effect. 449 | Project Address: https://github.com/flavioarfaria/KenBurnsView 450 | 451 | 1. CustomShapeImageView 452 | Custom shape ImageView using PorterDuffXfermode with paint shapes and SVGs. 453 | Project Address: https://github.com/MostafaGazar/CustomShapeImageView 454 | Renderings: ![Renderings](https://raw.github.com/MostafaGazar/CustomShapeImageView/master/Screenshot_2013-11-05-23-08-12.png) 455 | 456 | 457 | #### 7. ProgressBar 458 | 1. SmoothProgressBar 459 | A small Android library allowing you to have a smooth and customizable horizontal indeterminate ProgressBar 460 | Project Address: https://github.com/castorflex/SmoothProgressBar 461 | Demo Apk: https://play.google.com/store/apps/details?id=fr.castorflex.android.smoothprogressbar.sample 462 | 463 | 1. ProgressWheel 464 | A progress wheel for android, intended for use instead of the standard progress bar. 465 | Project Address: https://github.com/Todd-Davies/ProgressWheel 466 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/progress-wheel-demo.apk?raw=true 467 | 468 | 1. android-square-progressbar 469 | A progressbar which go's around an image. 470 | Project Address: https://github.com/mrwonderman/android-square-progressbar 471 | Demo Apk: https://play.google.com/store/apps/details?id=net.yscs.android.square_progressbar_example 472 | Similar App: square 473 | Renderings: ![Renderings](https://googledrive.com/host/0BwESwPCuXtw7eExwSFVLQkR2TTg/newscreen1.png) 474 | 475 | 1. HoloCircularProgressBar 476 | HoloCircularProgressBar is a Custom View implementation for Android you might know from the Android Clock App from Android 4.1 477 | Project Address: https://github.com/passsy/android-HoloCircularProgressBar 478 | Similar App: Android4.1 Clock App 479 | Renderings: ![Renderings](https://raw.github.com/passsy/android-HoloCircularProgressBar/master/raw/screenshot1.png) 480 | 481 | 1. ProgressButton 482 | A custom progress indicator with a tiny footprint. 483 | Project Address: https://github.com/f2prateek/progressbutton 484 | Document: http://f2prateek.com/progressbutton/ 485 | Renderings: ![Renderings](http://f2prateek.com/progressbutton/static/states.png) 486 | 487 | 1. GoogleProgressBar 488 | Android library to display different kind of google related animations for the progressBar. 489 | Project Address: https://github.com/jpardogo/GoogleProgressBar 490 | Renderings: ![Renderings](https://raw.githubusercontent.com/jpardogo/GoogleProgressBar/master/art/GoogleProgressBar.gif) 491 | 492 | 1. TH-ProgressButton 493 | Circular progress View button inspired by FFCircularProgressView 494 | Project Address: https://github.com/torryharris/TH-ProgressButton 495 | Renderings: ![Renderings](https://raw.github.com/Vyshakh-K/TH-ProgressButton/master/screenshots/progressshot1.png) ![Renderings](https://raw.github.com/Vyshakh-K/TH-ProgressButton/master/screenshots/progressshot2.png) ![Renderings](https://raw.github.com/Vyshakh-K/TH-ProgressButton/master/screenshots/progressshot3.png) ![Renderings](https://raw.github.com/Vyshakh-K/TH-ProgressButton/master/screenshots/progressshot4.png) 496 | 497 | 1. NumberProgressBar 498 | ProgressBar with percentage number 499 | Project Address:https://github.com/daimajia/NumberProgressBar 500 | Renderings: ![Renderings](https://camo.githubusercontent.com/0c92568af7ec4e04e2e1503acdd2ca99854ab0b5/687474703a2f2f7777332e73696e61696d672e636e2f6d773639302f36313064633033346a77316566797264386e376937673230637a30326d7135662e676966) 501 | 502 | 1. CircularProgressDrawable 503 | Circular Progress Drawable 504 | Project Address:https://github.com/Sefford/CircularProgressDrawable 505 | Renderings: ![Renderings](https://raw.githubusercontent.com/Sefford/CircularProgressDrawable/master/overshoot.gif) 506 | 507 | 1. Android-RoundCornerProgressBar 508 | Android ProgressBar drawing Round Corner 509 | Project Address:https://github.com/akexorcist/Android-RoundCornerProgressBar 510 | Renderings: ![Renderings](https://raw.githubusercontent.com/akexorcist/Android-RoundCornerProgressBar/master/image/screenshot_02.png) 511 | 512 | 1. circular-progress-button 513 | Button could switch to show circular progress 514 | Project Address:https://github.com/dmytrodanylyk/circular-progress-button 515 | Renderings: ![Renderings](https://raw.githubusercontent.com/dmytrodanylyk/circular-progress-button/master/screenshots/intro.gif) 516 | 517 | 1. WaveView 518 | A ProgressBar which showing wave look progress 519 | Project Address:https://github.com/john990/WaveView 520 | Demo地址:https://raw.github.com/john990/WaveView/master/screenshot%26apk/demo.unaligned.apk 521 | Renderings: ![Renderings](https://camo.githubusercontent.com/60722e9d4f2d2daa78a8650cb27a32adea82bdd4/68747470733a2f2f7261772e6769746875622e636f6d2f6a6f686e3939302f57617665566965772f6d61737465722f73637265656e73686f7425323661706b2f73637265656e73686f742e676966) 522 | 523 | 1. MaterialLoadingProgressBar 524 | MaterialLoadingProgressBar provide a styled ProgressBar which looks like SwipeRefreshLayout's loading indicator(support-v4 v21+) 525 | Project Address:https://github.com/lsjwzh/MaterialLoadingProgressBar 526 | Renderings: ![Renderings](https://github.com/lsjwzh/MaterialLoadingProgressBar/raw/master/screen.gif) 527 | 528 | 529 | #### 8. TextView 530 | include TextView and other views extend TextView, like EditText, Button, RadioButton and so on 531 | 532 | 1. android-flowtextview 533 | A TextView for Android which supports text wrapping around other views 534 | Project Address: https://code.google.com/p/android-flowtextview/ 535 | Renderings: http://i949.photobucket.com/albums/ad332/vostroman1500/1.png 536 | 537 | 1. Android Form EditText 538 | Android form edit text is an extension of EditText that brings data validation facilities to the edittext. 539 | Project Address: https://github.com/vekexasia/android-edittext-validator 540 | Demo Apk: https://play.google.com/store/apps/details?id=com.andreabaccega.edittextformexample 541 | 542 | 1. Emojicon 543 | A library to show emoji in TextView, EditText (like WhatsApp) for Android 544 | Project Address: https://github.com/rockerhieu/emojicon 545 | Document: http://rockerhieu.com/emojicon/ 546 | 547 | 1. android-circlebutton 548 | Circle button widget for Android, extend from ImageView actually 549 | Project Address: https://github.com/markushi/android-circlebutton 550 | Demo Apk: https://github.com/markushi/android-circlebutton/blob/master/example/example.apk 551 | 552 | 1. Segmented Radio Buttons for Android 553 | Android implementation of iPhone's segmented control 554 | Project Address: https://github.com/vinc3m1/android-segmentedradiobutton 555 | Demo Apk: https://github.com/thquinn/DraggableGridView/blob/master/bin/DraggableGridViewSample.apk?raw=true 556 | Renderings: ![Renderings](https://raw.github.com/vinc3m1/android-segmentedradiobutton/master/screens/segmentedradio.png) 557 | 558 | 1. Chips EditText Library 559 | Chips EditText, Token EditText, Bubble EditText, Spannable EditText and etc.. There are many names of this control. Implement by SpannableStringBuilder actually 560 | Project Address: https://github.com/kpbird/chips-edittext-library 561 | Demo Apk: https://github.com/kpbird/chips-edittext-library/tree/master/ChipsEditTextDemo/bin 562 | 563 | 1. AutoFitTextView 564 | A TextView that automatically resizes text to fit perfectly within its bounds. 565 | Project Address: https://github.com/grantland/android-autofittextview 566 | 567 | 1. Shimmer for Android 568 | An Android TextView with a shimmering effect 569 | Project Address: https://github.com/RomainPiel/Shimmer-android 570 | 571 | 1. Titanic 572 | Android experiment showing a sinking TextView 573 | Project Address: https://github.com/RomainPiel/Titanic 574 | Renderings: ![Renderings](https://github.com/RomainPiel/Titanic/raw/master/titanic.gif) 575 | 576 | 577 | #### 9. Others 578 | 1. achartengine 579 | AChartEngine is a charting library for Android applications. It currently supports the following chart types: line chart, area chart, scatter chart, time chart, bar chart, pie chart, bubble chart, doughnut chart, range (high-low) bar chart, dial chart / gauge, combined (any combination of line, cubic line, scatter, bar, range bar, bubble) chart, cubic line chart and so on. 580 | Project Address: https://code.google.com/p/achartengine/ 581 | Official Website: http://www.achartengine.org/ 582 | Renderings: ![Renderings](http://www.achartengine.org/dimages/average_temperature.png) 583 | http://www.achartengine.org/dimages/sales_line_and_area_chart.png 584 | http://www.achartengine.org/dimages/temperature_range_chart.png 585 | http://www.achartengine.org/dimages/combined_chart.png 586 | http://www.achartengine.org/dimages/budget_chart.png 587 | Similar App: Wordpress Android,Google Analytics 588 | 589 | 1. GraphView 590 | Android Graph Library for creating zoomable and scrollable line and bar graphs. 591 | Project Address: https://github.com/jjoe64/GraphView 592 | Demo Project: https://github.com/jjoe64/GraphView-Demos 593 | Demo Apk: https://play.google.com/store/apps/details?id=com.sothree.umano 594 | Similar App: Wordpress Android,Google Analytics 595 | 596 | 1. android-flip 597 | A component for flip animation on Android, which is similar to the effect in Flipboard iPhone/Android 598 | Project Address: https://github.com/openaphid/android-flip 599 | Demo Apk: https://github.com/openaphid/android-flip/blob/master/FlipView/Demo/APK/Aphid-FlipView-Demo.apk?raw=true 600 | Similar App: flipboard 601 | 602 | 1. FlipImageView 603 | Small android lib allowing you to make a flip imageview easily, by extending FlipImageView. 604 | Project Address: https://github.com/castorflex/FlipImageView 605 | Demo Apk: https://play.google.com/store/apps/details?id=fr.castorflex.android.flipimageview 606 | 607 | 1. SwipeBackLayout 608 | An Android library that help you to build app with swipe back gesture. 609 | Project Address: https://github.com/Issacw0ng/SwipeBackLayout 610 | Demo Apk: https://play.google.com/store/apps/details?id=me.imid.swipebacklayout.demo 611 | Similar App: Zhihu 612 | 613 | 1. Cards-UI 614 | A library that allows you to easily mimic Google Play's card layout on Android. 615 | Project Address: https://github.com/afollestad/Cards-UI 616 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/cards-ui-demo.apk?raw=true 617 | 618 | 1. cardslib 619 | Card Library provides an easy way to display a UI Card in your Android app. You can display single cards, list of cards and grid or staggered grid of Cards. 620 | Project Address: https://github.com/gabrielemariotti/cardslib 621 | Demo Apk: https://play.google.com/store/apps/details?id=it.gmariotti.cardslib.demo 622 | 623 | 1. android-styled-dialogs 624 | A simple library for styling Android dialogs in the Holo theme. It also removes boilerplate code for displaying simple dialogs. 625 | Project Address: https://github.com/inmite/android-styled-dialogs 626 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/styled-dialogs-demo.apk?raw=true 627 | 628 | 1. Crouton 629 | Context sensitive notifications for Android, like toast. include style like alert, comfirm, info and click to dismiss, allow to set time of diaplay and customed view 630 | Project Address: https://github.com/keyboardsurfer/Crouton 631 | Demo Apk: http://play.google.com/store/apps/details?id=de.keyboardsurfer.app.demo.crouton 632 | 633 | 1. supertooltips 634 | SuperToolTips is an Open Source Android library that allows developers to easily create Tool Tips for views. 635 | Project Address: https://github.com/nhaarman/supertooltips 636 | Demo Apk: https://play.google.com/store/apps/details?id=com.haarman.supertooltips 637 | 638 | 1. Android ViewBadger 639 | A simple way to "badge" any given Android view at runtime without having to cater for it in layout 640 | Project Address: https://github.com/jgilfelt/android-viewbadger 641 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/android-viewbadger.apk?raw=true 642 | Renderings: https://github-camo.global.ssl.fastly.net/a705a3e88c75ae2394943bd7c56f725697616ea8/687474703a2f2f7777772e6a65666667696c66656c742e636f6d2f766965776261646765722f76622d31612e706e67 643 | 644 | 1. Android Sliding Up Panel 645 | This library provides a simple way to add a draggable sliding up panel (popularized by Google Music, Google Maps and Rdio) to your Android application. Umano Team <3 Open Source. 646 | Project Address: https://github.com/umano/AndroidSlidingUpPanel 647 | Demo Apk: https://play.google.com/store/apps/details?id=com.sothree.umano 648 | Similar App: Google Music 649 | 650 | 1. android-times-square 651 | Standalone Android widget for picking a single date from a calendar view. 652 | Project Address: https://github.com/square/android-times-square 653 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/times-square-demo.apk?raw=true 654 | 655 | 1. android-calendar-card 656 | Android calendar view (like card) 657 | Project Address: https://github.com/kenumir/android-calendar-card 658 | Demo Apk: https://play.google.com/store/apps/details?id=com.wt.calendarcardsample 659 | Renderings: ![Renderings](https://raw.github.com/kenumir/android-calendar-card/master/calendar-card-sample/_work/device-2013-10-12-151801.png) 660 | 661 | 1. ColorPickerView 662 | A simple yet beautiful color picker component for Android. 663 | Project Address: https://code.google.com/p/color-picker-view/ 664 | Renderings: ![Renderings](http://oi41.tinypic.com/33c6mm8.jpg) 665 | 666 | 1. HoloColorPicker 667 | An Android Holo themed colorpicker 668 | Project Address: https://github.com/LarsWerkman/HoloColorPicker 669 | Demo Apk: https://docs.google.com/file/d/0BwclyDTlLrdXRzVnTGJvTlRfU2s/edit 670 | 671 | 1. AndroidWheel 672 | Custom wheel widget for android 673 | Project Address: https://github.com/sephiroth74/AndroidWheel 674 | Renderings: ![Renderings](http://farm6.staticflickr.com/5532/11621528786_220c040ba5_o.jpg) 675 | 676 | 1. TableFixHeaders 677 | Android library that implements a table with fixed headers. 678 | Project Address: https://github.com/InQBarna/TableFixHeaders 679 | Demo Apk: http://bit.ly/13buAIq 680 | 681 | 1. UITableView 682 | Library and example project on how to use the UITableView component 683 | Project Address: https://github.com/thiagolocatelli/android-uitableview 684 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/ui-tableview-demo.apk?raw=true 685 | 686 | 1. ATableView 687 | Create iOS-like tables (UITableView) for Android, using UIKit object model 688 | Project Address: https://github.com/dmacosta/ATableView 689 | Demo Apk: https://play.google.com/store/apps/details?id=com.nakardo.atableview.demo 690 | 691 | 1. UndoBar 692 | The UI component for Android advanced UI pattern undo-bar, used in Gmail app 693 | Project Address: https://github.com/soarcn/UndoBar 694 | Renderings: ![Renderings](https://github.com/soarcn/UndoBar/blob/master/art/redo.png?raw=true) 695 | 696 | 1. Inscription 697 | Inscription is an open source library to display information about your Android app, like info of change or new feature 698 | Project Address: https://github.com/MartinvanZ/Inscription 699 | 700 | 1. ActivityTransition 701 | An android project presenting some transitions you can use between activities, like fade, flip, fly into and so on 702 | Project Address: https://github.com/ophilbert/ActivityTransition 703 | Demo Apk: https://github.com/jfeinstein10/JazzyViewPager/blob/master/JazzyViewPager.apk?raw=true 704 | 705 | 1. GlowPadBackport 706 | A backport of the Android 4.2 GlowPadView that works on the SDK on API levels 4+ 707 | Project Address: https://github.com/rock3r/GlowPadBackport 708 | Demo Apk: https://play.google.com/store/apps/details?id=net.sebastianopoggi.samples.ui.GlowPadSample 709 | Renderings: ![Renderings](https://lh6.ggpht.com/U070b6Lh6cVsVwx4jN-5nq0xqiB1PBzrYABPeJIEe2hZQ5UWOxc-FDUG77wADelToHA=h310-rw) 710 | 711 | 1. GlowPadView 712 | GlowPadView for Android is a great library to implement Google's lockscreen and new alarmclock style. 713 | Project Address: https://github.com/nadavfima/GlowPadView 714 | Renderings: https://raw.github.com/nadavfima/GlowPadView/master/example.png 715 | 716 | 1. android-lockpattern 717 | Lockpattern activity for Android 718 | Project Address: https://code.google.com/p/android-lockpattern/ 719 | Demo Apk: https://play.google.com/store/apps/details?id=group.pals.android.lib.ui.lockpattern.demo 720 | Document: https://code.google.com/p/android-lockpattern/wiki/QuickUse 721 | 722 | 1. PatternLock 723 | Yet another pattern lock library for Android 724 | Project Address:https://github.com/DreaminginCodeZH/PatternLock 725 | Demo Apk:https://github.com/DreaminginCodeZH/PatternLock/raw/master/dist/sample.apk 726 | Renderings:![Renderings](https://github.com/DreaminginCodeZH/PatternLock/raw/master/image/sample_small.png) 727 | 728 | 1. RangeBar 729 | Android widget for selecting a range of values. It provides for the selection of a range of values rather than a single value. 730 | Project Address: https://github.com/edmodo/range-bar 731 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/range-bar-demo.apk?raw=true 732 | Renderings: ![Renderings](http://i.imgur.com/q85GhRjl.png) 733 | 734 | 1. SuperToasts 735 | The SuperToasts library enhances and builds upon the Android Toast class. Some of the features of this library include context sensitive toasts (SuperActivityToasts), toasts with buttons and icons, non context sensitive toasts (SuperToasts), and a new style of toasts (SuperCardToasts) with many customization options for each. 736 | Project Address: https://github.com/JohnPersano/SuperToasts 737 | Demo Apk: https://play.google.com/store/apps/details?id=com.supertoastsdemo 738 | Renderings: ![SuperButtonToast](http://i1331.photobucket.com/albums/w597/JohnPersano/supertoasts_githubimage_zps8a5ceb7c.png) 739 | 740 | 1. GoogleDateTimePickers 741 | New Google Date and time pickers 742 | Project Address: https://github.com/Mirkoddd/GoogleDateTimePickers 743 | Document: https://play.google.com/store/apps/details?id=com.mirko.sample&hl=it 744 | 745 | 1. UndoBar 746 | An implementation of Android's Undo Bar as seen in Google's Gmail app. 747 | Project Address: https://github.com/jenzz/Android-UndoBar 748 | Renderings: ![Renderings](https://raw.github.com/jenzz/Android-UndoBar/master/assets/Screenshot2.png) 749 | 750 | 1. ColorPickerPreference 751 | ColorPickerPreference for android to create color picker in preferences. 752 | Project Address: https://github.com/attenzione/android-ColorPickerPreference 753 | Renderings: ![Renderings](https://github.com/attenzione/android-ColorPickerPreference/raw/master/screen_2.png) 754 | 755 | 1. HoloGraphLibrary 756 | This is a library written to allow beautiful graphs and charts to be easily incorporated into your Android application. 757 | Project Address: https://bitbucket.org/danielnadeau/holographlibrary/src 758 | Document: https://bitbucket.org/danielnadeau/holographlibrary/wiki/Home 759 | 760 | 1. ChromeView 761 | Android WebView implementation that uses the latest Chromium code 762 | Project Address: https://github.com/pwnall/chromeview 763 | 764 | 1. Discrollview 765 | DiscrollView support Item fading in or out, translate or scale 766 | Project Address: https://github.com/flavienlaurent/discrollview 767 | Demo Apk: https://github.com/flavienlaurent/discrollview/raw/master/sample.apk 768 | 769 | 1. Android Slider Preference Library 770 | Android library that allows applications to add dialog-based slider widgets to their settings 771 | Project Address: https://github.com/jayschwa/AndroidSliderPreference 772 | 773 | 1. ShowcaseView library 774 | Highlight the best bits of your app to users quickly 775 | Project Address: https://github.com/amlcurran/ShowcaseView 776 | 777 | 1. android-segmented-control 778 | ios7 UISegmentedControl for android 779 | Project Address: https://github.com/hoang8f/android-segmented-control 780 | 781 | 1. PullScrollView 782 | Pull and background rebound effect 783 | Project Address: https://github.com/MarkMjw/PullScrollView 784 | Renderings: ![Renderings](https://raw.github.com/MarkMjw/PullScrollView/master/Screenshots/1.png) 785 | 786 | 787 | 1. ArcLayout 788 | A very simple arc layout library 789 | Project Address: https://github.com/ogaclejapan/ArcLayout 790 | Demo Apk: https://play.google.com/store/apps/details?id=com.ogaclejapan.arclayout.demo 791 | Renderings: ![Renderings](https://raw.githubusercontent.com/ogaclejapan/ArcLayout/master/art/demo1.gif) 792 | 793 | ## 2. Common Util Libs 794 | Include Dependency Injection, ImageCache, Network, Database ORM, Android common lib, Compatible low version, Multimedia, Event Bus, Sensor, Security, Plug-in, File, Others 795 | #### 1. Dependency Injection 796 | Speeds up Android development by dependency injection 797 | 798 | 1. AndroidAnnotations(Code Diet) 799 | AndroidAnnotations is an Open Source framework that speeds up Android development. It takes care of the plumbing, and lets you concentrate on what's really important. 800 | Project Address: https://github.com/excilys/androidannotations 801 | Document: https://github.com/excilys/androidannotations/wiki 802 | Official Website: http://androidannotations.org/ 803 | 804 | 1. roboguice 805 | RoboGuice 2 takes the guesswork out of development. Inject your View, Resource, System Service, or any other object, and let RoboGuice 2 take care of the details. 806 | Project Address: https://github.com/roboguice/roboguice 807 | Document: https://github.com/roboguice/roboguice/wiki 808 | 809 | 1. butterknife 810 | View "injection" library for Android. 811 | Project Address: https://github.com/JakeWharton/butterknife 812 | Document: http://jakewharton.github.io/butterknife/ 813 | 814 | 1. Dagger 815 | A fast dependency injector for Android and Java. 816 | Project Address: https://github.com/square/dagger 817 | Document: http://square.github.io/dagger/ 818 | 819 | 820 | #### 2. Image Cache 821 | 1. Android-Universal-Image-Loader 822 | Powerful and flexible library for loading, caching and displaying images on Android. 823 | Project Address: https://github.com/nostra13/Android-Universal-Image-Loader 824 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/universal-imageloader-demo.apk?raw=true 825 | Document: http://www.intexsoft.com/blog/item/74-universal-image-loader-part-3.html 826 | 827 | 1. picasso 828 | A powerful image downloading and caching library for Android 829 | Project Address: https://github.com/square/picasso 830 | Document: http://square.github.io/picasso/ 831 | 832 | 1. ImageCache 833 | Image Cache, support multi caching algorithms 834 | Project Address: https://github.com/Trinea/AndroidCommon 835 | Demo Apk: https://play.google.com/store/apps/details?id=cn.trinea.android.demo 836 | Document: http://www.trinea.cn/android/android-imagecache/ 837 | 838 | 1. Cube ImageLoader 839 | Easy to use, high performance, used in some of the Apps in Alibaba Group. 840 | Project Address:https://github.com/etao-open-source/cube-sdk 841 | Demo Apk:https://github.com/liaohuqiu/cube-sdk/raw/master/cube-sdk-sample.apk 842 | Document:http://cube-sdk.liaohuqiu.net/ 843 | Renderings: ![Screen Shot](https://raw.githubusercontent.com/etao-open-source/cube-sdk/dev/screen-shot.png) 844 | 845 | 846 | #### 3. Network 847 | 1. Retrofit 848 | Type-safe REST client for Android and Java by Square 849 | Project Address: https://github.com/square/retrofit 850 | Document: http://square.github.io/retrofit/ 851 | 852 | 1. okhttp 853 | An HTTP+SPDY client for Android and Java applications. 854 | Project Address: https://github.com/square/okhttp 855 | Document: http://square.github.io/okhttp/ 856 | 857 | 1. Asynchronous Http Client for Android 858 | An asynchronous, callback-based Http client for Android built on top of Apache's HttpClient libraries. 859 | Project Address: https://github.com/loopj/android-async-http 860 | Document: http://loopj.com/android-async-http/ 861 | 862 | 1. android-query 863 | Android-Query (AQuery) is a light-weight library for doing asynchronous tasks and manipulating UI elements in Android. 864 | Project Address: https://code.google.com/p/android-query/ 865 | Document: https://code.google.com/p/android-query/#Why_AQuery? 866 | Demo Apk: https://play.google.com/store/apps/details?id=com.androidquery 867 | 868 | 1. Async Http Client 869 | Asynchronous Http and WebSocket Client library for Java 870 | Project Address: https://github.com/AsyncHttpClient/async-http-client 871 | Document: http://sonatype.github.io/async-http-client/ 872 | 873 | 1. Ion 874 | Android Asynchronous Networking and Image Loading 875 | Project Address: https://github.com/koush/ion 876 | Document: https://github.com/koush/ion#more-examples 877 | 878 | 1. Http Request 879 | A simple convenience library for using a HttpURLConnection to make requests and access the response. 880 | Project Address: https://github.com/kevinsawicki/http-request 881 | Document: https://github.com/kevinsawicki/http-request#examples 882 | 883 | 1. RoboSpice 884 | RoboSpice is a modular android library that makes writing asynchronous network requests easy 885 | Project Address: https://github.com/stephanenicolas/robospice 886 | Demo Apk: https://github.com/stephanenicolas/RoboDemo/downloads 887 | 888 | 889 | #### 4. Database 890 | 1. greenDAO 891 | GreenDAO is a light & fast ORM solution for Android that maps objects to SQLite databases. Being highly optimized for Android, greenDAO offers great performance and consumes minimal memory. 892 | Project Address: https://github.com/greenrobot/greenDAO 893 | Document: http://greendao-orm.com/documentation/ 894 | Official Website: http://greendao-orm.com/ 895 | 896 | 1. ActiveAndroid 897 | Active record style SQLite persistence for Android 898 | Project Address: https://github.com/pardom/ActiveAndroid 899 | Document: https://github.com/pardom/ActiveAndroid/wiki/_pages 900 | 901 | 1. Sprinkles 902 | Sprinkles is a boiler-plate-reduction-library for dealing with databases in android applications 903 | Project Address: https://github.com/emilsjolander/sprinkles 904 | Document: http://emilsjolander.github.io/blog/2013/12/18/android-with-sprinkles/ 905 | 906 | 1. ormlite-android 907 | ORMLite Android functionality used in conjunction with ormlite-core 908 | Project Address: https://github.com/j256/ormlite-android 909 | Document: http://ormlite.com/sqlite_java_android_orm.shtml 910 | 911 | 912 | #### 5. Android common lib 913 | 1. Guava 914 | The Guava project contains several of Google's core libraries that we rely on in our Java-based projects: collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, and so forth. 915 | Project Address: https://code.google.com/p/guava-libraries/ 916 | Document: https://code.google.com/p/guava-libraries/wiki/GuavaExplained 917 | 918 | 1. Volley 919 | Easy, Fast Networking for Android 920 | Project Address: https://android.googlesource.com/platform/frameworks/volley 921 | Github Address: https://github.com/mcxiaoke/android-volley 922 | Document: http://commondatastorage.googleapis.com/io-2013/presentations/110%20-%20Volley-%20Easy,%20Fast%20Networking%20for%20Android.pdf 923 | 924 | 1. AndroidCommon 925 | Android common lib, include ImageCache, HttpCache, DropDownListView, DownloadManager, Utils and so on 926 | Project Address: https://github.com/Trinea/AndroidCommon 927 | Demo Apk: https://play.google.com/store/apps/details?id=cn.trinea.android.demo 928 | Document: http://www.trinea.cn/android/android-common-lib/ 929 | 930 | 1. shipfaster 931 | Sample project demonstrating usage of Dagger + Otto + Robolectric + Retrofit + Picasso + OkHttp 932 | Project Address: https://github.com/pyricau/shipfaster 933 | 934 | 1. CleanAndroidCode 935 | This project is a proof of concept to show how to integrate Dagger, Otto and AndroidAnnotations. 936 | Project Address: https://github.com/pyricau/CleanAndroidCode 937 | 938 | 939 | #### 6. Android Compatible low version 940 | 1. ActionBarSherlock 941 | Action bar implementation which uses the native action bar on Android 4.0+ and a custom implementation on pre-4.0 through a single API and theme. 942 | Project Address: https://github.com/JakeWharton/ActionBarSherlock 943 | Demo Apk: https://play.google.com/store/apps/details?id=com.actionbarsherlock.sample.demos 944 | 945 | 1. Nine Old Androids 946 | Android library for using the Honeycomb animation API on all versions of the platform back to 1.0! 947 | Project Address: https://github.com/JakeWharton/NineOldAndroids 948 | Demo Apk: https://play.google.com/store/apps/details?id=com.jakewharton.nineoldandroids.sample 949 | Document: http://nineoldandroids.com/ 950 | 951 | 1. HoloEverywhere 952 | Bringing Holo Theme from Android 4.1 to 2.1 and above. 953 | Project Address: https://github.com/Prototik/HoloEverywhere 954 | Demo Apk: https://raw.github.com/Prototik/HoloEverywhere/repo/org/holoeverywhere/demo/2.1.0/demo-2.1.0.apk 955 | Document: http://android-developers.blogspot.com/2012/01/holo-everywhere.html 956 | 957 | 1. SherlockNavigationDrawer 958 | Modification of the Android NavigationDrawer sample to use ActionbarSherlock so that we can use the NavigationDrawer on older devices 959 | Project Address: https://github.com/tobykurien/SherlockNavigationDrawer 960 | 961 | 1. Notifications4EveryWhere 962 | Bringing Notifications from Android 4.1 to 2.2 and above. 963 | Project Address: https://github.com/youxiachai/Notifications4EveryWhere 964 | NavigationDrawerDocument: http://developer.android.com/training/implementing-navigation/nav-drawer.html 965 | 966 | 1. Android Switch Widget Backport 967 | A backport of the Switch widget that was introduced on Android 4.X to Android2.1++ 968 | Project Address: https://github.com/BoD/android-switch-backport 969 | Demo Apk: https://play.google.com/store/apps/details?id=org.jraf.android.backport.switchwidget.sample 970 | Document: https://github.com/BoD/android-switch-backport#using-the-switch 971 | 972 | 1. android-datepicker 973 | Android 4.0 DatePicker backported to 2.2 974 | Project Address: https://github.com/SimonVT/android-datepicker 975 | 976 | 977 | #### 7. Multimedia 978 | 1. cocos2d-x 979 | cocos2d-x is a multi-platform framework for building 2d games, interactive books, demos and other graphical applications. It is based on cocos2d-iphone, but instead of using Objective-C, it uses C++. It works on iOS, Android, Windows Phone, OS X, Windows and Linux. 980 | Project Address: https://github.com/cocos2d/cocos2d-x 981 | Document: http://www.cocos2d-x.org/wiki 982 | Official Website: http://www.cocos2d-x.org/ 983 | 984 | 1. Vitamio 985 | Vitamio is an open multimedia framework for Android and iOS, with full and real hardware accelerated decoder and renderer. 986 | Project Address: https://github.com/yixia/VitamioBundle 987 | Document: http://www.vitamio.org/docs/ 988 | 989 | 1. PhotoProcessing 990 | A demo of how you can process photos leveraging the ndk, support Instafix, Ansel, Testino, XPro, Retro, BW, Sepia, Cyano, Georgia, Sahara, HDR, Rotate, Flip and so on 991 | Project Address: https://github.com/lightbox/PhotoProcessing 992 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/photo-processing.apk?raw=true 993 | 994 | 1. Android StackBlur 995 | Android StackBlur is a library that can perform a blurry effect on a Bitmap based on a gradient or radius, and return the result. 996 | Project Address: https://github.com/kikoso/android-stackblur 997 | Demo Apk: https://github.com/kikoso/android-stackblur/blob/master/StackBlurDemo/bin/StackBlurDemo.apk?raw=true 998 | Document: https://github.com/kikoso/android-stackblur#usage 999 | 1000 | 1. Bitmap Smart Clipping using OpenCV 1001 | Bitmap Smart Clipping using OpenCV 1002 | Project Address: https://github.com/beartung/tclip-android 1003 | 1004 | 1. Cropper 1005 | Android widget for cropping and rotating an image. 1006 | Project Address: https://github.com/edmodo/cropper 1007 | Document: https://github.com/edmodo/cropper/wiki 1008 | Renderings: ![Renderings](https://github-camo.global.ssl.fastly.net/e4fde77bf41d4a60b234b4e268e5cfa8c17d9b6f/687474703a2f2f692e696d6775722e636f6d2f334668735467666c2e6a7067) 1009 | 1010 | 1. android-crop 1011 | Android library project for cropping images 1012 | Project Address: https://github.com/jdamcd/android-crop 1013 | Renderings: ![Renderings](https://github.com/jdamcd/android-crop/raw/master/screenshot.png) 1014 | 1015 | 1. TileView 1016 | The TileView widget is a subclass of ViewGroup that provides a mechanism to asynchronously display tile-based images, with additional functionality for 2D dragging, flinging, pinch or double-tap to zoom, adding overlaying Views (markers), built-in Hot Spot support, dynamic path drawing, multiple levels of detail, and support for any relative positioning or coordinate system. 1017 | Project Address: https://github.com/moagrius/TileView 1018 | Demo Apk: http://moagrius.github.io/TileView/TileViewDemo.apk 1019 | 1020 | 1. BlurEffectForAndroidDesign 1021 | Sample to show how to implement blur graphical tricks 1022 | Project Address: https://github.com/PomepuyN/BlurEffectForAndroidDesign 1023 | 1024 | 1. android-eye 1025 | Change your android phone to surveillance camera 1026 | Project Address: https://github.com/Teaonly/android-eye 1027 | Demo Apk: https://play.google.com/store/apps/details?id=teaonly.droideye 1028 | 1029 | 1. libpng for Android 1030 | libpng for Android NDK 1031 | Project Address: https://github.com/julienr/libpng-android 1032 | Document: http://www.libpng.org/pub/png/libpng.html 1033 | 1034 | 1035 | #### 8. Event Bus 1036 | A typical use case for Android apps is gluing Activities, Fragments, and background threads together. Conventional wiring of those elements often introduces complex and error-prone dependencies and life cycle issues. 1037 | 1038 | 1. EventBus 1039 | Android optimized event bus that simplifies communication between Activities, Fragments, Threads, Services, etc. Less code, better quality. 1040 | Project Address: https://github.com/greenrobot/EventBus 1041 | Document: https://github.com/greenrobot/EventBus#general-usage-and-api 1042 | 1043 | 1. Otto 1044 | An enhanced Guava-based event bus with emphasis on Android support. 1045 | Project Address: https://github.com/square/otto 1046 | Document: http://square.github.io/otto/ 1047 | Demo Apk: https://play.google.com/store/apps/details?id=de.greenrobot.eventperf 1048 | 1049 | 1050 | #### 9. Sensor 1051 | 1. Great Android Sensing Toolkit 1052 | GAST is a toolkit for using Android's Sensing capabilities. It contains the examples, boiler plate code, and algorithms you need to properly use Android sensors. 1053 | Project Address: https://github.com/gast-lib/gast-lib 1054 | Demo Apk: https://play.google.com/store/apps/details?id=root.gast.playground 1055 | Document: https://github.com/gast-lib/gast-lib#documentation 1056 | 1057 | 1. SensorManager 1058 | Android Sensor Manager Library 1059 | Project Address: https://github.com/nlathia/SensorManager 1060 | Document: https://docs.google.com/document/d/1TqThJULb-4e6TGb1gdkAaPCfyuXStjJpbnt7a0OZ9OE/edit 1061 | 1062 | 1. GPSLogger 1063 | GPSLogger is an Android app that logs GPS information to GPX, KML or text files and has options for annotating and sharing. 1064 | Project Address: https://github.com/mendhak/gpslogger 1065 | Demo Apk: https://play.google.com/store/apps/details?id=com.mendhak.gpslogger 1066 | Document: http://code.mendhak.com/gpslogger/ 1067 | 1068 | 1. Pedometer 1069 | Lightweight pedometer app for Android using the hardware step sensor 1070 | Project Address: https://github.com/j4velin/Pedometer 1071 | 1072 | 1. leapcast 1073 | ChromeCast emulation app for any device 1074 | Project Address: https://github.com/dz0ny/leapcast 1075 | 1076 | 1. Arduino-Communicator 1077 | Very simple Android application for communicating with Arduino 1078 | Project Address: https://github.com/jeppsson/Arduino-Communicator 1079 | 1080 | 1. android-pedometer 1081 | App for Android phones that counts your steps. 1082 | Project Address: https://github.com/bagilevi/android-pedometer 1083 | Demo Apk: http://pedometer.googlecode.com/files/Pedometer-1.4.apk 1084 | 1085 | 1. OwnTracks for Android 1086 | OwnTracks Android App 1087 | Project Address: https://github.com/owntracks/android 1088 | 1089 | 1. Shake Detector library for Android 1090 | This library provides a easy way to detect a shake movement using the build-in accelerometer and fire a callback on the UI thread every times it happens. 1091 | Project Address: https://github.com/tbouron/ShakeDetector 1092 | Demo Apk: https://play.google.com/store/apps/details?id=com.github.tbouron.shakedetector.example 1093 | 1094 | 1. Android heart rate monitor 1095 | Android heart rate monitor 1096 | Project Address: https://github.com/phishman3579/android-heart-rate-monitor 1097 | 1098 | 1. Bluetooth LE Library for Android 1099 | This library allows for easy access to a Bluetooth LE device's AdRecord and RSSI value. It offers additional functionality for iBeacons. 1100 | Project Address: https://github.com/alt236/Bluetooth-LE-Library---Android 1101 | Demo Apk: https://play.google.com/store/apps/details?id=uk.co.alt236.btlescan 1102 | 1103 | 1104 | #### 10. Security 1105 | 1. SQLCipher 1106 | SQLCipher is an SQLite extension that provides 256 bit AES encryption of database files. 1107 | Project Address: https://github.com/sqlcipher/sqlcipher 1108 | Document: http://sqlcipher.net/sqlcipher-for-android/ 1109 | 1110 | 1. Conceal 1111 | Conceal provides easy Android APIs for performing fast encryption and authentication of data, such as that stored on SD cards 1112 | Project Address: https://github.com/facebook/conceal 1113 | Document: https://github.com/facebook/conceal#usage 1114 | 1115 | 1. Android-PasscodeLock 1116 | Android Library that provides passcode lock to your app 1117 | Project Address: https://github.com/wordpress-mobile/Android-PasscodeLock 1118 | Demo Apk: https://play.google.com/store/apps/details?id=com.sothree.umano 1119 | Similar App: Wordpress Android, Alipay 1120 | 1121 | 1. GlowPadBackport 1122 | A backport of the Android 4.2 GlowPadView that works on the SDK on API levels 4+ 1123 | Project Address: https://github.com/rock3r/GlowPadBackport 1124 | Demo Apk: https://play.google.com/store/apps/details?id=net.sebastianopoggi.samples.ui.GlowPadSample 1125 | Renderings: ![Renderings](https://lh6.ggpht.com/U070b6Lh6cVsVwx4jN-5nq0xqiB1PBzrYABPeJIEe2hZQ5UWOxc-FDUG77wADelToHA=h310-rw) 1126 | 1127 | 1. GlowPadView 1128 | GlowPadView for Android is a great library to implement Google's lockscreen and new alarmclock style. (Taken from Android's Source Code) 1129 | Project Address: https://github.com/nadavfima/GlowPadView 1130 | Renderings: https://raw.github.com/nadavfima/GlowPadView/master/example.png 1131 | 1132 | 1. android-lockpattern 1133 | lockpattern activity for Android 1134 | Project Address: https://code.google.com/p/android-lockpattern/ 1135 | Demo Apk: https://play.google.com/store/apps/details?id=group.pals.android.lib.ui.lockpattern.demo 1136 | Document: https://code.google.com/p/android-lockpattern/wiki/QuickUse 1137 | 1138 | 1139 | #### 11. Maps 1140 | 1. GraphHopper 1141 | Fast routing library and server using OpenStreetMap 1142 | Project Address: https://github.com/graphhopper/graphhopper/ 1143 | Document: https://github.com/graphhopper/graphhopper/blob/master/docs/index.md#developers 1144 | Example APK address: https://graphhopper.com/#community 1145 | Official Website: https://graphhopper.com 1146 | Similar App: https://github.com/graphhopper/graphhopper/blob/master/docs/android/index.md#cruiser-app 1147 | Online Demo: https://graphhopper.com/maps 1148 | 1149 | 2. Mapsforge 1150 | Software for maps rendering based on OpenStreetMap 1151 | Project Address: https://github.com/mapsforge/mapsforge/ 1152 | Document: https://github.com/mapsforge/mapsforge/blob/master/docs/Getting-Started-Developers.md 1153 | Example APK address: https://graphhopper.com/#community 1154 | Renderings: ![Renderings](https://raw.githubusercontent.com/mapsforge/mapsforge/master/docs/images/screenshot-berlin-1.png) 1155 | 1156 | 1157 | #### 12. Others 1158 | 1. Salvage view 1159 | Generic view recycler and ViewPager PagerAdapter implementation. 1160 | Project Address: https://github.com/JakeWharton/salvage 1161 | 1162 | 1. Android Priority Job Queue 1163 | A Job Queue specifically written for Android to easily schedule jobs (tasks) that run in the background, improving UX and application stability. 1164 | Project Address: https://github.com/path/android-priority-jobqueue 1165 | Document: https://github.com/path/android-priority-jobqueue#getting-started 1166 | 1167 | 1. jsoup 1168 | Java HTML Parser, with best of DOM, CSS, and jquery 1169 | Project Address: https://github.com/jhy/jsoup 1170 | Official Website: http://jsoup.org/ 1171 | 1172 | 1. ZIP 1173 | ZeroTurnaround ZIP Library 1174 | Project Address: https://github.com/zeroturnaround/zt-zip 1175 | Document: https://github.com/zeroturnaround/zt-zip#examples 1176 | 1177 | 1. Cobub Razor 1178 | Cobub Razor - Open Source Mobile Analytics Solution, include web, android,ios, window phone 1179 | Project Address: https://github.com/cobub/razor 1180 | Demo Apk: http://demo.cobub.com/razor 1181 | Document: http://dev.cobub.com/ 1182 | 1183 | 1. aFileChooser 1184 | Android library that provides a file explorer to let users select files on external storage. 1185 | Project Address: https://github.com/iPaulPro/aFileChooser 1186 | 1187 | 1. androidpn 1188 | An open source project to provide push notification support for Android -- a xmpp based notification server and a client tool kit. 1189 | Project Address: https://github.com/dannytiehui/androidpn 1190 | 1191 | 1. purePDF 1192 | A complete actionscript PDF library 1193 | Project Address: https://github.com/sephiroth74/purePDF 1194 | 1195 | 1. Bolts 1196 | Bolts is a collection of low-level libraries designed to make developing mobile apps easier. 1197 | Project Address: https://github.com/BoltsFramework/Bolts-Android/ 1198 | 1199 | 1. CastCompanionLibrary-android 1200 | CastCompanionLibrary-android is a library project to enable developers integrate Cast capabilities into their applications faster and easier. 1201 | Project Address: https://github.com/googlecast/CastCompanionLibrary-android 1202 | Document: https://developers.google.com/cast/ 1203 | 1204 | 1. CastVideos-android 1205 | CastVideos-android application shows how to cast videos from an android device in a way that is fully compliant with the Design Checklist. 1206 | Project Address: https://github.com/googlecast/CastVideos-android 1207 | Document: https://developers.google.com/cast/ 1208 | 1209 | 1. Uninstall_Statics 1210 | Android Statistical application is uninstalled 1211 | Project Address: https://github.com/sevenler/Uninstall_Statics 1212 | Document: http://www.cnblogs.com/zealotrouge/p/3157126.html 1213 | 1214 | 1. xCombine 1215 | Android Plugin Framework 1216 | Project Address: https://github.com/wyouflf/xCombine 1217 | Document: http://my.oschina.net/u/1171837/blog/155377 1218 | 1219 | 1. Memento 1220 | Memento is an annotation processor for Android that gives your activities a memory. It introduces the @Retain annotation, which allows you to retain arbitrary fields of an activity across configuration changes in a simple and type-safe manner. 1221 | Project Address: https://github.com/mttkay/memento 1222 | Document: https://github.com/mttkay/memento#usage 1223 | 1224 | 1. svg-android 1225 | SVG parsing and rendering for Android 1226 | Project Address: https://code.google.com/p/svg-android/ 1227 | 1228 | 1. Office 365 SDK for Android Preview 1229 | Office 365 SDK for Android Preview by Microsoft Open Technologies, Inc. support Microsoft SharePoint Lists, Microsoft SharePoint Files, Microsoft Exchange Calendar, Microsoft Exchange Contacts, Microsoft Exchange Mail 1230 | Project Address: https://github.com/OfficeDev/Office-365-SDK-for-Android 1231 | 1232 | 1. OpenSpritz-Android 1233 | OpenSpritz concept for Android, is a Spritz-like .epub and website reader for Android 3.0+ 1234 | Project Address: https://github.com/OnlyInAmerica/OpenSpritz-Android 1235 | 1236 | 1. FreeFlow 1237 | A layout engine for Android that decouples layouts from the View containers that manage scrolling and view recycling. FreeFlow makes it really easy to create custom layouts and beautiful transition animations as data and layouts change 1238 | Project Address: https://github.com/Comcast/FreeFlow 1239 | Demo Apk: https://github.com/Comcast/FreeFlow/releases 1240 | 1241 | 1. Android Gesture Detectors Framework 1242 | Gesture detector framework for multitouch handling on Android 1243 | Project Address: https://github.com/Almeros/android-gesture-detectors 1244 | 1245 | 1246 | ## 3. Excellent projects 1247 | Linux 1248 | Project Address: https://github.com/torvalds/linux 1249 | Android 1250 | Project Address: https://android.googlesource.com/ 1251 | 1252 | (1) ZXing 1253 | ZXing ("zebra crossing") is an open-source, multi-format 1D/2D barcode image processing library implemented in Java, with ports to other languages. 1254 | Project Address: https://github.com/zxing/zxing 1255 | Demo Apk: https://play.google.com/store/apps/details?id=com.google.zxing.client.android 1256 | 1257 | (2) photup 1258 | With photup you can share your photos to your Facebook profile, quicker than ever before. 1259 | Project Address: https://github.com/chrisbanes/photup 1260 | Demo Apk: https://play.google.com/store/apps/details?id=uk.co.senab.photup 1261 | 1262 | (3) github-android 1263 | GitHub Android App 1264 | Project Address: https://github.com/github/android 1265 | Demo Apk: https://play.google.com/store/apps/details?id=com.github.mobile 1266 | 1267 | (4) Notes 1268 | MIUI Notes 1269 | Project Address: https://github.com/MiCode/Notes 1270 | Demo Apk: https://github.com/Trinea/TrineaDownload/blob/master/miui-note-demo.apk?raw=true 1271 | 1272 | (5) weicuiyuan 1273 | Sina Weibo Android Client 1274 | Project Address: https://github.com/qii/weiciyuan 1275 | Demo Apk: https://play.google.com/store/apps/details?id=org.qii.weiciyuan 1276 | 1277 | (6) gnucash-android 1278 | Gnucash for Android mobile companion application. 1279 | Project Address: https://github.com/codinguser/gnucash-android 1280 | Demo Apk: http://play.google.com/store/apps/details?id=org.gnucash.android 1281 | 1282 | (7) AntennaPod 1283 | A podcast manager for Android 1284 | Project Address: https://github.com/danieloeh/AntennaPod 1285 | Demo Apk: https://play.google.com/store/apps/details?id=de.danoeh.antennapod 1286 | 1287 | (8) ChaseWhisplyProject 1288 | An augmented reality attempt 1289 | Project Address: https://github.com/tvbarthel/ChaseWhisplyProject 1290 | Demo Apk: https://play.google.com/store/apps/details?id=fr.tvbarthel.games.chasewhisply 1291 | 1292 | (9) Tweet Lanes 1293 | Tweet Lanes for Android 1294 | Project Address: https://github.com/chrislacy/TweetLanes 1295 | Demo Apk: https://play.google.com/store/apps/details?id=com.tweetlanes.android 1296 | 1297 | (10) Financius 1298 | Android Expense Manager 1299 | Project Address: https://github.com/mvarnagiris/Financius 1300 | Demo Apk: https://play.google.com/store/apps/details?id=com.code44.finance 1301 | 1302 | (11) todo.txt-android 1303 | Official Todo.txt Android app for managing your todo.txt file stored in Dropbox. 1304 | Project Address: https://github.com/ginatrapani/todo.txt-android 1305 | Demo Apk: https://play.google.com/store/apps/details?id=com.todotxt.todotxttouch 1306 | 1307 | (13) Muzei Live Wallpaper 1308 | Muzei Live Wallpaper for Android 1309 | Project Address: https://github.com/romannurik/muzei 1310 | Demo Apk: https://play.google.com/store/apps/details?id=net.nurik.roman.muzei 1311 | 1312 | 1313 | ## 4: Development and testing tools 1314 | Android open source projects about development tools and testing tools. 1315 | #### 1. Development productivity tools 1316 | 1. Json2Java 1317 | Automate processing Java classes to mirror json models. 1318 | Project Address: https://github.com/jonfhancock/JsonToJava 1319 | Online Demo: http://jsontojava.appspot.com/ 1320 | 1321 | 1. IntelliJ Plugin for Android Parcelable boilerplate code generation 1322 | IntelliJ Plugin for Android Parcelable boilerplate code generation. 1323 | Project Address: https://github.com/mcharmas/android-parcelable-intellij-plugin 1324 | Renderings: ![Holo Colors Idea](https://github.com/mcharmas/android-parcelable-intellij-plugin/raw/master/screenshot.png) 1325 | 1326 | 1. Android Holo Colors IntelliJ Plugin 1327 | IntelliJ / Android Studio plugin for Android Holo Colors 1328 | Project Address: https://github.com/jeromevdl/android-holo-colors-idea-plugin 1329 | Renderings: ![Holo Colors Idea](https://raw.github.com/jeromevdl/android-holo-colors-idea-plugin/master/other/holocolorsidea.png) 1330 | 1331 | 1. Android Drawable Factory 1332 | A Java Application to create appropriate Drawable resources for your Android application 1333 | Project Address: https://github.com/tizionario/AndroidDrawableFactory 1334 | Renderings: ![Android Drawable Factory](https://github-camo.global.ssl.fastly.net/5c3844b345a9779296f996490070dab0bfc9dbf5/68747470733a2f2f646c2e64726f70626f7875736572636f6e74656e742e636f6d2f752f32363636343637352f416e64726f69644472617761626c65466163746f72792f312e706e67) 1335 | 1336 | 1. SelectorChapek for Android 1337 | Android Studio plugin which automatically generates drawable selectors from appropriately named resources. 1338 | Project Address: https://github.com/inmite/android-selector-chapek 1339 | 1340 | 1. Android Action Bar Style Generator 1341 | Easily create a simple, attractive and seamless custom action bar style for your Android application 1342 | Project Address: https://github.com/jgilfelt/android-actionbarstylegenerator 1343 | Online Demo: http://jgilfelt.github.io/android-actionbarstylegenerator/ 1344 | 1345 | 1. ButterKnifeZelezny 1346 | Android Studio plug-in for generating [ButterKnife](https://github.com/JakeWharton/butterknife) injections from selected layout XML. 1347 | Project Address: https://github.com/inmite/android-butterknife-zelezny 1348 | 1349 | 1. RoboCoP 1350 | Pure Java code generation tool for generating a fully functional ContentProvider for Android. 1351 | Project Address: https://github.com/mediarain/RoboCoP 1352 | 1353 | 1. appiconsizes 1354 | IOS and Android App Icon size generator 1355 | Project Address: http://www.appiconsizes.com/ 1356 | 1357 | 1. Gradle Retrolambda Plugin 1358 | This plugin will automatically build your java or android project with [Retrolambda](https://github.com/orfjackal/retrolambda), giving you lambda goodness on java 6 or 7. It relies on the wonderful retrolambda by Esko Luontola. 1359 | Project Address: https://github.com/evant/gradle-retrolambda 1360 | 1361 | 1. jsonschema2pojo 1362 | Generates Java types from JSON Schema (or example JSON) and annotates those types for data-binding with Jackson 1.x or 2.x, Gson. 1363 | Project Address: https://github.com/joelittlejohn/jsonschema2pojo 1364 | Online Demo: http://www.jsonschema2pojo.org/ 1365 | 1366 | 1367 | 1368 | #### 2. Develop self-test related 1369 | 1. Quality Tools for Android 1370 | This is an Android sample app + tests that will be used to work on various project to increase the quality of the Android platform. 1371 | Project Address: https://github.com/stephanenicolas/Quality-Tools-for-Android 1372 | 1373 | 1. android-test-kit 1374 | Google's Testing Tools For Android 1375 | Project Address: https://code.google.com/p/android-test-kit/ 1376 | Document: https://code.google.com/p/android-test-kit/w/list 1377 | 1378 | 1. robolectric 1379 | Robolectric is a unit test framework that de-fangs the Android SDK so you can test-drive the development of your Android app. 1380 | Project Address: https://github.com/robolectric/robolectric 1381 | Demo Apk: https://github.com/robolectric/robolectricsample 1382 | Document: http://robolectric.org/ 1383 | 1384 | 1. Android FEST 1385 | A set of FEST assertion helpers geared toward testing Android. 1386 | Project Address: https://github.com/square/fest-android 1387 | 1388 | 1. BoundBox 1389 | BoundBox provides an easy way to test an object by accessing all its fields, constructor and methods, public or not. BoundBox breaks encapsulation. 1390 | Project Address: https://github.com/stephanenicolas/boundbox 1391 | 1392 | 1. Hugo 1393 | Annotation-triggered method call logging for your debug builds. 1394 | Project Address: https://github.com/JakeWharton/hugo 1395 | 1396 | 1. scalpel 1397 | A surgical debugging tool to uncover the layers under your app. 1398 | Project Address: https://github.com/JakeWharton/scalpel 1399 | 1400 | 1. Android Screenshot library 1401 | On-demand screenshots for your Android integration tests 1402 | Project Address: https://github.com/rtyley/android-screenshot-lib 1403 | 1404 | 1. sonar-android-lint-plugin 1405 | Extension plugin for Android Lint in Sonar 1406 | Project Address: https://github.com/SonarCommunity/sonar-android 1407 | Document: http://docs.codehaus.org/display/SONAR/Android+Plugin 1408 | 1409 | 1410 | #### 3. Testing tools 1411 | 1. Spoon 1412 | Distributing instrumentation tests to all your Androids. 1413 | Project Address: https://github.com/square/spoon 1414 | 1415 | 1416 | #### 4. Development and build environment 1417 | 1. Buck 1418 | Buck is an Android build tool, is more powerful than ant. 1419 | Project Address: https://github.com/facebook/buck 1420 | 1421 | 1. Android Maven Plugin 1422 | A plugin for Android application development with Apache Maven 3.1.1+ and the Android SDK. 1423 | Project Address: https://github.com/jayway/maven-android-plugin 1424 | 1425 | 1. umeng-muti-channel-build-tool 1426 | Umeng packaing tools 1427 | Project Address: https://github.com/umeng/umeng-muti-channel-build-tool 1428 | 1429 | 1. Genymotion 1430 | THE FASTER ANDROID EMULATOR 1431 | Project Address: http://www.genymotion.com/ 1432 | 1433 | 1. gradle-mvn-push 1434 | Helper to upload Gradle Android Artifacts to Maven repositories 1435 | Project Address: https://github.com/chrisbanes/gradle-mvn-push 1436 | Document: https://github.com/chrisbanes/gradle-mvn-push#usage 1437 | 1438 | 1. Android Emulator Plugin for Jenkins 1439 | Android Emulator plugin for Jenkins 1440 | Project Address: https://github.com/jenkinsci/android-emulator-plugin 1441 | 1442 | 1. Android Maven Plugin 1443 | A tool to install components of the Android SDK to use with the Maven Android Plugin. 1444 | Project Address: https://github.com/mosabua/maven-android-sdk-deployer 1445 | 1446 | 1. SDK Manager Plugin 1447 | Gradle plugin which downloads and manages your Android SDK. 1448 | Project Address: https://github.com/JakeWharton/sdk-manager-plugin 1449 | 1450 | 1451 | #### 5. Others 1452 | 1. ViewServer 1453 | Local server for Android's HierarchyViewer 1454 | Project Address: https://github.com/romainguy/ViewServer 1455 | 1456 | 1. GridWichterle for Android 1457 | This app will show grid overlay over whole system which helps you to verify your excellent app design. 1458 | Project Address: https://github.com/inmite/android-grid-wichterle 1459 | Demo Apk: https://play.google.com/store/apps/details?id=eu.inmite.android.gridwichterle 1460 | 1461 | 1. Catlog 1462 | Logcat-reading app for Android 1463 | Project Address: https://github.com/nolanlawson/Catlog 1464 | Online Demo: https://play.google.com/store/apps/details?id=com.nolanlawson.logcat 1465 | 1466 | 1. PID Cat 1467 | Colored logcat script which only shows log entries for a specific application package. 1468 | Project Address: https://github.com/JakeWharton/pidcat 1469 | 1470 | 1. ACRA 1471 | ACRA is a library enabling Android Application to automatically post their crash reports to a GoogleDoc form. It is targetted to android applications developers to help them get data from their applications when they crash or behave erroneously. 1472 | Project Address: https://github.com/ACRA/acra 1473 | Document: https://github.com/ACRA/acra/wiki/BasicSetup 1474 | 1475 | 1. Android Resource Navigator 1476 | Chrome Extension providing enhanced resource navigation for GitHub hosted Android projects 1477 | Project Address: https://github.com/jgilfelt/android-resource-navigator 1478 | Online Demo: https://chrome.google.com/webstore/detail/android-resource-navigato/agoomkionjjbejegcejiefodgbckeebo?hl=en&gl=GB 1479 | 1480 | 1481 | ## 4. Outstanding individuals and groups 1482 | #### 1. Individual 1483 | 1. JakeWharton 1484 | Github Address: https://github.com/JakeWharton 1485 | Masterpiece: ActionBarSherlock,Android-ViewPagerIndicator,Nine Old Androids,SwipeToDismissNOA,hugo,butterknife,Android-DirectionalViewPager, scalpel 1486 | HomePage: http://jakewharton.com/ 1487 | 1488 | 1. Chris Banes 1489 | Github Address: https://github.com/chrisbanes 1490 | Masterpiece: ActionBar-PullToRefresh,PhotoView,Android-BitmapCache,Android-PullToRefresh 1491 | HomePage: http://chris.banes.me/ 1492 | 1493 | 1. Koushik Dutta 1494 | Github Address: https://github.com/koush 1495 | Masterpiece: Superuser,AndroidAsync,UrlImageViewHelper,ion 1496 | HomePage: http://koush.com/ 1497 | 1498 | 1. Simon Vig 1499 | Github Address: https://github.com/SimonVT 1500 | Masterpiece: android-menudrawer,MessageBar 1501 | HomePage: http://simonvt.net/ 1502 | 1503 | 1. Manuel Peinado 1504 | Github Address: https://github.com/ManuelPeinado 1505 | Masterpiece: FadingActionBar,GlassActionBar,RefreshActionItem,QuickReturnHeader 1506 | 1507 | 1. Emil Sj?lander 1508 | Github Address: https://github.com/emilsjolander 1509 | Masterpiece: StickyListHeaders,sprinkles,android-FlipView 1510 | HomePage: http://emilsjolander.se/ 1511 | 1512 | 1. greenrobot 1513 | Github Address: https://github.com/greenrobot 1514 | Masterpiece: greenDAO,EventBus 1515 | HomePage: http://greenrobot.de/ 1516 | 1517 | 1. Jeff Gilfelt 1518 | Github Address: https://github.com/jgilfelt 1519 | Masterpiece: android-mapviewballoons,android-viewbadger,android-actionbarstylegenerator,android-sqlite-asset-helper 1520 | HomePage: http://jeffgilfelt.com 1521 | 1522 | 1. Romain Guy 1523 | Github Address: https://github.com/romainguy 1524 | Masterpiece: ViewServer 1525 | HomePage: http://www.curious-creature.org/category/android/ 1526 | Other:http://www.flickr.com/photos/romainguy 1527 | 1528 | 1. sephiroth74 1529 | Github Address: https://github.com/sephiroth74 1530 | Masterpiece: ImageViewZoom,HorizontalVariableListView,AndroidWheel,purePDF 1531 | HomePage: http://www.sephiroth.it/ 1532 | 1533 | 1. Cyril Mottier 1534 | Github Address: https://github.com/cyrilmottier 1535 | Masterpiece: GreenDroid,Polaris 1536 | HomePage: http://cyrilmottier.com/ 1537 | 1538 | 1539 | #### 2. Group 1540 | 1. Square 1541 | Github Address: https://github.com/square 1542 | Masterpiece: okhttp, fest-android,android-times-square, picasso, dagger, spoon and so on 1543 | HomePage: http://square.github.io/ 1544 | 1545 | 1. Inmite s.r.o. 1546 | Github Address: https://github.com/inmite 1547 | Masterpiece: android-styled-dialogs,android-grid-wichterle,android-selector-chapek 1548 | HomePage: http://www.inmite.eu/ 1549 | 1550 | 1551 | ## License 1552 | 1553 | Copyright 2014 trinea.cn 1554 | 1555 | Licensed under the Apache License, Version 2.0 (the "License"); 1556 | you may not use this file except in compliance with the License. 1557 | You may obtain a copy of the License at 1558 | 1559 | http://www.apache.org/licenses/LICENSE-2.0 1560 | 1561 | Unless required by applicable law or agreed to in writing, software 1562 | distributed under the License is distributed on an "AS IS" BASIS, 1563 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1564 | See the License for the specific language governing permissions and 1565 | limitations under the License. 1566 | 1567 | -------------------------------------------------------------------------------- /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)或在 [收集&提交頁](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. android-Ultra-Pull-to-Refresh 37 | 這是現在已經停止維護的下拉刷新項目的替代方案,繼承于ViewGroup, 可以包含任何View,功能比SwipeRefreshLayout強大,稱為終極下拉刷新。 38 | 使用起來非常簡單,良好的設計,如果你想定製自己的UI樣式,那也非常簡單,就像給ListView加一個Header View那麼簡單。 39 | 支持 `API LEVEL >= 8` 40 | 項目地址:https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh 41 | Demo地址:https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh/blob/master/ptr-demo/target/ultra-ptr-demo.apk?raw=true 42 | 效果圖: 43 |
44 | 45 | 46 | 47 | 48 |
49 | 50 | 1. DropDownListView 51 | 下拉刷新及滑動到底部加載更多ListView 52 | 項目地址:https://github.com/Trinea/AndroidCommon 53 | Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo 54 | 文檔介紹:http://www.trinea.cn/android/dropdown-to-refresh-and-bottom-load-more-listview/ 55 | 56 | 1. DragSortListView 57 | 拖動排序的ListView,同時支持ListView滑動item刪除,各個Item高度不一、單選、複選、CursorAdapter做爲適配器、拖動背景變化等 58 | 項目地址:https://github.com/bauerca/drag-sort-listview 59 | Demo地址:https://play.google.com/store/apps/details?id=com.mobeta.android.demodslv 60 | APP示例:Wordpress Android 61 | 62 | 1. SwipeListView 63 | 支持定義ListView左右滑動事件,支持左右滑動位移,支持定義動畫時間 64 | 項目地址:https://github.com/47deg/android-swipelistview 65 | Demo地址:https://play.google.com/store/apps/details?id=com.fortysevendeg.android.swipelistview 66 | APP示例:微信 67 | 68 | 1. RecyclerViewSwipeDismiss 69 | 輕量級支持support-v7中的RecyclerView的滑動刪除(Swipe to dismiss)行為,不需要修改源代碼,只要間單的邦定`onTouchListener` 70 | 項目地址:https://github.com/CodeFalling/RecyclerViewSwipeDismiss 71 | 效果圖:![Renderings](http://i2.tietuku.com/a5a1a6fbd300397a.gif) 72 | 73 | 1. Android-SwipeToDismiss 74 | 滑動Item消失ListView 75 | 項目地址:https://github.com/romannurik/Android-SwipeToDismiss 76 | 支持3.0以下版本見:https://github.com/JakeWharton/SwipeToDismissNOA 77 | Demo地址:https://github.com/JakeWharton/SwipeToDismissNOA/SwipeToDismissNOA.apk/qr_code 78 | 79 | 1. StickyListHeaders 80 | GroupName滑動到頂端時會固定不動直到另外一個GroupName到達頂端的ExpandListView,支持快速滑動,支持Android2.3及以上 81 | 項目地址:https://github.com/emilsjolander/StickyListHeaders 82 | APP示例:Android 4.0聯系人 83 | 效果圖:![Renderings](https://raw.github.com/emilsjolander/StickyListHeaders/master/demo.gif) 84 | 85 | 1. pinned-section-listview 86 | GroupName滑動到頂端時會固定不動直到另外一個GroupName到達頂端的ExpandListView 87 | 項目地址:https://github.com/beworker/pinned-section-listview 88 | 效果圖:![Renderings](https://raw.github.com/beworker/pinned-section-listview/master/screen1.png) 89 | 90 | 1. PinnedHeaderListView 91 | GroupName滑動到頂端時會固定不動直到另外一個GroupName到達頂端的ExpandListView 92 | 項目地址:https://github.com/JimiSmith/PinnedHeaderListView 93 | 94 | 1. QuickReturnHeader 95 | ListView/ScrollView的header或footer,當向下滾動時消失,向上滾動時出現 96 | 項目地址:https://github.com/ManuelPeinado/QuickReturnHeader 97 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/quick-return-header-demo.apk?raw=true 98 | APP示例:google plus 99 | 100 | 1. IndexableListView 101 | ListView右側會顯示item首字母快捷索引,點擊可快速滑動到某個item 102 | 項目地址:https://github.com/woozzu/IndexableListView 103 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/indexable-listview.apk?raw=true 104 | APP示例:微信通訊錄、小米聯系人 105 | 106 | 1. CustomFastScrollView 107 | ListView快速滑動,同時屏幕中間PopupWindows顯示滑動到的item內容或首字母 108 | 項目地址:https://github.com/nolanlawson/CustomFastScrollViewDemo 109 | 效果圖:![Renderings](https://raw.github.com/nolanlawson/CustomFastScrollViewDemo/master/example.png) 110 | 111 | 1. Android-ScrollBarPanel 112 | ListView滑動時固定的Panel指示顯示在scrollbar旁邊 113 | 項目地址:https://github.com/rno/Android-ScrollBarPanel 114 | 效果展示:https://github.com/rno/Android-ScrollBarPanel/raw/master/demo_capture.png 115 | 116 | 1. SlideExpandableListView 117 | 用戶點擊listView item滑出固定區域,其他item的區域收縮 118 | 項目地址:https://github.com/tjerkw/Android-SlideExpandableListView 119 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/slide-expandable-listView-demo.apk?raw=true 120 | 121 | 1. JazzyListView 122 | ListView及GridView item以特殊動畫效果進入屏幕,效果包括grow、cards、curl、wave、flip、fly等等 123 | 項目地址:https://github.com/twotoasters/JazzyListView 124 | Demo地址:https://play.google.com/store/apps/details?id=com.twotoasters.jazzylistview.sample 125 | 效果展示:http://lab.hakim.se/scroll-effects/ 126 | 127 | 1. ListViewAnimations 128 | 帶Item顯示動畫的ListView,動畫包括底部飛入、其他方向斜飛入、下層飛入、漸變消失、滑動刪除等 129 | 項目地址:https://github.com/nhaarman/ListViewAnimations 130 | Demo地址:https://play.google.com/store/apps/details?id=com.haarman.listviewanimations 131 | 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 132 | 133 | 1. DevsmartLib-Android 134 | 橫向ListView 135 | 項目地址:https://github.com/dinocore1/DevsmartLib-Android 136 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/horizontal-listview-demo.apk?raw=true 137 | 138 | 1. HorizontalVariableListView 139 | 支持Item寬度不一致的ListView 140 | 項目地址:https://github.com/sephiroth74/HorizontalVariableListView 141 | 142 | 1. LinearListView 143 | 用LinearLayout實現的ListView,可解決多個ListView並且等問題。目前自己也有需要,等親自嘗試過後會再具體介紹 144 | 項目地址:https://github.com/frankiesardo/LinearListView 145 | 146 | 1. MultiChoiceAdapter 147 | 支持多選的ListView Adapter 148 | 項目地址:https://github.com/ManuelPeinado/MultiChoiceAdapter 149 | Demo地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.multichoiceadapter.demo 150 | 151 | 1. EnhancedListView 152 | 支持橫向滑動滑動刪除列表項以及撤銷刪除的ListView,該項目的前身是[SwipeToDismissUndoList](https://github.com/timroes/SwipeToDismissUndoList) 153 | 項目地址:https://github.com/timroes/EnhancedListView 154 | Demo地址:https://play.google.com/store/apps/details?id=de.timroes.android.listviewdemo&rdid=de.timroes.android.listviewdemo 155 | 156 | 1. ListBuddies 157 | 自動滾動的雙列ListView ,兩個ListView滾動速度不一致,有視差效果 158 | 項目地址:https://github.com/jpardogo/ListBuddies 159 | Demo地址:https://play.google.com/store/apps/details?id=com.jpardogo.android.listbuddies 160 | 效果展示:![Renderings](https://raw.github.com/jpardogo/ListBuddies/master/art/screenshot_listbuddies_2.png) 161 | 162 | 163 | #### 二、ActionBar 164 | 1. ActionBarSherlock 165 | 爲Android所有版本提供統一的ActionBar,解決4.0以下ActionBar的適配問題 166 | 項目地址:https://github.com/JakeWharton/ActionBarSherlock 167 | Demo地址:https://play.google.com/store/apps/details?id=com.actionbarsherlock.sample.demos 168 | APP示例:太多了。。現在連google都在用 169 | 170 | 1. ActionBar-PullToRefresh 171 | 下拉刷新,ActionBar出現加載中提示 172 | 項目地址:https://github.com/chrisbanes/ActionBar-PullToRefresh 173 | Demo地址:https://play.google.com/store/apps/details?id=uk.co.senab.actionbarpulltorefresh.samples.stock 174 | APP示例:Gmail,Google plus,知乎等 175 | 176 | 1. FadingActionBar 177 | ListView向下滾動逐漸顯現的ActionBar 178 | 項目地址:https://github.com/ManuelPeinado/FadingActionBar 179 | Demo地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.fadingactionbar.demo 180 | APP示例:google music,知乎 181 | 182 | 1. NotBoringActionBar 183 | google music下拉收縮的ActionBar 184 | 項目地址:https://github.com/flavienlaurent/NotBoringActionBar 185 | Demo地址:http://flavienlaurent.com/blog/2013/11/20/making-your-action-bar-not-boring/ 186 | APP示例:Google音樂 187 | 188 | 1. RefreshActionItem 189 | 帶進度顯示和刷新按鈕的ActionBar 190 | 項目地址:https://github.com/ManuelPeinado/RefreshActionItem 191 | Demo地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.refreshactionitem.demo 192 | APP示例:The New York Times,DevAppsDirect. 193 | 194 | 1. GlassActionBar 195 | 類似玻璃的有一定透明度的ActionBar 196 | 項目地址:https://github.com/ManuelPeinado/GlassActionBar 197 | Demo地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.glassactionbardemo 198 | APP示例:google music 199 | 200 | 201 | #### 三、Menu 202 | 1. MenuDrawer 203 | 滑出式菜單,通過拖動屏幕邊緣滑出菜單,支持屏幕上下左右劃出,支持當前View處于上下層,支持Windows邊緣、ListView邊緣、ViewPager變化劃出菜單等。 204 | 項目地址:https://github.com/SimonVT/android-menudrawer 205 | Demo地址:http://simonvt.github.io/android-menudrawer/ 206 | APP示例:Gmail、Google Music等大部分google app 207 | 208 | 1. SlidingMenu 209 | 滑出式菜單,通過拖動屏幕邊緣滑出菜單,支持屏幕左右劃出,支持菜單zoom、scale、slide up三種動畫樣式出現。 210 | 項目地址:https://github.com/jfeinstein10/SlidingMenu 211 | Demo地址:https://play.google.com/store/apps/details?id=com.slidingmenu.example 212 | 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 213 | MenuDrawer和SlidingMenu比較:SlidingMenu支持菜單動畫樣式出現,MenuDrawer支持菜單view處于內容的上下層 214 | 215 | 1. ArcMenu 216 | 支持類似Path的左下角動畫旋轉菜單及橫向劃出菜單、圓心彈出菜單 217 | 項目地址:https://github.com/daCapricorn/ArcMenu 218 | APP示例:Path 219 | 效果圖:![Renderings](https://dl.dropboxusercontent.com/u/11369687/preview0.png) 220 | https://dl.dropboxusercontent.com/u/11369687/preview1.png 221 | https://dl.dropboxusercontent.com/u/11369687/raymenu.png 222 | 223 | 1. android-satellite-menu 224 | 類似Path的左下角動畫旋轉菜單 225 | 項目地址:https://github.com/siyamed/android-satellite-menu 226 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/satellite-menu-demo.apk?raw=true 227 | APP示例:Path 228 | 229 | 1. radial-menu-widget 230 | 圓形菜單,支持二級菜單 231 | 項目地址:https://code.google.com/p/radial-menu-widget/ 232 | 效果圖:http://farm8.staticflickr.com/7377/11621125154_d1773c2dcc_o.jpg 233 | 234 | 1. Android Wheel Menu 235 | 圓形旋轉選取菜單 236 | 項目地址:https://github.com/anupcowkur/Android-Wheel-Menu 237 | 效果圖:![Renderings](https://raw.github.com/anupcowkur/Android-Wheel-Menu/master/graphics/wheel.gif) 238 | 239 | 1. FoldingNavigationDrawer 240 | 滑動並以折疊方式打開菜單 241 | 項目地址:https://github.com/tibi1712/FoldingNavigationDrawer-Android 242 | 使用介紹:https://play.google.com/store/apps/details?id=com.ptr.folding.sample 243 | 效果圖:![Renderings](https://lh6.ggpht.com/VnKUZenAozQ0KFAm5blFTGqMaKFjvX-BK2JH-jrX1sIXVTqciACqRhqFH48hc4pm2Q=h310-rw) 244 | 245 | 1. AndroidResideMenu 246 | 仿 Dribbble 的邊欄菜單 247 | 項目地址:https://github.com/SpecialCyCi/AndroidResideMenu 248 | 效果圖:![Renderings](https://github.com/SpecialCyCi/AndroidResideMenu/raw/master/2.gif) 249 | 250 | 251 | #### 四、ViewPager 、Gallery 252 | 1. Android-ViewPagerIndicator 253 | 配合ViewPager使用的Indicator,支持各種位置和樣式 254 | 項目地址:https://github.com/JakeWharton/Android-ViewPagerIndicator 255 | Demo地址:https://play.google.com/store/apps/details?id=com.viewpagerindicator.sample 256 | APP示例:太多了。。 257 | 258 | 1. JazzyViewPager 259 | 支持Fragment切換動畫的ViewPager,動畫包括轉盤、淡入淡出、翻頁、層疊、旋轉、方塊、翻轉、放大縮小等 260 | 項目地址:https://github.com/jfeinstein10/JazzyViewPager 261 | Demo地址:https://github.com/jfeinstein10/JazzyViewPager/blob/master/JazzyViewPager.apk?raw=true 262 | 效果類似桌面左右切換的各種效果,不過桌面並非用ViewPager實現而已 263 | 264 | 1. Android-DirectionalViewPager 265 | 支持橫向和縱向(垂直)的ViewPager 266 | 項目地址:https://github.com/JakeWharton/Android-DirectionalViewPager 267 | Demo地址:https://market.android.com/details?id=com.directionalviewpager.sample 268 | 269 | 1. android-pulltorefresh 270 | 支持下拉刷新的ViewPager 271 | 項目地址:https://github.com/chrisbanes/Android-PullToRefresh 272 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refreshview-demo.apk?raw=true 273 | APP示例:新浪微博各個頁面 274 | 275 | 1. FancyCoverFlow 276 | 支持Item切換動畫效果的類似Gallery View 277 | 項目地址:https://github.com/davidschreiber/FancyCoverFlow 278 | Demo地址:https://play.google.com/store/apps/details?id=at.technikum.mti.fancycoverflow.samples 279 | 效果圖:![Renderings](https://github-camo.global.ssl.fastly.net/ef5ced52b7b54652b50499521ed797c0188c7a6b/687474703a2f2f64617669647363687265696265722e6769746875622e696f2f46616e6379436f766572466c6f772f73637265656e73686f74322e706e67) 280 | 281 | 1. AndroidTouchGallery 282 | 支持雙擊或雙指縮放的Gallery(用ViewPager實現),相比下面的PhotoView,在被放大後依然能滑到下一個item,並且支持直接從url和文件中獲取圖片, 283 | 項目地址:https://github.com/Dreddik/AndroidTouchGallery 284 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/touch-gallery-demo.apk?raw=true 285 | APP示例:類似微信中查看聊天記錄圖片時可雙擊放大,並且放大情況下能正常左右滑動到前後圖片 286 | 287 | 1. Android Auto Scroll ViewPager 288 | Android自動滾動 輪播循環的ViewPager 289 | 項目地址:https://github.com/Trinea/android-auto-scroll-view-pager 290 | Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo 291 | 文檔介紹:http://www.trinea.cn/android/auto-scroll-view-pager/ 292 | 293 | 1. Salvage view 294 | 帶View緩存的Viewpager PagerAdapter,很方便使用 295 | 項目地址:https://github.com/JakeWharton/salvage 296 | 297 | 1. Android PagerSlidingTabStrip 298 | 配合ViewPager使用的Indicator,支持ViewPager Scroll時Indicator聯動 299 | 項目地址:https://github.com/astuetz/PagerSlidingTabStrip 300 | Demo地址:https://play.google.com/store/apps/details?id=com.astuetz.viewpager.extensions.sample 301 | 302 | 1. SmartTabLayout 303 | 自定義的Tab title strip,基於Google Samples中的android-SlidingTabBasic項目,滑動時Indicator可平滑過渡. 304 | 項目地址:https://github.com/ogaclejapan/SmartTabLayout 305 | Demo地址:https://play.google.com/store/apps/details?id=com.ogaclejapan.smarttablayout.demo 306 | 效果圖:![Renderings](https://raw.githubusercontent.com/ogaclejapan/SmartTabLayout/master/art/demo1.gif) 307 | 308 | 1. SmartTabLayout 309 | 自定義的Tab title strip,基於Google Samples中的android-SlidingTabBasic項目,滑動時Indicator可平滑過渡. 310 | 項目地址:https://github.com/ogaclejapan/SmartTabLayout 311 | Demo地址:https://play.google.com/store/apps/details?id=com.ogaclejapan.smarttablayout.demo 312 | 效果圖:![Renderings](https://raw.githubusercontent.com/ogaclejapan/SmartTabLayout/master/art/demo1.gif) 313 | 314 | 1. ViewPager3D效果 315 | 項目地址:https://github.com/inovex/ViewPager3D 316 | 317 | 318 | 319 | 1. AnimaTabsview 320 | 仿網易雲音樂標簽切換的動畫,帶透明小三角 321 | 項目地址:https://github.com/wuyexiong/transparent-over-animtabsview 322 | 在線演示:http://v.youku.com/v_show/id_XNzA4MjY5NjA0.html 323 | 324 | 1. LoopingViewPager 325 | 無限循環的ViewPager 326 | 項目地址:https://github.com/imbryk/LoopingViewPager 327 | 328 | 1. android_page_curl 329 | 翻書卷曲效果 330 | 項目地址:https://github.com/harism/android_page_curl 331 | APP示例:iReader 332 | 在線演示:https://www.youtube.com/watch?v=iwu7P5PCpsw 333 | 334 | 1. ViewPagerIndicator 335 | 簡化並實現android的TabHost效果,頂部滑動tab,引導頁,支持自定義tab樣式,自定義滑動塊樣式和位置,自定義切換tab的過渡動畫,子界面的預加載和界面緩存,設置界面是否可滑動 336 | 項目地址:https://github.com/LuckyJayce/ViewPagerIndicator 337 | 338 | 1. ScreenSlideIndicator 339 | 輕量級的圓形 Indicadtor,位置可以自由調整,不會對 ViewPager 產生任何影響。 340 | 項目地址:[ScreenSlidePager](https://github.com/LyndonChin/Android-ScreenSlidePager) 341 | 效果圖: 342 | ![](https://raw.githubusercontent.com/LyndonChin/Android-ScreenSlidePager/master/screenslidepager.gif) 343 | 344 | 1. ViewPager3D效果 345 | 項目地址:https://github.com/inovex/ViewPager3D 346 | 347 | 1. AnimaTabsview 348 | 仿網易雲音樂標簽切換的動畫,帶透明小三角 349 | 項目地址:https://github.com/wuyexiong/transparent-over-animtabsview 350 | 在線演示:http://v.youku.com/v_show/id_XNzA4MjY5NjA0.html 351 | 352 | 1. LoopingViewPager 353 | 無限循環的ViewPager 354 | 項目地址:https://github.com/imbryk/LoopingViewPager 355 | 356 | 1. android_page_curl 357 | 翻書卷曲效果 358 | 項目地址:https://github.com/harism/android_page_curl 359 | APP示例:iReader 360 | 在線演示:https://www.youtube.com/watch?v=iwu7P5PCpsw 361 | 362 | 1. ViewPagerIndicator 363 | 簡化並實現android的TabHost效果,頂部滑動tab,引導頁,支持自定義tab樣式,自定義滑動塊樣式和位置,自定義切換tab的過渡動畫,子界面的預加載和界面緩存,設置界面是否可滑動 364 | 項目地址:https://github.com/LuckyJayce/ViewPagerIndicator 365 | 366 | 1. ScreenSlideIndicator 367 | 輕量級的圓形 Indicadtor,位置可以自由調整,不會對 ViewPager 產生任何影響。 368 | 項目地址:[ScreenSlidePager](https://github.com/LyndonChin/Android-ScreenSlidePager) 369 | 效果圖: 370 | ![](https://raw.githubusercontent.com/LyndonChin/Android-ScreenSlidePager/master/screenslidepager.gif) 371 | 372 | 1. RecyclerViewPager 373 | 完全繼承自RecyclerView,可以自定義觸發翻頁的距離,可自定義翻頁速度,支持垂直方向的ViewPager,支持Fragment。 374 | 項目地址:[RecyclerViewPager](https://github.com/lsjwzh/RecyclerViewPager) 375 | 效果圖: 376 | ![](https://github.com/lsjwzh/RecyclerViewPager/blob/master/fragment.gif) 377 | 378 | 379 | #### 五、GridView 380 | 1. StaggeredGridView 381 | 允許非對齊行的GridView,類似Pinterest的瀑布流,並且跟ListView一樣自帶View緩存,繼承自ViewGroup 382 | 項目地址:https://github.com/maurycyw/StaggeredGridView 383 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/staggered-gridview-demo.apk?raw=true 384 | APP示例:Pinterest等 385 | 386 | 1. AndroidStaggeredGrid 387 | 允許非對齊行的GridView,類似Pinterest的瀑布流,繼承自AbsListView 388 | 項目地址:https://github.com/etsy/AndroidStaggeredGrid 389 | APP示例:Pinterest等 390 | 391 | 1. PinterestLikeAdapterView 392 | 允許非對齊行的GridView,類似Pinterest的瀑布流,允許下拉刷新 393 | 項目地址:https://github.com/GDG-Korea/PinterestLikeAdapterView 394 | APP示例:Pinterest等 395 | 396 | 1. DraggableGridView 397 | Item可拖動交換位置的GridView,實際是自己繼承ViewGroup實現,類似桌面的單屏效果,可屏幕自動上下滾動進行Item移動交換,多屏效果見下面PagedDragDropGrid 398 | 項目地址:https://github.com/thquinn/DraggableGridView 399 | Demo地址:https://github.com/thquinn/DraggableGridView/blob/master/bin/DraggableGridViewSample.apk?raw=true 400 | 401 | 1. StickyGridHeaders 402 | GroupName滑動到頂端時會固定不動直到另外一個GroupName到達頂端的GridView 403 | 項目地址:https://github.com/TonicArtos/StickyGridHeaders 404 | 效果圖:![Renderings](https://github-camo.global.ssl.fastly.net/90b57e9383704c400706545225d439e057c6fcc0/687474703a2f2f342e62702e626c6f6773706f742e636f6d2f2d535f4262685758367754592f55517057306377554745492f41414141414141414776552f7a7a4a586a2d50635662592f73313630302f73637265656e2d6c616e6473636170652d736d616c6c65722e706e67) 405 | 406 | 1. PagedDragDropGrid 407 | Item可拖動交換位置、拖動刪除的自定義控件,實際是自己繼承ViewGroup實現,類似桌面的多屏效果,可拖動到屏幕邊緣,屏幕自動左右滾動進行Item移動交換,可拖動進行刪除,單屏效果見上面DraggableGridView 408 | 項目地址:https://github.com/mrKlar/PagedDragDropGrid 409 | Demo視頻:http://youtu.be/FYTSRfthSuQ 410 | 411 | 1. Android-DraggableGridViewPager 412 | Item可拖動交換位置的GridView,實際是自己繼承ViewGroup實現,類似桌面的多屏效果,可屏幕自動左右滾動進行Item移動交換,單屏效果見上面DraggableGridView 413 | 項目地址:https://github.com/zzhouj/Android-DraggableGridViewPager 414 | Demo地址:https://github.com/Trinea/trinea-download/blob/master/draggable-grid-viewpager-demo.apk?raw=true 415 | 416 | 1. GridView with Header and Footer 417 | 和`ListView`一樣帶有頭部和底部,用法也一樣簡單 418 | 項目地址:https://github.com/liaohuqiu/android-GridViewWithHeaderAndFooter 419 | 效果圖:![Screen Shot](https://raw.githubusercontent.com/liaohuqiu/android-GridViewWithHeaderAndFooter/master/screen-shot.png) 420 | 421 | 422 | #### 六、ImageView 423 | 1. PhotoView 424 | 支持雙擊或雙指縮放的ImageView,在ViewPager等Scrolling view中正常使用,相比上面的AndroidTouchGallery,不僅支持ViewPager,同時支持單個ImageView 425 | 項目地址:https://github.com/chrisbanes/PhotoView 426 | Demo地址:https://play.google.com/store/apps/details?id=uk.co.senab.photoview.sample 427 | APP示例:photup 428 | 429 | 1. android-gif-drawable 430 | 支持gif顯示的view,用jni實現的,編譯生成so庫後直接xml定義view即可,而且本身不依賴于其他開源項目所以相對下面的ImageViewEx簡單的多 431 | 項目地址:https://github.com/koral--/android-gif-drawable 432 | 433 | 1. ImageViewEx 434 | 支持Gif顯示的ImageView 435 | 項目地址:https://github.com/frapontillo/ImageViewEx 436 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/imageviewex-demo.apk?raw=true 437 | 依賴很多,編譯過程很繁瑣!|_|! 438 | 439 | 1. RoundedImageView 440 | 帶圓角的ImageView 441 | 項目地址:https://github.com/vinc3m1/RoundedImageView 442 | 效果圖:![Renderings](https://raw.github.com/makeramen/RoundedImageView/master/screenshot.png) 443 | 444 | 1. ColorArt 445 | 根據圖片的均色設置背景色顯示文字和圖片,類似itune11中效果 446 | 項目地址:https://github.com/MichaelEvans/ColorArt 447 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/color-art-demo.apk?raw=true 448 | 449 | 1. CircleImageView 450 | 圓形的ImageView 451 | 項目地址:https://github.com/hdodenhof/CircleImageView 452 | 效果圖:![Renderings](https://raw.github.com/hdodenhof/CircleImageView/master/screenshot.png) 453 | 454 | 1. ImageViewZoom 455 | 支持放大和平移的ImageView 456 | 項目地址:https://github.com/sephiroth74/ImageViewZoom 457 | APP示例:https://play.google.com/store/apps/details?id=com.aviary.android.feather 458 | 459 | 1. KenBurnsView 460 | 實現Ken Burns effect效果,達到身臨其境效果的ImageView 461 | 項目地址:https://github.com/flavioarfaria/KenBurnsView 462 | 463 | 1. CustomShapeImageView 464 | 各種形狀的ImageView, 相比上面的圓形ImageView,多了更多形狀 465 | 項目地址:https://github.com/MostafaGazar/CustomShapeImageView 466 | 效果圖:![Renderings](https://raw.github.com/MostafaGazar/CustomShapeImageView/master/Screenshot_2013-11-05-23-08-12.png) 467 | 468 | 469 | #### 七、ProgressBar 470 | 1. SmoothProgressBar 471 | 水平進度條 472 | 項目地址:https://github.com/castorflex/SmoothProgressBar 473 | Demo地址:https://play.google.com/store/apps/details?id=fr.castorflex.android.smoothprogressbar.sample 474 | 475 | 1. ProgressWheel 476 | 支持進度顯示的圓形ProgressBar 477 | 項目地址:https://github.com/Todd-Davies/ProgressWheel 478 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/progress-wheel-demo.apk?raw=true 479 | 480 | 1. android-square-progressbar 481 | 在圖片周圍顯示進度 482 | 項目地址:https://github.com/mrwonderman/android-square-progressbar 483 | Demo地址:https://play.google.com/store/apps/details?id=net.yscs.android.square_progressbar_example 484 | APP示例:square 485 | 效果圖:![Renderings](https://googledrive.com/host/0BwESwPCuXtw7eExwSFVLQkR2TTg/newscreen1.png) 486 | 487 | 1. HoloCircularProgressBar 488 | Android4.1 時鍾App樣式 489 | 項目地址:https://github.com/passsy/android-HoloCircularProgressBar 490 | APP示例:Android4.1時鍾App 491 | 效果圖:![Renderings](https://raw.github.com/passsy/android-HoloCircularProgressBar/master/raw/screenshot1.png) 492 | 493 | 1. ProgressButton 494 | 通過圖釘的不同狀態顯示進度 495 | 項目地址:https://github.com/f2prateek/progressbutton 496 | 文檔介紹:http://f2prateek.com/progressbutton/ 497 | 效果圖:![Renderings](http://f2prateek.com/progressbutton/static/states.png) 498 | 499 | 1. GoogleProgressBar 500 | 類似google 多個圓形卡片翻轉的progressBar 501 | 項目地址:https://github.com/jpardogo/GoogleProgressBar 502 | 效果圖:![Renderings](https://raw.githubusercontent.com/jpardogo/GoogleProgressBar/master/art/GoogleProgressBar.gif) 503 | 504 | 1. TH-ProgressButton 505 | 帶圓形進度顯示的按鈕 506 | 項目地址;https://github.com/torryharris/TH-ProgressButton 507 | 效果圖:![Renderings](https://raw.github.com/Vyshakh-K/TH-ProgressButton/master/screenshots/progressshot1.png) ![Renderings](https://raw.github.com/Vyshakh-K/TH-ProgressButton/master/screenshots/progressshot2.png) ![Renderings](https://raw.github.com/Vyshakh-K/TH-ProgressButton/master/screenshots/progressshot3.png) ![Renderings](https://raw.github.com/Vyshakh-K/TH-ProgressButton/master/screenshots/progressshot4.png) 508 | 509 | 1. NumberProgressBar 510 | 帶數字進度的進度條 511 | 項目地址:https://github.com/daimajia/NumberProgressBar 512 | 效果圖:![Renderings](https://camo.githubusercontent.com/0c92568af7ec4e04e2e1503acdd2ca99854ab0b5/687474703a2f2f7777332e73696e61696d672e636e2f6d773639302f36313064633033346a77316566797264386e376937673230637a30326d7135662e676966) 513 | 514 | 1. CircularProgressDrawable 515 | 帶圓形進度顯示的進度條 516 | 項目地址:https://github.com/Sefford/CircularProgressDrawable 517 | 效果圖:![Renderings](https://raw.githubusercontent.com/Sefford/CircularProgressDrawable/master/overshoot.gif) 518 | 519 | 1. Android-RoundCornerProgressBar 520 | Android 圓角 ProgressBar,可自定義圓角顏色和半徑,包括帶 Icon 和不帶 Icon 兩種類型。 521 | 項目地址:https://github.com/akexorcist/Android-RoundCornerProgressBar 522 | 效果圖: 523 | ![Renderings](https://raw.githubusercontent.com/akexorcist/Android-RoundCornerProgressBar/master/image/screenshot_02.png) 524 | 1. circular-progress-button 525 | 帶進度顯示的Button 526 | 項目地址:https://github.com/dmytrodanylyk/circular-progress-button 527 | 效果圖: 528 | ![Renderings](https://raw.githubusercontent.com/dmytrodanylyk/circular-progress-button/master/screenshots/intro.gif) 529 | 530 | 1. WaveView 531 | 壹個波紋效果的 View,可用來做 ProgressBar 532 | 項目地址:https://github.com/john990/WaveView 533 | Demo地址:https://raw.github.com/john990/WaveView/master/screenshot%26apk/demo.unaligned.apk 534 | 效果圖: 535 | ![Renderings](https://camo.githubusercontent.com/60722e9d4f2d2daa78a8650cb27a32adea82bdd4/68747470733a2f2f7261772e6769746875622e636f6d2f6a6f686e3939302f57617665566965772f6d61737465722f73637265656e73686f7425323661706b2f73637265656e73686f742e676966) 536 | 537 | 1. MaterialLoadingProgressBar 538 | 抽取自SwipeRefreshLayout的Material Design進度指示器 539 | 項目地址:https://github.com/lsjwzh/MaterialLoadingProgressBar 540 | 效果圖:![Renderings](https://github.com/lsjwzh/MaterialLoadingProgressBar/raw/master/screen.gif) 541 | 542 | 543 | #### 八、TextView 544 | 包括TextView及所有繼承自TextView控件,如EditText、Button、RadioButton 545 | 546 | 1. android-flowtextview 547 | 文字自動環繞其他View的Layout 548 | 項目地址:https://code.google.com/p/android-flowtextview/ 549 | 效果圖:http://i949.photobucket.com/albums/ad332/vostroman1500/1.png 550 | 551 | 1. Android Form EditText 552 | 驗證輸入合法性的編輯框,支持輸入、英文、ip、url等多種正則驗證 553 | 項目地址:https://github.com/vekexasia/android-edittext-validator 554 | Demo地址:https://play.google.com/store/apps/details?id=com.andreabaccega.edittextformexample 555 | 556 | 1. Emojicon 557 | 支持emojis的TextView和EditText 558 | 項目地址:https://github.com/rockerhieu/emojicon 559 | 文檔地址:http://rockerhieu.com/emojicon/ 560 | 561 | 1. android-circlebutton 562 | Android圓形按鈕,實際實現是繼承自ImageView 563 | 項目地址:https://github.com/markushi/android-circlebutton 564 | Demo地址:https://github.com/markushi/android-circlebutton/blob/master/example/example.apk 565 | 566 | 1. Segmented Radio Buttons for Android 567 | iOS’s segmented controls的實現 568 | 項目地址:https://github.com/vinc3m1/android-segmentedradiobutton 569 | Demo地址:https://github.com/thquinn/DraggableGridView/blob/master/bin/DraggableGridViewSample.apk?raw=true 570 | 效果圖:![Renderings](https://raw.github.com/vinc3m1/android-segmentedradiobutton/master/screens/segmentedradio.png) 571 | 572 | 1. Chips EditText Library 573 | 支持國家名字聯想從而選擇顯示該國國旗的EditText,實際就是通過SpannableStringBuilder實現 574 | 項目地址:https://github.com/kpbird/chips-edittext-library 575 | Demo地址:https://github.com/kpbird/chips-edittext-library/tree/master/ChipsEditTextDemo/bin 576 | 577 | 1. AutoFitTextView 578 | 可固定邊界內容字體大小自適應的TextView 579 | 項目地址:https://github.com/grantland/android-autofittextview 580 | 581 | 1. Shimmer for Android 582 | 文字發淡光的TextView 583 | 項目地址:https://github.com/RomainPiel/Shimmer-android 584 | 585 | 1. Titanic 586 | 可以顯示水位上升下降(不知道該怎麽描述 囧)的TextView 587 | 項目地址:https://github.com/RomainPiel/Titanic 588 | 效果圖:![Renderings](https://github.com/RomainPiel/Titanic/raw/master/titanic.gif) 589 | 590 | 1. android-iconify 591 | 提供帶Icon的TextView,Menu,Button等 592 | 項目地址:https://github.com/JoanZapata/android-iconify 593 | 594 | 1. Calligraphy 595 | 讓我們在android開發中使用自定義字體變得更加簡單 596 | 項目地址 :https://github.com/chrisjenx/Calligraphy 597 | 效果圖:![Renderings](https://github.com/chrisjenx/Calligraphy/raw/master/screenshot.png) 598 | 599 | 1. CreditsRoll 600 | 類似星球大戰字幕效果的TextView 601 | 項目地址:https://github.com/frakbot/CreditsRoll 602 | 603 | 1. android-process-buton 604 | 帶加載或提交進度的Button 605 | 項目地址:https://github.com/dmytrodanylyk/android-process-buton 606 | 607 | 608 | #### 九、ScrollView 609 | 1. Discrollview 610 | 支持滾動時Item淡入淡出,平移,縮放效果的ScrollView 611 | 項目地址:https://github.com/flavienlaurent/discrollview 612 | Demo地址:https://github.com/flavienlaurent/discrollview/raw/master/sample.apk 613 | 614 | 1. PullScrollView 615 | 仿照新浪微博Android客戶端個人中心的ScrollView,下拉背景伸縮回彈效果。 616 | 項目地址:https://github.com/MarkMjw/PullScrollView 617 | 效果圖:![Renderings](https://raw.github.com/MarkMjw/PullScrollView/master/Screenshots/1.png) 618 | 619 | 1. ParallaxScrollView 620 | 支持視差滾動的ScrollView ,背景圖片的滾動速度小于ScrollView中子控件的滾動速度 621 | 項目地址:https://github.com/chrisjenx/ParallaxScrollView 622 | 示例APK地址:https://github.com/chrisjenx/ParallaxScrollView/downloads 623 | 624 | 625 | #### 十、TimeView 626 | 包括TimePicker、DatePicker、CalendarView、Clock等時間相關控件 627 | 628 | 1. android-times-square 629 | Android日曆時間部件,支持選取單個日期,多個日期,及日期區間段和對話框形式顯示 630 | 項目地址:https://github.com/square/android-times-square 631 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/times-square-demo.apk?raw=true 632 | 633 | 1. android-calendar-card 634 | 日曆 635 | 項目地址:https://github.com/kenumir/android-calendar-card 636 | Demo地址:https://play.google.com/store/apps/details?id=com.wt.calendarcardsample 637 | 效果圖:![Renderings](https://raw.github.com/kenumir/android-calendar-card/master/calendar-card-sample/_work/device-2013-10-12-151801.png) 638 | 639 | 1. AndroidWheel 640 | Android Wheel支持城市、多種日期時間、密碼、圖片 641 | 項目地址:https://github.com/sephiroth74/AndroidWheel 642 | 效果圖:![Renderings](http://farm6.staticflickr.com/5532/11621528786_220c040ba5_o.jpg) 643 | 644 | 1. GoogleDateTimePickers 645 | 時間選擇部件 646 | 項目地址:https://github.com/Mirkoddd/GoogleDateTimePickers 647 | 文檔地址:https://play.google.com/store/apps/details?id=com.mirko.sample&hl=it 648 | 649 | 650 | #### 十一、TipView 651 | 包括Toast、角標、UndoBar等提示性控件 652 | 653 | 1. Crouton 654 | 豐富樣式的Toast,允許alert、comfirm、info樣式及點擊消失樣式,允許設置Toast顯示時間,允許自定義View。 本文32. SuperToasts爲其擴展版 655 | 項目地址:https://github.com/keyboardsurfer/Crouton 656 | Demo地址:http://play.google.com/store/apps/details?id=de.keyboardsurfer.app.demo.crouton 657 | 658 | 1. supertooltips 659 | 帶動畫效果的Tips顯示 660 | 項目地址:https://github.com/nhaarman/supertooltips 661 | Demo地址:https://play.google.com/store/apps/details?id=com.haarman.supertooltips 662 | 663 | 1. Android ViewBadger 664 | 爲其他View添加角標等 665 | 項目地址:https://github.com/jgilfelt/android-viewbadger 666 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/android-viewbadger.apk?raw=true 667 | 效果圖:![Renderings](https://github-camo.global.ssl.fastly.net/a705a3e88c75ae2394943bd7c56f725697616ea8/687474703a2f2f7777772e6a65666667696c66656c742e636f6d2f766965776261646765722f76622d31612e706e67) 668 | 669 | 670 | 1. SuperToasts 671 | 更豐富樣式的toast,支持Button、Progress、Horizontal Progress樣式、支持進入動畫、支持撤銷及其動畫設置 672 | 項目地址:https://github.com/JohnPersano/SuperToasts 673 | Demo地址:https://play.google.com/store/apps/details?id=com.supertoastsdemo 674 | 效果圖:![SuperButtonToast](http://i1331.photobucket.com/albums/w597/JohnPersano/supertoasts_githubimage_zps8a5ceb7c.png) 675 | 676 | 1. UndoBar 677 | 屏幕底部顯示取消或是確認的PopupWindows 678 | 項目地址:https://github.com/soarcn/UndoBar 679 | 效果圖:![Renderings](https://github.com/soarcn/UndoBar/blob/master/art/redo.png?raw=true) 680 | 681 | 1. UndoBar 682 | 屏幕底部顯示取消或是確認某操作 683 | 項目地址:https://github.com/jenzz/Android-UndoBar 684 | 效果圖:![Renderings](https://raw.github.com/jenzz/Android-UndoBar/master/assets/Screenshot2.png) 685 | 686 | 687 | #### 十二、FlipView 688 | 1. android-flip 689 | 類似Flipboard翻轉動畫的實現 690 | 項目地址:https://github.com/openaphid/android-flip 691 | Demo地址:https://github.com/openaphid/android-flip/blob/master/FlipView/Demo/APK/Aphid-FlipView-Demo.apk?raw=true 692 | APP示例:flipboard 693 | 694 | 1. FlipImageView 695 | 支持x、y、z及動畫選擇的翻轉動畫的實現 696 | 項目地址:https://github.com/castorflex/FlipImageView 697 | Demo地址:https://play.google.com/store/apps/details?id=fr.castorflex.android.flipimageview 698 | 699 | 700 | #### 十三、ColorPickView 701 | 1. ColorPickerView 702 | 顔色選擇器,支持PopupWindows或新的Activity中打開 703 | 項目地址:https://code.google.com/p/color-picker-view/ 704 | 效果圖:![Renderings](http://oi41.tinypic.com/33c6mm8.jpg) 705 | 706 | 1. HoloColorPicker 707 | 顔色選擇器 708 | 項目地址:https://github.com/LarsWerkman/HoloColorPicker 709 | Demo地址:https://docs.google.com/file/d/0BwclyDTlLrdXRzVnTGJvTlRfU2s/edit 710 | 711 | 1. ColorPickerPreference 712 | 顔色選擇器 713 | 項目地址:https://github.com/attenzione/android-ColorPickerPreference 714 | 效果圖:![Renderings](https://github.com/attenzione/android-ColorPickerPreference/raw/master/screen_2.png) 715 | 716 | 717 | #### 十四、GraphView 718 | 1. achartengine 719 | 強大的圖表繪制工具,支持折線圖、面積圖、散點圖、時間圖、柱狀圖、條圖、餅圖、氣泡圖、圓環圖、範圍(高至低)條形圖、撥號圖/表、立方線圖及各種圖的結合 720 | 項目地址:https://code.google.com/p/achartengine/ 721 | 官方網站:http://www.achartengine.org/ 722 | 效果圖:![Renderings](http://www.achartengine.org/dimages/average_temperature.png) 723 | http://www.achartengine.org/dimages/sales_line_and_area_chart.png 724 | http://www.achartengine.org/dimages/temperature_range_chart.png 725 | http://www.achartengine.org/dimages/combined_chart.png 726 | http://www.achartengine.org/dimages/budget_chart.png 727 | APP示例:Wordpress Android,Google Analytics 728 | 729 | 1. GraphView 730 | 繪制圖表和曲線圖的View,可用于Android上的曲形圖、柱狀圖、波浪圖展示 731 | 項目地址:https://github.com/jjoe64/GraphView 732 | Demo工程:https://github.com/jjoe64/GraphView-Demos 733 | Demo地址:https://play.google.com/store/apps/details?id=com.sothree.umano 734 | APP示例:Wordpress Android,Google Analytics 735 | 736 | 1. HoloGraphLibrary 737 | 繪制現狀圖、柱狀圖、餅狀圖 738 | 項目地址:https://bitbucket.org/danielnadeau/holographlibrary/src 739 | 文檔介紹:https://bitbucket.org/danielnadeau/holographlibrary/wiki/Home 740 | 741 | 742 | #### 十五、UI Style 743 | 不同樣式的系統UI風格,如IOS、Bootstrap風格 744 | 745 | 1. UITableView 746 | ios風格控件,包括Button、ListView、TableView 747 | 項目地址:https://github.com/thiagolocatelli/android-uitableview 748 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/ui-tableview-demo.apk?raw=true 749 | 750 | 1. ATableView 751 | ios風格控件 752 | 項目地址:https://github.com/dmacosta/ATableView 753 | Demo地址:https://play.google.com/store/apps/details?id=com.nakardo.atableview.demo 754 | 755 | 1. Cards-UI 756 | 卡片式View,支持單個卡片,item爲卡片的ListView 757 | 項目地址:https://github.com/afollestad/Cards-UI 758 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/cards-ui-demo.apk?raw=true 759 | 760 | 1. cardslib 761 | 卡片式View,支持單個卡片,item爲卡片的ListView和GridView 762 | 項目地址:https://github.com/gabrielemariotti/cardslib 763 | Demo地址:https://play.google.com/store/apps/details?id=it.gmariotti.cardslib.demo 764 | 765 | 1. Android-Bootstrap 766 | Bootstrap 風格的按鈕 767 | 項目地址: https://github.com/Bearded-Hen/Android-Bootstrap 768 | 效果圖:![Renderings](https://raw.github.com/Bearded-Hen/Android-Bootstrap/master/images/device_image.png) 769 | 770 | 771 | #### 十六、其他 772 | 1. SwipeBackLayout 773 | 左右或向上滑動返回的Activity 774 | 項目地址:https://github.com/Issacw0ng/SwipeBackLayout 775 | Demo地址:https://play.google.com/store/apps/details?id=me.imid.swipebacklayout.demo 776 | APP示例:知乎 777 | 778 | 1. android-styled-dialogs 779 | 可自定義樣式的dialog,默認與Holo主題樣式一致,在Android2.2以上同一樣式 780 | 項目地址:https://github.com/inmite/android-styled-dialogs 781 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/styled-dialogs-demo.apk?raw=true 782 | 783 | 1. Android Sliding Up Panel 784 | 可拖動的View,能在當前Activity上扶起一個可拖動的Panel 785 | 項目地址:https://github.com/umano/AndroidSlidingUpPanel 786 | Demo地址:https://play.google.com/store/apps/details?id=com.sothree.umano 787 | APP示例:Google Music精簡播放欄 788 | 789 | 1. AndroidWheel 790 | Android Wheel支持城市、多種日期時間、密碼、圖片 791 | 項目地址:https://github.com/sephiroth74/AndroidWheel 792 | 效果圖:![Renderings](http://farm6.staticflickr.com/5532/11621528786_220c040ba5_o.jpg) 793 | 794 | 1. TableFixHeaders 795 | 第一列固定的Table 796 | 項目地址:https://github.com/InQBarna/TableFixHeaders 797 | Demo地址:http://bit.ly/13buAIq 798 | 799 | 1. Inscription 800 | 可用于展示應用change和new feature信息 801 | 項目地址:https://github.com/MartinvanZ/Inscription 802 | 803 | 1. ActivityTransition 804 | Activity切換動畫,包括漸變、flip、某個位置進入等等 805 | 項目地址:https://github.com/ophilbert/ActivityTransition 806 | 使用介紹:https://github.com/jfeinstein10/JazzyViewPager/blob/master/JazzyViewPager.apk?raw=true 807 | 效果圖:類似桌面左右切換的各種效果,不過桌面並非用ViewPager實現而已 808 | 809 | 1. GlowPadBackport 810 | 將Android4.2的鎖屏界面解鎖擴展到Android1.6及1.6+ 811 | 項目地址:https://github.com/rock3r/GlowPadBackport 812 | Demo地址:https://play.google.com/store/apps/details?id=net.sebastianopoggi.samples.ui.GlowPadSample 813 | 效果圖:![Renderings](https://lh6.ggpht.com/U070b6Lh6cVsVwx4jN-5nq0xqiB1PBzrYABPeJIEe2hZQ5UWOxc-FDUG77wADelToHA=h310-rw) 814 | 815 | 1. GlowPadView 816 | Android4鎖屏界面解鎖 817 | 項目地址:https://github.com/nadavfima/GlowPadView 818 | 效果圖:https://raw.github.com/nadavfima/GlowPadView/master/example.png 819 | 820 | 1. android-lockpattern 821 | Android的圖案密碼解鎖 822 | 項目地址:https://code.google.com/p/android-lockpattern/ 823 | Demo地址:https://play.google.com/store/apps/details?id=group.pals.android.lib.ui.lockpattern.demo 824 | 使用介紹:https://code.google.com/p/android-lockpattern/wiki/QuickUse 825 | 示例APP:Android開機的圖案密碼解鎖,支付寶的密碼解鎖 826 | 827 | 1. PatternLock 828 | 另一個 Android 圖案解鎖庫 829 | 項目地址:https://github.com/DreaminginCodeZH/PatternLock 830 | Demo地址:https://github.com/DreaminginCodeZH/PatternLock/raw/master/dist/sample.apk 831 | 效果圖:![Renderings](https://github.com/DreaminginCodeZH/PatternLock/raw/master/image/sample_small.png) 832 | 示例APP:Android開機的圖案密碼解鎖,支付寶的密碼解鎖 833 | 834 | 1. RangeBar 835 | 類似于SeekBar,不同的是可以選擇一個範圍內的值而不是單個值 836 | 項目地址:https://github.com/edmodo/range-bar 837 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/range-bar-demo.apk?raw=true 838 | 效果圖: ![Renderings](http://i.imgur.com/q85GhRjl.png) 839 | 840 | 1. ChromeView 841 | 利用Chromium實現的WebView,解決各個Android版本WebView不同的問題,同時利用最新Chrome代碼 842 | 項目地址:https://github.com/pwnall/chromeview 843 | 844 | 1. Android Slider Preference Library 845 | 可添加到設置中的基于對話框的RankBar小部件 846 | 項目地址:https://github.com/jayschwa/AndroidSliderPreference 847 | 848 | 1. ShowcaseView library 849 | 用于高亮顯示應用程序的特定部分,從而突出突出重點 850 | 項目地址:https://github.com/amlcurran/ShowcaseView 851 | 852 | 1. android-segmented-control 853 | Android上的Segmented Controls,相當于RadioButton組 854 | 項目地址:https://github.com/hoang8f/android-segmented-control 855 | 856 | 857 | ## 第二部分 工具庫 858 | 主要包括那些不錯的開發庫,包括依賴注入框架、圖片緩存、網絡相關、數據庫ORM建模、Android公共庫、Android 高版本向低版本兼容、多媒體相關及其他。 859 | #### 一、依賴注入DI 860 | 通過依賴注入減少View、服務、資源簡化初始化,事件綁定等重複繁瑣工作 861 | 862 | 1. AndroidAnnotations(Code Diet) 863 | android快速開發框架 864 | 項目地址:https://github.com/excilys/androidannotations 865 | 文檔介紹:https://github.com/excilys/androidannotations/wiki 866 | 官方網站:http://androidannotations.org/ 867 | 特點:(1) 依賴注入:包括view,extras,系統服務,資源等等 868 | (2) 簡單的線程模型,通過annotation表示方法運行在ui線程還是後台線程 869 | (3) 事件綁定:通過annotation表示view的響應事件,不用在寫內部類 870 | (4) REST客戶端:定義客戶端接口,自動生成REST請求的實現 871 | (5) 沒有你想象的複雜:AndroidAnnotations只是在在編譯時生成相應子類 872 | (6) 不影響應用性能:僅50kb,在編譯時完成,不會對運行時有性能影響。 873 | PS:與roboguice的比較:roboguice通過運行時讀取annotations進行反射,所以可能影響應用性能,而AndroidAnnotations在編譯時生成子類,所以對性能沒有影響 874 | 875 | 1. roboguice 876 | 幫你處理了很多代碼異常,利用annotation使得更少的代碼完成項目 877 | 項目地址:https://github.com/roboguice/roboguice 878 | 文檔介紹:https://github.com/roboguice/roboguice/wiki 879 | 880 | 1. butterknife 881 | 利用annotation幫你快速完成View的初始化,減少代碼 882 | 項目地址:https://github.com/JakeWharton/butterknife 883 | 文檔介紹:http://jakewharton.github.io/butterknife/ 884 | 885 | 1. Dagger 886 | 依賴注入,適用于Android和Java 887 | 項目地址:https://github.com/square/dagger 888 | 文檔介紹:http://square.github.io/dagger/ 889 | 890 | 891 | #### 二、圖片緩存 892 | 1. Android-Universal-Image-Loader 893 | 圖片緩存,目前使用最廣泛的圖片緩存,支持主流圖片緩存的絕大多數特性。 894 | 項目地址:https://github.com/nostra13/Android-Universal-Image-Loader 895 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/universal-imageloader-demo.apk?raw=true 896 | 文檔介紹:http://www.intexsoft.com/blog/item/74-universal-image-loader-part-3.html 897 | 898 | 1. picasso 899 | square開源的圖片緩存 900 | 項目地址:https://github.com/square/picasso 901 | 文檔介紹:http://square.github.io/picasso/ 902 | 特點:(1)可以自動檢測adapter的重用並取消之前的下載 903 | (2)圖片變換 904 | (3)可以加載本地資源 905 | (4)可以設置占位資源 906 | (5)支持debug模式 907 | 908 | 1. ImageCache 909 | 圖片緩存,包含內存和Sdcard緩存 910 | 項目地址:https://github.com/Trinea/AndroidCommon 911 | Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo 912 | 文檔介紹:http://www.trinea.cn/android/android-imagecache/ 913 | 特點:(1)支持預取新圖片,支持等待隊列 914 | (2)包含二級緩存,可自定義文件名保存規則 915 | (3)可選擇多種緩存算法(FIFO、LIFO、LRU、MRU、LFU、MFU等13種)或自定義緩存算法 916 | (4)可方便的保存及初始化恢複數據 917 | (5)支持不同類型網絡處理 918 | (6)可根據系統配置初始化緩存等 919 | 920 | 1. Cube ImageLoader 921 | 阿里巴巴一些App使用的圖片加載組件,綜合了Android-Universal-Image-Loader 和 square 等組件優點,簡單易用。 922 | 項目地址:https://github.com/etao-open-source/cube-sdk 923 | Demo地址:https://github.com/liaohuqiu/cube-sdk/raw/master/cube-sdk-sample.apk 924 | 文檔介绍:http://cube-sdk.liaohuqiu.net/ 925 | 效果圖:![Screen Shot](https://raw.githubusercontent.com/etao-open-source/cube-sdk/dev/screen-shot.png) 926 | 927 | 928 | #### 三、網絡相關 929 | 1. Asynchronous Http Client for Android 930 | Android異步Http請求 931 | 項目地址:https://github.com/loopj/android-async-http 932 | 文檔介紹:http://loopj.com/android-async-http/ 933 | 特點:(1) 在匿名回調中處理請求結果 934 | (2) 在UI線程外進行http請求 935 | (3) 文件斷點上傳 936 | (4) 智能重試 937 | (5) 默認gzip壓縮 938 | (6) 支持解析成Json格式 939 | (7) 可將Cookies持久化到SharedPreferences 940 | 941 | 1. android-query 942 | 異步加載,更少代碼完成Android加載 943 | 項目地址:https://github.com/androidquery/androidquery 或 https://code.google.com/p/android-query/ 944 | 文檔介紹:https://code.google.com/p/android-query/#Why_AQuery? 945 | Demo地址:https://play.google.com/store/apps/details?id=com.androidquery 946 | 特點:https://code.google.com/p/android-query/#Why_AQuery? 947 | 948 | 1. Async Http Client 949 | Java異步Http請求 950 | 項目地址:https://github.com/AsyncHttpClient/async-http-client 951 | 文檔介紹:http://sonatype.github.io/async-http-client/ 952 | 953 | 1. Ion 954 | 支持圖片、json、http post等異步請求 955 | 項目地址:https://github.com/koush/ion 956 | 文檔介紹:https://github.com/koush/ion#more-examples 957 | 958 | 1. HttpCache 959 | Http緩存 960 | 項目地址:https://github.com/Trinea/AndroidCommon 961 | Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo 962 | 文檔介紹:http://www.trinea.cn/android/android-http-cache 963 | 特點是:(1) 根據cache-control、expires緩存http請求 964 | (2) 支持同步、異步Http請求 965 | (3) 在匿名回調中處理請求結果 966 | (4) 在UI線程外進行http請求 967 | (5) 默認gzip壓縮 968 | 969 | 1. Http Request 970 | 項目地址:https://github.com/kevinsawicki/http-request 971 | 文檔介紹:https://github.com/kevinsawicki/http-request#examples 972 | 973 | 1. okhttp 974 | square開源的http工具類 975 | 項目地址:https://github.com/square/okhttp 976 | 文檔介紹:http://square.github.io/okhttp/ 977 | 特點:(1) 支持SPDY( http://zh.wikipedia.org/wiki/SPDY )協議。SPDY協議是Google開發的基于傳輸控制協議的應用層協議,通過壓縮,多路複用(一個TCP鏈接傳送網頁和圖片等資源)和優先級來縮短加載時間。 978 | (2) 如果SPDY不可用,利用連接池減少請求延遲 979 | (3) Gzip壓縮 980 | (4) Response緩存減少不必要的請求 981 | 982 | 1. Retrofit 983 | RESTFUL API設計 984 | 項目地址:https://github.com/square/retrofit 985 | 文檔介紹:http://square.github.io/retrofit/ 986 | 987 | 1. RoboSpice 988 | Android異步網絡請求工具,支持緩存、REST等等 989 | 項目地址:https://github.com/stephanenicolas/robospice 990 | Demo地址:https://github.com/stephanenicolas/RoboDemo/downloads 991 | 992 | 993 | #### 四、數據庫 orm工具包 994 | orm的db工具類,簡化建表、查詢、更新、插入、事務、索引的操作 995 | 996 | 1. greenDAO 997 | Android Sqlite orm的db工具類 998 | 項目地址:https://github.com/greenrobot/greenDAO 999 | 文檔介紹:http://greendao-orm.com/documentation/ 1000 | 官方網站:http://greendao-orm.com/ 1001 | 特點:(1) 性能佳 1002 | (2) 簡單易用的API 1003 | (3) 內存小好小 1004 | (4) 庫大小小 1005 | 1006 | 1. ActiveAndroid 1007 | Android Sqlite orm的db工具類 1008 | 項目地址:https://github.com/pardom/ActiveAndroid 1009 | 文檔介紹:https://github.com/pardom/ActiveAndroid/wiki/_pages 1010 | 1011 | 1. Sprinkles 1012 | Android Sqlite orm的db工具類 1013 | 項目地址:https://github.com/emilsjolander/sprinkles 1014 | 文檔介紹:http://emilsjolander.github.io/blog/2013/12/18/android-with-sprinkles/ 1015 | 特點:比較顯著的特點就是配合https://github.com/square/retrofit 能保存從服務器獲取的數據 1016 | 1017 | 1. ormlite-android 1018 | 項目地址:https://github.com/j256/ormlite-android 1019 | 文檔介紹:http://ormlite.com/sqlite_java_android_orm.shtml 1020 | 1021 | 1022 | #### 五、Android公共庫 1023 | 1. Guava 1024 | Google的基于java1.6的類庫集合的擴展項目,包括collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O等等. 這些高質量的API可以使你的JAVa代碼更加優雅,更加簡潔 1025 | 項目地址:https://code.google.com/p/guava-libraries/ 1026 | 文檔介紹:https://code.google.com/p/guava-libraries/wiki/GuavaExplained 1027 | 1028 | 1. Volley 1029 | Google提供的網絡通信庫,使得網絡請求更簡單、更快速 1030 | 項目地址:https://android.googlesource.com/platform/frameworks/volley 1031 | Github地址:https://github.com/mcxiaoke/android-volley 1032 | 文檔地址:http://commondatastorage.googleapis.com/io-2013/presentations/110%20-%20Volley-%20Easy,%20Fast%20Networking%20for%20Android.pdf 1033 | 1034 | 1. AndroidCommon 1035 | Android公共庫 1036 | 項目地址:https://github.com/Trinea/AndroidCommon 1037 | Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo 1038 | 文檔介紹:http://www.trinea.cn/android/android-common-lib/ 1039 | 包括:(1)緩存(圖片緩存、預取緩存、網絡緩存) 1040 | (2) 公共View(下拉及底部加載更多ListView、底部加載更多ScrollView、滑動一頁Gallery) 1041 | (3) Android常用工具類(網絡、下載、Android資源操作、shell、文件、Json、隨機數、Collection等等) 1042 | 1043 | 1. shipfaster 1044 | 整合了Dagger Otto Retrofit Robolectric Picasso OkHttp,方便快速開發 1045 | 項目地址:https://github.com/pyricau/shipfaster 1046 | 1047 | 1. CleanAndroidCode 1048 | 整合了Dagger Otto AndroidAnnotations,方便快速開發 1049 | 項目地址:https://github.com/pyricau/CleanAndroidCode 1050 | 我目前也在做框架選型方面的工作,不出意外後面也會出個跟4、5類似的項目 1051 | 1052 | 1053 | #### 六、Android 高版本向低版本兼容 1054 | 1. ActionBarSherlock 1055 | 爲Android所有版本提供統一的ActionBar,解決4.0以下ActionBar的適配問題 1056 | 項目地址:https://github.com/JakeWharton/ActionBarSherlock 1057 | Demo地址:https://play.google.com/store/apps/details?id=com.actionbarsherlock.sample.demos 1058 | APP示例:太多了。。現在連google都在用 1059 | 1060 | 1. Nine Old Androids 1061 | 將Android 3.0(Honeycomb)所有動畫API(ObjectAnimator ValueAnimator等)兼容到Android1.0 1062 | 項目地址:https://github.com/JakeWharton/NineOldAndroids 1063 | Demo地址:https://play.google.com/store/apps/details?id=com.jakewharton.nineoldandroids.sample 1064 | 文檔介紹:http://nineoldandroids.com/ 1065 | 1066 | 1. HoloEverywhere 1067 | 將Android 3.0的Holo主題兼容到Android2.1++ 1068 | 項目地址:https://github.com/Prototik/HoloEverywhere 1069 | Demo地址:https://raw.github.com/Prototik/HoloEverywhere/repo/org/holoeverywhere/demo/2.1.0/demo-2.1.0.apk 1070 | 文檔介紹:http://android-developers.blogspot.com/2012/01/holo-everywhere.html 1071 | 1072 | 1. SherlockNavigationDrawer 1073 | 將Android NavigationDrawer和ActionbarSherlock結合,解決4.0以下NavigationDrawer的適配問題 1074 | 項目地址:https://github.com/tobykurien/SherlockNavigationDrawer 1075 | 1076 | 1. Notifications4EveryWhere 1077 | 將Android 4.1的兼容到Android2.2++ 1078 | 項目地址:https://github.com/youxiachai/Notifications4EveryWhere 1079 | NavigationDrawer文檔地址:http://developer.android.com/training/implementing-navigation/nav-drawer.html 1080 | 1081 | 1. Android Switch Widget Backport 1082 | 將Android Switch和SwitchPreference的兼容到Android2.1++ 1083 | 項目地址:https://github.com/BoD/android-switch-backport 1084 | Demo地址:https://play.google.com/store/apps/details?id=org.jraf.android.backport.switchwidget.sample 1085 | 文檔介紹:https://github.com/BoD/android-switch-backport#using-the-switch 1086 | 1087 | 1. android-datepicker 1088 | 將Android 4.0的datepicker兼容到Android2.2++ 1089 | 項目地址:https://github.com/SimonVT/android-datepicker 1090 | 1091 | 1. GlowPadBackport 1092 | Android 4.2的GlowPadView向後適配到API4以上 1093 | 項目地址:https://github.com/frakbot/GlowPadBackport 1094 | 1095 | 1096 | #### 七、多媒體相關 1097 | 1. cocos2d-x 1098 | 跨平台的2d遊戲框架,支持Android、IOS、Linux、Windows等衆多平台 1099 | 項目地址:https://github.com/cocos2d/cocos2d-x 1100 | 文檔介紹:http://www.cocos2d-x.org/wiki 1101 | 官方網站:http://www.cocos2d-x.org/ 1102 | 1103 | 1. Vitamio 1104 | 是一款Android與iOS平台上的全能多媒體開發框架 1105 | 項目地址:https://github.com/yixia/VitamioBundle 1106 | 網站介紹:http://www.vitamio.org/docs/ 1107 | 特點:(1) 全面支持硬件解碼與GPU渲染 1108 | (2) 能夠流暢播放720P甚至1080P高清MKV,FLV,MP4,MOV,TS,RMVB等常見格式的視頻 1109 | (3) 在Android與iOS上跨平台支持 MMS, RTSP, RTMP, HLS(m3u8)等常見的多種視頻流媒體協議,包括點播與直播。 1110 | 1111 | 1. PhotoProcessing 1112 | 利用ndk處理圖片庫,支持Instafix、Ansel、Testino、XPro、Retro、BW、Sepia、Cyano、Georgia、Sahara、HDR、Rotate(旋轉)、Flip(翻轉)等各種特效 1113 | 項目地址:https://github.com/lightbox/PhotoProcessing 1114 | Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/photo-processing.apk?raw=true 1115 | 1116 | 1. Android StackBlur 1117 | 圖片模糊效果工具類 1118 | 項目地址:https://github.com/kikoso/android-stackblur 1119 | Demo地址:https://github.com/kikoso/android-stackblur/blob/master/StackBlurDemo/bin/StackBlurDemo.apk?raw=true 1120 | 文檔介紹:https://github.com/kikoso/android-stackblur#usage 1121 | 1122 | 1. Bitmap Smart Clipping using OpenCV 1123 | 圖片智能裁剪保留重要部分顯示 1124 | 項目地址:https://github.com/beartung/tclip-android 1125 | 利用淘寶的 http://code.taobao.org/p/tclip/ 庫完成 1126 | 一淘玩客正在使用的圖片裁剪,自動識別圖片中的重要區域,並且在圖片裁剪時保留重要區域 1127 | 特點:(1). 能進行人臉識別。圖片中有人臉,將自動視爲人臉區域爲重要區域,將不會被裁剪掉 1128 | (2).自動其它重要區域。如果圖片中未識別出人臉,則會根據特征分布計算出重區域 1129 | 1130 | 1. Cropper 1131 | 圖片局部剪切工具,可觸摸控制選擇區域或旋轉 1132 | 項目地址:https://github.com/edmodo/cropper 1133 | 使用介紹:https://github.com/edmodo/cropper/wiki 1134 | 效果圖:![Renderings](https://github-camo.global.ssl.fastly.net/e4fde77bf41d4a60b234b4e268e5cfa8c17d9b6f/687474703a2f2f692e696d6775722e636f6d2f334668735467666c2e6a7067) 1135 | 1136 | 1. android-crop 1137 | 圖片裁剪Activity 1138 | 項目地址:https://github.com/jdamcd/android-crop 1139 | 效果圖:![Renderings](https://github.com/jdamcd/android-crop/raw/master/screenshot.png) 1140 | 1141 | 1. TileView 1142 | 可分塊顯示大圖,支持2D拖動、雙擊、雙指放大、雙指捏合 1143 | 項目地址:https://github.com/moagrius/TileView 1144 | Demo地址:http://moagrius.github.io/TileView/TileViewDemo.apk 1145 | 1146 | 1. BlurEffectForAndroidDesign 1147 | 圖片模糊效果 1148 | 項目地址:https://github.com/PomepuyN/BlurEffectForAndroidDesign 1149 | 1150 | 1. android-eye 1151 | PC端網頁查看同一局域網內的手機攝像頭內容,可以用來監控哦 1152 | 項目地址:https://github.com/Teaonly/android-eye 1153 | Demo地址:https://play.google.com/store/apps/details?id=teaonly.droideye 1154 | 1155 | 1. libpng for Android 1156 | PNG圖片的jni庫,支持幾乎png的所有特性 1157 | 項目地址:https://github.com/julienr/libpng-android 1158 | 文檔地址:http://www.libpng.org/pub/png/libpng.html 1159 | 1160 | 1. android-gpuimage 1161 | 基于GPU的圖片濾鏡 1162 | 項目地址:https://github.com/CyberAgent/android-gpuimage 1163 | 1164 | 1. AndroidFaceCropper 1165 | 圖片臉部自動識別,將識別後的局部圖片返回 1166 | 項目地址:https://github.com/lafosca/AndroidFaceCropper 1167 | 1168 | 1. Android Video Crop 1169 | 利用TextureView播放和剪切視頻,類似ImageView.setScaleType 1170 | 項目地址:https://github.com/dmytrodanylyk/android-video-crop 1171 | Demo地址:https://github.com/lafosca/AndroidFaceCropper/releases/download/1.0/FaceCropper-sample-debug-unaligned.apk 1172 | 1173 | 1. svg-android 1174 | Android Svg矢量圖形支持 1175 | 項目地址:https://github.com/japgolly/svg-android https://github.com/japgolly/svg-android 1176 | 1177 | 1178 | #### 八、事件總線(訂閱者模式) 1179 | 通過發布/訂閱事件解耦事件發送和接受,從而簡化應用程序組件(Activities, Fragments及後台線程)之間的通信 1180 | 1181 | 1. EventBus 1182 | greenrobot的開源項目 1183 | 項目地址:https://github.com/greenrobot/EventBus 1184 | 文檔介紹:https://github.com/greenrobot/EventBus#general-usage-and-api 1185 | 特點:(1) 支持在不同類型的線程中處理訂閱,包括發布所在線程,UI線程、單一後台線程、異步線程 1186 | (2) 支持事件優先級定義,支持優先級高的訂閱者取消事件繼續傳遞,支持粘性事件,是不是跟系統的有序廣播、粘性廣播很像啊 1187 | (3) 不是基于annotations 1188 | (4) 性能更優 1189 | (5) 體積小 1190 | (6) 支持單例創建或創建多個對象 1191 | (7) 支持根據事件類型訂閱 1192 | 1193 | 1. Otto 1194 | Square的開源項目,基于Guava的Android優化 1195 | 項目地址:https://github.com/square/otto 1196 | 文檔介紹:http://square.github.io/otto/ 1197 | [EventBus與Otto的功能及性能對比文檔](https://github.com/greenrobot/EventBus#comparison-with-squares-otto) 1198 | [EventBus與Otto性能對比Demo Apk](https://play.google.com/store/apps/details?id=de.greenrobot.eventperf) 1199 | 1200 | 1201 | #### 九、傳感器 1202 | 1. Great Android Sensing Toolkit 1203 | Android感應器工具包,包含示例及使用過程中可能需要的算法 1204 | 項目地址:https://github.com/gast-lib/gast-lib 1205 | Demo地址:https://play.google.com/store/apps/details?id=root.gast.playground 1206 | 文檔介紹:https://github.com/gast-lib/gast-lib#documentation 1207 | 1208 | 1. SensorManager 1209 | Android傳感器管理 1210 | 項目地址:https://github.com/nlathia/SensorManager 1211 | 文檔介紹:https://docs.google.com/document/d/1TqThJULb-4e6TGb1gdkAaPCfyuXStjJpbnt7a0OZ9OE/edit 1212 | 1213 | 1. GPSLogger 1214 | 記錄GPS信息 1215 | 項目地址:https://github.com/mendhak/gpslogger 1216 | Demo地址:https://play.google.com/store/apps/details?id=com.mendhak.gpslogger 1217 | 文檔介紹:http://code.mendhak.com/gpslogger/ 1218 | 1219 | 1. Pedometer 1220 | 計步器,使用硬件計步感應器 1221 | 項目地址:https://github.com/j4velin/Pedometer 1222 | 1223 | 1. leapcast 1224 | ChromeCast模擬器的App 1225 | 項目地址:https://github.com/dz0ny/leapcast 1226 | 1227 | 1. Arduino-Communicator 1228 | 與Arduino通信的App 1229 | 項目地址:https://github.com/jeppsson/Arduino-Communicator 1230 | 1231 | 1. android-pedometer 1232 | Android計步器 1233 | 項目地址:https://github.com/bagilevi/android-pedometer 1234 | Demo地址:http://pedometer.googlecode.com/files/Pedometer-1.4.apk 1235 | 1236 | 1. OwnTracks for Android 1237 | 自己的軌迹記錄 1238 | 項目地址:https://github.com/owntracks/android 1239 | 1240 | 1. Shake Detector library for Android 1241 | Android手機震動搖晃檢測庫,提供供UI線程調用的回調接口 1242 | 項目地址:https://github.com/tbouron/ShakeDetector 1243 | Demo地址:https://play.google.com/store/apps/details?id=com.github.tbouron.shakedetector.example 1244 | 1245 | 1. Android heart rate monitor 1246 | Android心跳檢測 1247 | 項目地址:https://github.com/phishman3579/android-heart-rate-monitor 1248 | 1249 | 1. Bluetooth LE Library for Android 1250 | 藍牙源信息,包括寶庫Mac、更新時間、RSSI、UUID、信號源距離、影響範圍等信息 1251 | 項目地址:https://github.com/alt236/Bluetooth-LE-Library---Android 1252 | Demo地址:https://play.google.com/store/apps/details?id=uk.co.alt236.btlescan 1253 | 1254 | 1. farebot 1255 | 通過NFC 從公交卡中讀取數據的一個應用 1256 | 項目地址:https://github.com/codebutler/farebot 1257 | 1258 | 1259 | 1260 | #### 十、安全 1261 | 1. SQLCipher 1262 | Sqlite加密工具 1263 | 項目地址:https://github.com/sqlcipher/sqlcipher 1264 | 幫助文檔:http://sqlcipher.net/sqlcipher-for-android/ 1265 | 1266 | 1. Conceal 1267 | 快速高效的進行文件加密解密 1268 | 項目地址:https://github.com/facebook/conceal 1269 | 文檔介紹:https://github.com/facebook/conceal#usage 1270 | 1271 | 1. Android-PasscodeLock 1272 | 應用鎖,每次啓動或從任何Activity啓動應用都需要輸入四位數字的密碼方可進入 1273 | 項目地址:https://github.com/wordpress-mobile/Android-PasscodeLock 1274 | Demo地址:https://play.google.com/store/apps/details?id=com.sothree.umano 1275 | APP示例:Wordpress Android,支付寶,挖財 1276 | 1277 | 1. GlowPadBackport 1278 | 將Android4.2的鎖屏界面解鎖擴展到Android1.6及1.6+ 1279 | 項目地址:https://github.com/rock3r/GlowPadBackport 1280 | Demo地址:https://play.google.com/store/apps/details?id=net.sebastianopoggi.samples.ui.GlowPadSample 1281 | 效果圖:![Renderings](https://lh6.ggpht.com/U070b6Lh6cVsVwx4jN-5nq0xqiB1PBzrYABPeJIEe2hZQ5UWOxc-FDUG77wADelToHA=h310-rw) 1282 | 1283 | 1. GlowPadView 1284 | Android 4鎖屏界面解鎖 1285 | 項目地址:https://github.com/nadavfima/GlowPadView 1286 | 效果圖:https://raw.github.com/nadavfima/GlowPadView/master/example.png 1287 | 1288 | 1. android-lockpattern 1289 | Android的圖案密碼解鎖 1290 | 項目地址:https://code.google.com/p/android-lockpattern/ 1291 | Demo地址:https://play.google.com/store/apps/details?id=group.pals.android.lib.ui.lockpattern.demo 1292 | 使用介紹:https://code.google.com/p/android-lockpattern/wiki/QuickUse 1293 | 示例APP:Android開機的圖案密碼解鎖,支付寶的密碼解鎖 1294 | 1295 | 1296 | #### 十一、插件化 1297 | 1. Android Plugin Framework 1298 | Android插件式開發 1299 | 項目地址:https://github.com/umeng/apf 1300 | 1301 | 1. xCombine 1302 | Android App插件式插件開發 1303 | 項目地址:https://github.com/wyouflf/xCombine 1304 | 文檔介紹:http://my.oschina.net/u/1171837/blog/155377 1305 | 1306 | 1. dynamic-load-apk 1307 | Android動態加載Apk,熱部署 1308 | 項目地址:https://github.com/singwhatiwanna/dynamic-load-apk 1309 | 文檔介紹:http://blog.csdn.net/singwhatiwanna/article/details/22597587 1310 | 1311 | 1312 | #### 十二、文件 1313 | 對不同文檔類型的處理,包括PDF、Word、EPub、Html、Zip等 1314 | 1315 | 1. purePDF 1316 | 允許從任何運行的SWF文件讀取和創建PDF文檔 1317 | 項目地址:https://github.com/sephiroth74/purePDF 1318 | 1319 | 1. Office 365 SDK for Android Preview 1320 | 可支持Microsoft SharePoint Lists, Microsoft SharePoint Files, Microsoft Exchange Calendar, Microsoft Exchange Contacts, Microsoft Exchange Mail 1321 | 項目地址:https://github.com/OfficeDev/Office-365-SDK-for-Android 1322 | 1323 | 1. OpenSpritz-Android 1324 | EPub閱讀器 1325 | 項目地址:https://github.com/OnlyInAmerica/OpenSpritz-Android 1326 | 1327 | 1. jsoup 1328 | 一個解析html的java庫,可方便的提取和操作數據 1329 | 項目地址:https://github.com/jhy/jsoup 1330 | 官方網站:http://jsoup.org/ 1331 | 作用:(1) 從一個url、文件或string獲得html並解析 1332 | (2) 利用dom遍曆或css選擇器查找、提取數據 1333 | (3) 操作html元素 1334 | (4) 根據白名單去除用于提交的非法數據防止xss攻擊 1335 | (5) 輸出整齊的html 1336 | 1337 | 1. ZIP 1338 | java壓縮和解壓庫 1339 | 項目地址:https://github.com/zeroturnaround/zt-zip 1340 | 文檔介紹:https://github.com/zeroturnaround/zt-zip#examples 1341 | 作用:(1) 解壓和壓縮,並支持文件夾內遞歸操作 1342 | (2) 支持包含和排除某些元素 1343 | (3) 支持重命名元素 1344 | (4) 支持遍曆zip包內容 1345 | (5) 比較兩個zip包等功能 1346 | 1347 | 1348 | #### 十三、其他 1349 | 1. Salvage view 1350 | 帶View緩存的Viewpager PagerAdapter,很方便使用 1351 | 項目地址:https://github.com/JakeWharton/salvage 1352 | 1353 | 1. Android Priority Job Queue 1354 | Android後台任務隊列 1355 | 項目地址:https://github.com/path/android-priority-jobqueue 1356 | 文檔介紹:https://github.com/path/android-priority-jobqueue#getting-started 1357 | 1358 | 1. Cobub Razor 1359 | 開源的mobile行爲分析系統,包括web端、android端,支持ios和window phone 1360 | 項目地址:https://github.com/cobub/razor 1361 | Demo地址:http://demo.cobub.com/razor 1362 | 網站介紹:http://dev.cobub.com/ 1363 | 1364 | 1. aFileChooser 1365 | 文件選擇器,可內嵌到程序中,而無需使用系統或三方文件選擇器。 1366 | 項目地址:https://github.com/iPaulPro/aFileChooser 1367 | 1368 | 1. androidpn 1369 | 基于xmpp協議的消息推送解決方案,包括服務器端和android端。 1370 | 項目地址:https://github.com/dannytiehui/androidpn 1371 | 1372 | 1. Bolts 1373 | Android的異步編程模式 1374 | 項目地址:https://github.com/BoltsFramework/Bolts-Android/ 1375 | 與AsyncTask比較:(1) 使用的是無大小限制的線程池 1376 | (2) 任務可組合可級聯,防止了代碼耦合 1377 | 1378 | 1. CastCompanionLibrary-android 1379 | 使Android程序中更快的接入Google Cast 1380 | 項目地址:https://github.com/googlecast/CastCompanionLibrary-android 1381 | 文檔介紹:https://developers.google.com/cast/ 1382 | 1383 | 1. CastVideos-android 1384 | 從Android設備分享Video通過Google Cast 1385 | 項目地址:https://github.com/googlecast/CastVideos-android 1386 | 文檔介紹:https://developers.google.com/cast/ 1387 | 1388 | 1. Uninstall_Statics 1389 | Android應用自身被卸載監聽及打開浏覽器等反饋功能實現 1390 | 項目地址:https://github.com/sevenler/Uninstall_Statics 1391 | 文檔介紹:http://www.cnblogs.com/zealotrouge/p/3157126.html 1392 | http://www.cnblogs.com/zealotrouge/p/3159772.html 1393 | 1394 | 1. Memento 1395 | 保證在系統配置改變時,Activity中的某些數據可以簡單安全的保持不變 1396 | 項目地址:https://github.com/mttkay/memento 1397 | 文檔介紹:https://github.com/mttkay/memento#usage 1398 | 1399 | 1. FreeFlow 1400 | 布局引擎,更簡單的創建自定義布局,並且當數據和布局改變時更美觀的過渡動畫 1401 | 項目地址:https://github.com/Comcast/FreeFlow 1402 | Demo地址:https://github.com/Comcast/FreeFlow/releases 1403 | 1404 | 1. Android Gesture Detectors Framework 1405 | Android手勢框架,支持雙指旋轉、移動、平移、縮放等 1406 | 項目地址:https://github.com/Almeros/android-gesture-detectors 1407 | 1408 | 1. Mapbox Android SDK 1409 | Android Map的替代版 1410 | 項目地址:https://github.com/mapbox/mapbox-android-sdk 1411 | 1412 | 1. Activity animation 1413 | Activity跳轉動畫,支持各個方向波浪的效果 1414 | 項目地址:https://github.com/flavienlaurent/activityanimation 1415 | 在線演示:https://www.youtube.com/watch?v=-E0sc6w_Jck 1416 | 1417 | 1. KryoNet 1418 | 通過NIO提供客戶端和服務器端TCP/UDP網絡傳輸的Java庫 1419 | 項目地址:https://github.com/EsotericSoftware/kryonet 1420 | 1421 | 1422 | ## 第三部分 優秀項目 1423 | 主要介紹那些Android還不錯的完整項目,目前包含的項目主要依據是項目有意思或項目分層規範比較好。 1424 | Linux 1425 | 項目地址:https://github.com/torvalds/linux 1426 | Android 1427 | 項目地址:https://android.googlesource.com/ 或 https://github.com/android 1428 | 以上兩個項目,不解釋 1429 | 1430 | (1) ZXing 1431 | 二維碼掃描工具 1432 | 項目地址:https://github.com/zxing/zxing 或 https://code.google.com/p/zxing/ 1433 | APK地址:https://play.google.com/store/apps/details?id=com.google.zxing.client.android 1434 | PS:現在市面上很多應用的二維碼掃描功能都是從這個修改而來 1435 | 1436 | (2) photup 1437 | 編輯機批量上傳照片到facebook上 1438 | 項目地址:https://github.com/chrisbanes/photup 1439 | APK地址:https://play.google.com/store/apps/details?id=uk.co.senab.photup 1440 | PS:代碼分包合理,很棒。不過這個項目依賴的開源項目比較多,比較難編譯 1441 | 1442 | (3) github-android 1443 | Github的Android客戶端項目 1444 | 項目地址:https://github.com/github/android 1445 | APK地址:https://play.google.com/store/apps/details?id=com.github.mobile 1446 | 1447 | (4) Notes 1448 | MIUI便簽 1449 | 項目地址:https://github.com/MiCode/Notes 1450 | APK地址:https://github.com/Trinea/TrineaDownload/blob/master/miui-note-demo.apk?raw=true 1451 | PS:項目分包比較合理,相比較miui的文件管理器https://github.com/MiCode/FileExplorer 代碼規範較好得多 1452 | 1453 | (5) weicuiyuan 1454 | 四次元-新浪微博客戶端 1455 | 項目地址:https://github.com/qii/weiciyuan 1456 | APK地址:https://play.google.com/store/apps/details?id=org.qii.weiciyuan 1457 | 1458 | (6) gnucash-android 1459 | 一個記賬理財軟件 1460 | 項目地址:https://github.com/codinguser/gnucash-android 1461 | APK地址:http://play.google.com/store/apps/details?id=org.gnucash.android 1462 | 1463 | (7) AntennaPod 1464 | 支持rss訂閱、音樂訂閱 1465 | 項目地址:https://github.com/danieloeh/AntennaPod 1466 | APK地址:https://play.google.com/store/apps/details?id=de.danoeh.antennapod 1467 | 1468 | (8) ChaseWhisplyProject 1469 | 打鬼遊戲 1470 | 項目地址:https://github.com/tvbarthel/ChaseWhisplyProject 1471 | APK地址:https://play.google.com/store/apps/details?id=fr.tvbarthel.games.chasewhisply 1472 | 1473 | (9) Tweet Lanes 1474 | 功能完整的Twitter客戶端 1475 | 項目地址:https://github.com/chrislacy/TweetLanes 1476 | APK地址:https://play.google.com/store/apps/details?id=com.tweetlanes.android 1477 | 1478 | (10) Financius 1479 | 簡單易用的記賬程序 1480 | 項目地址:https://github.com/mvarnagiris/Financius 1481 | APK地址:https://play.google.com/store/apps/details?id=com.code44.finance 1482 | 1483 | (11) todo.txt-android 1484 | todo.txt的官方Android應用 1485 | 項目地址:https://github.com/ginatrapani/todo.txt-android 1486 | APK地址:https://play.google.com/store/apps/details?id=com.todotxt.todotxttouch 1487 | 1488 | (12) simpletask 1489 | 基于todo.txt官方應用的另一個客戶端 1490 | 項目地址:https://github.com/mpcjanssen/simpletask-android 1491 | APK地址:https://play.google.com/store/apps/details?id=nl.mpcjanssen.todotxtholo 1492 | 1493 | (13) Muzei Live Wallpaper 1494 | 定時更換桌面精美壁紙 1495 | 項目地址:https://github.com/romannurik/muzei 1496 | APK地址:https://play.google.com/store/apps/details?id=net.nurik.roman.muzei 1497 | 1498 | 1499 | ## 第四部分 開發工具及測試工具 1500 | 主要介紹和Android開發工具和測試工具相關的開源項目。 1501 | #### 一、開發效率工具 1502 | 1. Json2Java 1503 | 根據JSon數據自動生成對應的Java實體類,還支持Parcel、Gson Annotations對應代碼自動生成。期待後續的提取父類以及多url構建整個工程的功能 1504 | 項目地址:https://github.com/jonfhancock/JsonToJava 1505 | 在線演示:http://jsontojava.appspot.com/ 1506 | 1507 | 1. IntelliJ Plugin for Android Parcelable boilerplate code generation 1508 | Android studio插件,生成Parcelable代碼 1509 | 項目地址:https://github.com/mcharmas/android-parcelable-intellij-plugin 1510 | 效果圖:![Holo Colors Idea](https://github.com/mcharmas/android-parcelable-intellij-plugin/raw/master/screenshot.png) 1511 | 1512 | 1. Android Holo Colors IntelliJ Plugin 1513 | Android studio插件,生成holo樣式9 patch圖片 1514 | 項目地址:https://github.com/jeromevdl/android-holo-colors-idea-plugin 1515 | 效果圖:![Holo Colors Idea](https://raw.github.com/jeromevdl/android-holo-colors-idea-plugin/master/other/holocolorsidea.png) 1516 | 1517 | 1. Android Drawable Factory 1518 | 用于生成各個分辨率的圖片 1519 | 項目地址:https://github.com/tizionario/AndroidDrawableFactory 1520 | 效果圖:![Android Drawable Factory](https://github-camo.global.ssl.fastly.net/5c3844b345a9779296f996490070dab0bfc9dbf5/68747470733a2f2f646c2e64726f70626f7875736572636f6e74656e742e636f6d2f752f32363636343637352f416e64726f69644472617761626c65466163746f72792f312e706e67) 1521 | 1522 | 1. SelectorChapek for Android 1523 | Android Studio插件,可根據固定文件名格式資源自動生成drawable selectors xml文件。 1524 | 項目地址:https://github.com/inmite/android-selector-chapek 1525 | 1526 | 1. Android Action Bar Style Generator 1527 | Android ActionBar樣式生成器,可在線選擇ActionBar樣式自動生成所需要的圖片資源及xml文件 1528 | 項目地址:https://github.com/jgilfelt/android-actionbarstylegenerator 1529 | 在線演示:http://jgilfelt.github.io/android-actionbarstylegenerator/ 1530 | 1531 | 1. ButterKnifeZelezny 1532 | 用于快速生成[ButterKnife](https://github.com/JakeWharton/butterknife)View注入代碼的Android Studio/IDEA插件 1533 | 項目地址:https://github.com/inmite/android-butterknife-zelezny 1534 | 1535 | 1. RoboCoP 1536 | 利用Gradle task根據固定格式的json文件生成ContentProvider 1537 | 項目地址:https://github.com/mediarain/RoboCoP 1538 | 1539 | 1. appiconsizes 1540 | 用于生成各個分辨率的圖片 1541 | 項目地址:http://www.appiconsizes.com/ 1542 | 1543 | 1. Gradle Retrolambda Plugin 1544 | [Retrolambda](https://github.com/orfjackal/retrolambda)是將Java8的Lambdas應用于Java7的工具,本項目是Gradle插件,通過Retrolambda從而使Java或Android項目用Java8的Lambdas編寫,將編譯後的字節碼轉換爲Java6和7的字節碼從而正常運行 1545 | 項目地址:https://github.com/evant/gradle-retrolambda 1546 | 1547 | 1. Dagger IntelliJ Plugin 1548 | dagger的intellij插件 1549 | 項目地址:https://github.com/square/dagger-intellij-plugin 1550 | 1551 | 1. Android Gen Drawable Maven plugin 1552 | 在編譯時根據SVG描述文件生成不同分辨率的jpg、png或點9圖片 1553 | 項目地址:https://github.com/avianey/androidgendrawable-maven-plugin 1554 | 1555 | 1. jsonschema2pojo 1556 | 根據Json內容生成java對象,支持jackjson和gson。 1557 | 項目地址:https://github.com/joelittlejohn/jsonschema2pojo 1558 | 在線演示:http://www.jsonschema2pojo.org/ 1559 | 1560 | 1561 | #### 二、開發自測相關 1562 | 1. Quality Tools for Android 1563 | Android測試及自測工具集合和示例 1564 | 項目地址:https://github.com/stephanenicolas/Quality-Tools-for-Android 1565 | 1566 | 1. android-test-kit 1567 | Google的Android測試工具 1568 | 包括GoogleInstrumentationTestRunner(增強版的InstrumentationTestRunner)和Espresso(用于快速寫出可靠測試用例的API) 1569 | 項目地址:https://code.google.com/p/android-test-kit/ 1570 | 文檔介紹:https://code.google.com/p/android-test-kit/w/list 1571 | 1572 | 1. robolectric 1573 | 測試用例編寫框架 1574 | 項目地址:https://github.com/robolectric/robolectric 1575 | Demo地址:https://github.com/robolectric/robolectricsample 1576 | 文檔介紹:http://robolectric.org/ 1577 | 特點:(1). 不需要模擬器在一般JVM就可以運行測試用例 1578 | (2). 能完成在真機上的大部分測試包括感應器 1579 | 其他的測試用例及相關模塊Mock可見:[android-mock](https://code.google.com/p/android-mock/), [mockito](https://code.google.com/p/mockito/), [easy-mock](https://github.com/easymock/easymock) 1580 | 1581 | 1. Android FEST 1582 | 提供一些列方便的斷言,可用于提高編寫Android自測代碼效率 1583 | 項目地址:https://github.com/square/fest-android 1584 | 1585 | 1. BoundBox 1586 | 可用于測試類各種訪問權限的屬性、方法。實際是通過BoundBox這個annotation生成一個屬性和方法都是public權限的中間類並對此類進行測試完成的 1587 | 項目地址:https://github.com/stephanenicolas/boundbox 1588 | 1589 | 1. Hugo 1590 | 用于打印函數信息及執行時間的工具,僅在debug模式生效 1591 | 項目地址:https://github.com/JakeWharton/hugo 1592 | 1593 | 1. scalpel 1594 | 在應用下面添加一層用于界面調試,待詳細補充 // TODO 1595 | 項目地址:https://github.com/JakeWharton/scalpel 1596 | 1597 | 1. Android Screenshot library 1598 | Android截圖工具類,用于在持續集成時截圖 1599 | 項目地址:https://github.com/rtyley/android-screenshot-lib 1600 | 1601 | 1. sonar-android-lint-plugin 1602 | 將android lint的錯誤在sonar中展現 1603 | 項目地址:https://github.com/SonarCommunity/sonar-android 1604 | 1605 | 1606 | #### 三、測試工具 1607 | 1. Spoon 1608 | 可用于android不同機型設備自動化測試,能將應用apk和測試apk運行在不同機器上並生成相應測試報告。 1609 | 項目地址:https://github.com/square/spoon 1610 | 1611 | 1. Tencent APT 1612 | APT是騰訊開源的一個Android平台高效性能測試組件,提供豐富實用的功能,適用于開發自測、定位性能瓶頸;測試人員完成性能基准測試、競品對比測試 1613 | 項目地址:https://github.com/stormzhang/APT 1614 | 1615 | 1. Emmagee 1616 | 網易開源的性能測試工具,包括CPU、內存、網絡流量、啓動時間、電池狀態等 1617 | 項目地址:https://github.com/NetEase/Emmagee 1618 | 1619 | 1620 | #### 四、開發及編譯環境 1621 | 1. Buck 1622 | facebook開源的Android編譯工具,效率是ant的兩倍。主要優點在于: 1623 | (1) 加快編譯速度,通過並行利用多核cpu和跟蹤不變資源減少增量編譯時間實現 1624 | (2) 可以在編譯系統中生成編譯規則而無須另外的系統生成編譯規則文件 1625 | (3) 編譯同時可生成單元測試結果 1626 | (4) 既可用于IDE編譯也可用于持續集成編譯 1627 | (5) facebook持續優化中 1628 | 項目地址:https://github.com/facebook/buck 1629 | 1630 | 1. Android Maven Plugin 1631 | Android Maven插件,可用于對android三方依賴進行管理。在J2EE開發中,maven是非常成熟的依賴庫管理工具,可統一管理依賴庫。 1632 | 項目地址:https://github.com/jayway/maven-android-plugin 1633 | 1634 | 1. umeng-muti-channel-build-tool 1635 | 渠道打包工具 1636 | 項目地址:https://github.com/umeng/umeng-muti-channel-build-tool 1637 | 另可參見Google的構建系統Gradle:http://tools.android.com/tech-docs/new-build-system/user-guide 1638 | 1639 | 1. Genymotion 1640 | 目前最好用最快的android模擬器 1641 | 項目地址:http://www.genymotion.com/ 1642 | Android studio集成控件: http://plugins.jetbrains.com/plugin/7269?pr=idea 1643 | Cyril Mottier推薦:http://cyrilmottier.com/2013/06/27/a-productive-android-development-environment/ 1644 | 1645 | 1. gradle-mvn-push 1646 | 方便的將Gradle的Artifacts上傳到Maven倉庫 1647 | 項目地址:https://github.com/chrisbanes/gradle-mvn-push 1648 | 文檔介紹:https://github.com/chrisbanes/gradle-mvn-push#usage 1649 | 1650 | 1. Android Emulator Plugin for Jenkins 1651 | Android模擬器 jenkins插件,用于Jenkins做持續集成時跑模擬器測試 1652 | 項目地址:https://github.com/jenkinsci/android-emulator-plugin 1653 | 1654 | 1. Android Maven Plugin 1655 | 管理應用所需要的依賴庫。包括的構建工具有Maven、Gradle、ant、sbt 1656 | 項目地址:https://github.com/mosabua/maven-android-sdk-deployer 1657 | 1658 | 1. SDK Manager Plugin 1659 | 下載和管理Android SDK的Gradle插件 1660 | 項目地址:https://github.com/JakeWharton/sdk-manager-plugin 1661 | 1662 | 1. Gradle Protobuf Plugin 1663 | 將.proto文件轉換成Java文件的gradle插件 1664 | 項目地址:https://github.com/andrewkroh/gradle-protobuf-plugin 1665 | 1666 | 1667 | #### 五、其他 1668 | 1. ViewServer 1669 | 允許app運行在任何手機上都可以用HierarchyViewer查看 1670 | 項目地址:https://github.com/romainguy/ViewServer 1671 | 1672 | 1. GridWichterle for Android 1673 | 在整個系統上顯示一個grid,用來幫助查看應用布局及使得布局更美觀,可設置grid網格大小和顔色,android推薦48dp和8dp,可見 Android Design Guidelines – Metrics and Grids 1674 | 項目地址:https://github.com/inmite/android-grid-wichterle 1675 | APK地址:https://play.google.com/store/apps/details?id=eu.inmite.android.gridwichterle 1676 | PS:比起hierarchyviewer相差甚遠,不過偶爾可用來作爲布局查看工具。 1677 | 1678 | 1. Catlog 1679 | 手機端log查看工具,支持不同顔色顯示、關鍵字過濾、級別過濾、進程id過濾、錄制功能等 1680 | 項目地址:https://github.com/nolanlawson/Catlog 1681 | 在線演示:https://play.google.com/store/apps/details?id=com.nolanlawson.logcat 1682 | 1683 | 1. PID Cat 1684 | 根據package查看logcat日志 1685 | 項目地址:https://github.com/JakeWharton/pidcat 1686 | 1687 | 1. ACRA 1688 | 應用崩潰信息上報到GoogleDoc工具,網頁版展現結果三方開源地址https://github.com/BenoitDuffez/crashreportsviewer 1689 | 項目地址:https://github.com/ACRA/acra 1690 | 文檔地址:https://github.com/ACRA/acra/wiki/BasicSetup 1691 | 1692 | 1. Crashlytics 1693 | 提供豐富的應用崩潰信息收集 1694 | 輕量級,豐富,可自定義應用崩潰信息收集器,附有郵件通知 1695 | 項目地址:http://www.crashlytics.com/ 1696 | 集成插件:[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) 1697 | 1698 | 1. Android Resource Navigator 1699 | chrome插件,可以方便的查看github上android源碼工程的styles.xml和themes.xml。主要功能: 1700 | (1) 快速打開android styles.xml themes.xml 1701 | (2) 方便在資源間跳轉。styles.xml themes.xml文件中資源鏈接跳轉,可以方便跳轉到某個資源 1702 | (3) 方便查找某個style和theme。chrome地址欄輸入arn+tab+搜索內容回車即可 1703 | (4) 自動下載不同分辨率下的drawable 1704 | (5) 通過映射查找那些不是按照固定命名規則命名的style和theme 1705 | 項目地址:https://github.com/jgilfelt/android-resource-navigator 1706 | 示例:https://chrome.google.com/webstore/detail/android-resource-navigato/agoomkionjjbejegcejiefodgbckeebo?hl=en&gl=GB 1707 | 1708 | 1. android-resource-remover 1709 | 根據lint的提示刪除項目中無用的資源,減少包的大小 1710 | 項目地址:https://github.com/KeepSafe/android-resource-remover 1711 | 1712 | 1. Telescope 1713 | 通過手勢截圖以特定主題發送到特定郵箱地址報告Bug 1714 | 項目地址:https://github.com/mattprecious/telescope 1715 | 1716 | 1717 | ## 第五部分 1718 | 主要介紹那些樂于分享並且有一些很不錯的開源項目的個人和組織。Follow大神,深挖大神的項目和following,你會發現很多。 1719 | 1720 | #### 一、個人 1721 | 1. JakeWharton 1722 | 就職于Square,絕對牛逼的大神,項目主要集中在Android版本兼容,ViewPager及開發工具上 1723 | Github地址:https://github.com/JakeWharton 1724 | 代表作:ActionBarSherlock,Android-ViewPagerIndicator,Nine Old Androids,SwipeToDismissNOA,hugo,butterknife,Android-DirectionalViewPager, scalpel 1725 | pidcat另外對square及其他開源項目有很多貢獻 1726 | 主頁:http://jakewharton.com/ 1727 | 1728 | 1. Chris Banes 1729 | Github地址:https://github.com/chrisbanes 1730 | 代表作:ActionBar-PullToRefresh,PhotoView,Android-BitmapCache,Android-PullToRefresh 1731 | 主頁:http://chris.banes.me/ 1732 | 1733 | 1. Koushik Dutta 1734 | 就職于ClockworkMod 1735 | Github地址:https://github.com/koush 1736 | 代表作:Superuser,AndroidAsync,UrlImageViewHelper,ion, 另外對https://github.com/CyanogenMod 的開源項目有很多貢獻 1737 | 主頁:http://koush.com/ 1738 | 1739 | 1. Simon Vig 1740 | Github地址:https://github.com/SimonVT 1741 | 代表作:android-menudrawer,MessageBar 1742 | 主頁:http://simonvt.net/ 1743 | 1744 | 1. Manuel Peinado 1745 | Github地址:https://github.com/ManuelPeinado 1746 | 代表作:FadingActionBar,GlassActionBar,RefreshActionItem,QuickReturnHeader 1747 | 1748 | 1. Emil Sj?lander 1749 | Github地址:https://github.com/emilsjolander 1750 | 代表作:StickyListHeaders,sprinkles,android-FlipView 1751 | 主頁:http://emilsjolander.se/ 1752 | 1753 | 1. greenrobot 1754 | Github地址:https://github.com/greenrobot 1755 | 代表作:greenDAO,EventBus 1756 | 主頁:http://greenrobot.de/ 1757 | 1758 | 1. Jeff Gilfelt 1759 | Github地址:https://github.com/jgilfelt 1760 | 代表作:android-mapviewballoons,android-viewbadger,android-actionbarstylegenerator,android-sqlite-asset-helper 1761 | 主頁:http://jeffgilfelt.com 1762 | 1763 | 1. Romain Guy 1764 | Android team成員(2013.10已離開Android team,仍在Google) 1765 | Github地址:https://github.com/romainguy 1766 | 代表作:ViewServer 1767 | 主頁:http://www.curious-creature.org/category/android/ 1768 | 個人攝影作品:http://www.flickr.com/photos/romainguy 1769 | 1770 | 1. sephiroth74 1771 | 就職于Aviary.com 1772 | Github地址:https://github.com/sephiroth74 1773 | 代表作:ImageViewZoom,HorizontalVariableListView,AndroidWheel,purePDF 1774 | 主頁:http://www.sephiroth.it/ 1775 | 1776 | 1. Cyril Mottier 1777 | Google開發者專家認證,發布一些Android技巧及文章 1778 | Github地址:https://github.com/cyrilmottier 1779 | 代表作:GreenDroid,Polaris 1780 | 主頁:http://cyrilmottier.com/ 1781 | 1782 | 1783 | #### 二、組織 1784 | 1. Square 1785 | 有態度有良心的企業,很多不錯的分享 1786 | Github地址:https://github.com/square 1787 | 代表作:okhttp、fest-android,android-times-square、picasso、dagger、spoon等等 1788 | 主頁:http://square.github.io/ 1789 | 1790 | 1. Inmite s.r.o. 1791 | Github地址:https://github.com/inmite 1792 | 代表作:android-styled-dialogs,android-grid-wichterle,android-selector-chapek 1793 | 主頁:http://www.inmite.eu/ 1794 | 1795 | 1796 | #### 三、博客 1797 | 1. Chet Haase 1798 | Android framework UI team 成員 1799 | 主頁:http://graphics-geek.blogspot.com/ 1800 | 1801 | 1802 | ## License 1803 | 1804 | Copyright 2014 trinea.cn 1805 | 1806 | Licensed under the Apache License, Version 2.0 (the "License"); 1807 | you may not use this file except in compliance with the License. 1808 | You may obtain a copy of the License at 1809 | 1810 | http://www.apache.org/licenses/LICENSE-2.0 1811 | 1812 | Unless required by applicable law or agreed to in writing, software 1813 | distributed under the License is distributed on an "AS IS" BASIS, 1814 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1815 | See the License for the specific language governing permissions and 1816 | limitations under the License. 1817 | 1818 | --------------------------------------------------------------------------------