Original link: http://stormzhang.com/android/2014/07/07/learn-android-from-rookie/
Received some friends of the micro-blog private message, said can give some guidance to Android novice, I can only say that guidance is not, after all, I am also a lot of things are learning, at the same time a college students are ready to switch to Android, can be said to start from the beginning, then I would like to give some advice on an experienced identity Just hope that in the course of learning can be less to write detours.
Hardware
- Computer--Recommended Mac
First of all, I am not the fruit powder, personal windows,linux,mac ox system have been used, can only say that Windows development tools are simply difficult to compliment, especially the command line super difficult to use, and Linux itself must spend a lot of time in the toss, is not suitable for novice, Max OS is I think the most useful system so far, not one, so if you are not bad money, it is strongly recommended to start a Mac, recommended Pro Series, of course, its price is indeed more expensive, if the temporary difficulties, recommended later on hand when the time to start, will bring you a quality experience. (Google's engineers are using the Mac, should be more convincing it)
- Mobile--Recommended Nexus 5
Android development is the most unbearable is that turtle speed simulator, highly recommended to start my Google Nexus series, native ROM, cost-effective ultra-high, conditional recommendation to start a Xiaomi or Samsung, not because they have more useful, It's because the two brands on the market now have the largest share of mobile phones, which may need to be adapted and tested in practice, in short you need an Android phone. You may also need to know that the Meizu has a smartbar, although I think it is really sb. In the end you still have to use the simulator, then let you recommend a more rapid simulator bar----genymotion, specifically see me this blog a powerful Android simulator genymotion
Development environment
Google helps you integrate a complete Android development environment, including a custom eclipse + ADT plugin, as well as the latest SDK and source code
It is more recommended to use idea than with eclipse and can be seamlessly transitioned to Android Studio later
First of all, this is not suitable for beginners to use, but you must know that this is Google's latest Android development tools, based on idea, compiling dependent gradle, There is no 1.0 official version yet, but you can still be familiar with the amateur program, as this may be the future of Android development tools
FQ
As the saying goes, not FQ programmers are not good programmers, especially recently Google services are blocked, the above IDE download will need to FQ, here is recommended a reliable VPN bar, support multi-device Mac, Windows, Android, iphone, etc., If you and the small partners together to buy the monthly only a few dollars, the circle of friends are in use, if you buy through the link below, you and my account will be increased by 10 yuan.
Ladder VPN
If you don't want to FQ anyway, here on GitHub you can download the above Android development tools directly
Androiddevtools
Google Android Official Tutorials
Android Training Course in Chinese
Android Basics
The above may be a more comprehensive system of training tutorials, for beginners may be some need to focus on something more confused, so tidy up the personal think the novice must master the knowledge points, the way will also accompany the corresponding feel good to explain the blog address.
Two minutes to fully understand the Android activity life cycle (graphics)!
Activity is most frequently used in actual development, and this must be understood
Android four basic components introduction and life cycle
The four components of Android must be known and often asked in the interview.
Basic use and optimization of the ListView
The ListView is the most commonly used in all controls and is more complex for beginners, and the use of various adapter, as well as the optimization of the ListView, must be mastered.
Standard intent for activity in Android systems
Intent has solved the communication of four components in Android, which is very useful, and this blog collects and collates the standard of the system intent
Android screen Adaptation
Introduce some of the basics of Android screen adaptation
A detailed description of the SQLite app in Android
SQLite in Android needs to be mastered, this blog is suitable for beginners
Android Fragment Full parsing
After 3.0, the newly added fragment must be mastered, and the current use of the scene is becoming more and more common.
Android Intermediate
The life cycle of Android apps
The life cycle of Android apps needs to be understood, and interviews are often asked.
Take you step-by-step insight into the view
View is most commonly used in UI development and must be understood in depth
Android Service Full parsing
Service as one of the four components of Android, plays a very important role in every application
Android Gson
At present, the more popular data format is JSON, this blog teaches you how to use the Google Gson library for JSON parsing
Android Layout optimization
The XML layout is often used in Android development, so the knowledge of layout optimization needs to be mastered.
Two ways to pass objects intent in Android (Serializable,parcelable)
Detailed information on how to transfer objects in intent in Android
Full parsing of the Android asynchronous message processing mechanism
Asynchronous operations are often used in Android development and must be understood to master
Android Asynctask Full parsing
Another way to work with Android asynchronously
Android Custom Loading
Early a little demo to teach you if you do an app for loading animations
Android Advanced
Android Gradle
Google official Android New build system, can easily manage dependencies, compile packaging, etc.
Android Performance Optimization
A series of performance tuning tutorials to get your code and apps up and flowing!
A complete open source project--9gag
An open source client that teaches you to quickly develop a good Android client using studio, Gradle, and some popular open source libraries
Organize your Android development resources
Self-organizing some of the Android development resources, including development, tools, design, etc., I believe it will be useful to you
Android Design
Before you develop an Android app, you need to understand the design specifications for the Android platform, a series of tutorials on Android design and Google's latest material design Chinese translation.
- Android Design
- Material Design
Some open source libraries that Android developers must know
When it comes to the open source Library, you have to mention GitHub, only to say that the most active open source community, do not know to quickly register an account to use, is definitely your fast technology to improve the weapon.
Volley
While app development is inevitable to interact with the server, volley is an open source web communication library that Google officially launches, making it easier and faster to communicate on the Web.
- Volley Full Parse
- Android Volley Sample
Activeandroid
Activeandroid is a lightweight ORM (Object Relation Mapping) framework that simply uses methods such as Save () and delete () to do additions and deletions.
- Activeandroid--android Lightweight ORM Framework
Retrofit
Retrofit is similar to the ORM concept in the Java World, where ORM transforms structured data into Java objects, and retrofit transforms the data returned by the rest API into Java objects for ease of operation. It also encapsulates the invocation of network code.
- Retrofit–java (Android) Rest Interface Encapsulation Class Library
Android-universal-image-loader
Android-universal-image-loader is a powerful open source image asynchronous loading library that is designed to provide a reusable instrument for asynchronous image loading, caching and display.
- Android-universal-image-loader
Android Open Source project subtotals
A very comprehensive GitHub open source project summary, no need to reinvent the wheel, enjoy the open source world
About Me
Non-technical transfer programming, Android developer, Google brain residue, love open source, share Android knowledge, technology, information
Weibo:googdev
Github:stormzhang
The path to Android learning