Android Open source project source code Analysis
By @trinea launched the Android Open source project Source resolution project, has been proofread published analysis has: Volley source resolution, Android Universal Image loader source analysis, dagger source parsing, Eventbus source parsing, Xutils source Parsing, Viewpagerindicator source parsing, holographlibrary source parsing, Circularfloatingactionmenu source parsing, PhotoView source parsing, Android Lock pattern Source parsing and public technology points: Java dynamic agent, Java annotation annotation, view drawing process, dependency injection and view time transfer.
Android Best performance Practice (i)--manage memory properly
A lot of friends have asked me how to write high-performance applications, how to avoid the application of oom, or when the program memory consumption is too high, how to troubleshoot. Indeed, a good application, not only to perform well, performance issues should also be handled just right. So I read a lot of high-performance programming recommendations from Android, so from this article I'm going to start writing a whole new series of blog posts to sort out and analyze the recommendations to help you write better apps.
Deep analysis of Android's custom layouts
This article was written by Lucas Rocha, a former Firefox Android engineer (now a job-hopping to Facebook), with a good analysis of four custom layout schemes commonly used in Android, Combined with the sample projects written in these four Android custom layouts, the pros and cons of each and the comparison of four scenarios are explained. After reading this article, but also let me have a further understanding of the Android custom layout, so take advantage of ruin your buzz, I translated it into Chinese, the original link here.
Skillfully using drawable to achieve the effect of the Android UI element spacing
Most of the mobile UI or Web UI is designed based on the grid concept. These grids are usually made up of blocks, and then they are grouped together into a block. The use of design principles such as grids can help align UI elements, improve UI consistency, and make it easier for users to get the content that is contained in the UI. In short, the grid is a fairly powerful design tool.
The fun of modularity
Tight coupling between modules is a bad design, and the worst aspect of coupling is the cyclic dependence between modules. Fortunately, there are several ways to eliminate cyclic dependencies, namely callback functions, code moves, and code down. Next, I'll show you a small example. example, I'll use several of these techniques to eliminate cyclic dependencies.
Your Android app doesn't need that much permission at all
The permissions of the Android system from the user's point of view sometimes is a bit confusing. Sometimes you just need to do something simple (edit the contact's information), but apply for more permissions than you need for your app (such as access to all your contact information). It's hard not to let users keep an alert on you.
Android App Performance Optimization Practice
This article has documented the tools used to optimize Android apps, as well as tips in practice, from tools, layout optimization, code, view drawing, power, and apk size.
Illustrations of MVC,MVP and MVVM
Complex software must have a clear and reasonable architecture, otherwise it cannot be developed and maintained. MVC (Model-view-controller) is one of the most common software architectures and is widely used in the industry. It's easy to understand, but it's not easy to tell the difference between the derived MVP and the MVVM architecture.
Compiling androidl firmware for NEXUS5
Next article < using Android Studio to view Android Lollipop source >, we know that just look at the code, the improvement is relatively limited, and the understanding is relatively superficial, often forget. And the code that you write, often will be more impressive, in the writing time will be easier to understand the process. So we look at the code at the same time, if you can modify the code, on the phone to run up and see the effect of the changes, this will undoubtedly speed up the efficiency and enthusiasm of the code to see.
Two-way communication series with Sevice
Often there are scenarios where we need client-side invocation of service to do something, and the service can also notify the client through callbacks.
Publish projects to the Jcenter warehouse using Gradle
This article introduces the open source project through Gradle to the public warehouse Jcenter, convenient for you and I his things, we are very lazy. Jcenter is now the default node for repositories in Android studio, previously Maven, but Jcenter is MAVEN compliant, so use it with confidence.
Carbon
Material design compatible implementation, support Android 2.1+.
Rushorm
An ORM Framework, core features:
- Custom fields-Easily implement custom fields so that any object can be serialized to the database
- Table relationships
- One
- One-to-many
- Saving a Parent object automatically saves the child objects associated with it
- File-Easy to save long text, JSON and bitmaps
- Upgrade-Database upgrade supports annotations to remove and rename column names.
Android-patternview
Pattern Password Unlock library.
Gif-movie-view
You can display a custom view of a GIF animation.
Javacpp
Javacpp provides efficient access to native C + + inside Java, not unlike the "the"-C + + some compilers with interact Y language. No need to invent new languages such as with SWIG, SIP, C + +/CLI, Cython, or Rpython as required by CPPYY. Instead, it exploits the syntactic and semantic similarities between Java and C + +. Under the hood, it uses JNI, so it works with all implementations of Java SE, in addition to Android, avian, and RoboVM (i nstructions).
Genius-android
Genius-android is a collection of commonly used methods in Android, Genius provides 6 basic blocks: App (Ui), animation (animation), widgets (material control), command line, net Tool (Ping, Dns ...), Util (common methods, classes), and so on.
5+ Runtime
5+ Runtime is the Dcloud launched HTML5 hardening Engine, the performance and function are significantly leading phoneg*p, can use JS call 40W Native API, can be run smoothly on the low-end machine. Click the video to see how the app runs smoothly on a low-end machine. HTTP://DOWNLOAD.DCLOUD.NET.CN/FASTANDROID-MINI.M4V can also directly download the app on the phone to experience:
Function Demo: Http://dcloud.io/helloh5/UI Demo: http://dcloud.io/hellomui/
Freepager
The Viewpager is extended to support the vertical switch page, the vertical infinite switch page, the horizontal wireless switch page and the ability to switch page vertically and horizontally, support ndroid 2.1.x (API 7) + system.
Android-materialpreference
A custom, backward-compatible material design-style preference implementation.
Collapseonscroll
A container view that mimics the scrolling effect of Android Lollipop contacts.
Androideventbus
An Android platform's event bus framework, which simplifies interaction between components such as activity, Fragment, service, and so on, greatly reduces the coupling between them, making our code more concise, less coupled, and improving our code quality.