2017 Latest Android Face questions
Hello everyone, tell us about your interview experience, as well as the face of the question before the first to say a few off-topic.
Contact Android has been 3 years, in the work of difficult problems are always on the Internet (csdn Daniel Blog, StackOverflow, etc.) search answers, you daniel big God always put their own experience to share out, help us those who need help, thus express heartfelt thanks! But now I think about it, it is time to put the problems encountered and share the solution, hoping to help people in need.
With the passage of time, many people say that the internet has become more and more difficult to do, because the era of burning money has passed, the rest is a strong foundation of large companies, unicorns have ceased to exist. This directly led to the decline of the Internet post, I test, it is true.
2017.05 months, I quit (at this time 3 years work experience, Shenzhen took office), began to test the water Android Market, to seek a suitable for their own, stable medium-sized companies. A lot of companies, interview opportunities are not as many as I imagined, the instant interview process smoothly, and did not get an offer (too many candidates). But taking this opportunity, I face the 10 companies, and now I met the face of the question, and provide some interview skills for the upcoming interview comrades.
OK, to enter the topic, please see the Android knowledge map.
Interview, nothing more than ask these questions (quite a lot of--!), hire advanced Android development will go deep to ask, and will ask an extension of two. Here I first put forward a few points, is the interviewer basic must ask questions, please be sure to understand!
- Basics – Four components (life cycle, usage scenarios, how to start)
- Java Fundamentals – Data structure, threading, MVC framework
- Communication – Network Connection (httpclient,httpurlconnetion), Socket
- Data Persistence –sqlite,sharedpreferences,contentprovider
- Performance optimization – Layout optimization, memory optimization, power optimization
- Security – Data encryption, code obfuscation, Webview/js calls, HTTPS
- ui– Animation
- Other –jni,aidl,handler,intent, etc.
- Open source framework –volley,gilde,rxjava and so on (resume that you will, used)
- Expand –android6.0/7.0/8.0 Features, Kotlin language, I/O conference
Rush to cast resumes, to catch the interview, rather than precipitate a two-day time, and then over the content. To safely get an offer, it is best to understand the principle of implementation and to know the use of the scene. Don't go back! To understand! The interviewer is tired of listening to these things all day, and it's best to say something about yourself.
Interview questions (fixed answers are not answered, you can find them)
The order is based on the memory row, no priority points, are the focus.
1.Activity Start-up process (do not answer life cycle)
http://blog.csdn.net/luoshengyang/article/details/6689748
2.Activity Start-up mode and usage scenarios
(1) Manifest settings, (2) startactivity flag
http://blog.csdn.net/CodeEmperor/article/details/50481726
Extension here: The difference between the stack (first in the last out) and the queue (first in first out)
two ways to start 3.Service
(1) StartService (), (2) Bindservice ()
Http://www.jianshu.com/p/2fb6eb14fdec
4.Broadcast Registration method and Difference
(1) static registration (Minifest), (2) Dynamic registration
Http://www.jianshu.com/p/ea5e233d9f43
Extended here: Under what circumstances dynamic registration is used
the difference between 5.HttpClient and HttpURLConnection
http://blog.csdn.net/guolin_blog/article/details/12452307
Extension: What kind of request is used in volley (2.3 before httpclient,2.3 httpurlconnection)
the difference between 6.http and HTTPS
http://blog.csdn.net/whatday/article/details/38147103
Extended here: How HTTPS is implemented
the difference between 7.http and HTTPS
http://blog.csdn.net/whatday/article/details/38147103
Extended here: How HTTPS is implemented
8. Handwriting algorithm (select bubble must Be)
http://www.jianshu.com/p/ae97c3ceea8d
9. Process KeepAlive (Undead process)
Http://www.jianshu.com/p/63aafe3c12af
Extension here: What is the priority of the process (as the following article says)
1190000006251859
10. Modalities for inter-process communication
(1) Aidl, (2) broadcast, (3) Messenger
aidl:http://www.jianshu.com/p/ae97c3ceea8d
messenger:http://blog.csdn.net/lmj623565791/article/details/47017485
Extended here: Brief introduction to Binder, http://blog.csdn.net/luoshengyang/article/details/6618363/
11. Load Large Image
PS: There are small companies (write fake, to cheat the past), directly to my project to see, let me say the principle of implementation.
The most let me have no words of an interview, just a point to ask my underwear are almost wearing, the poor to help them write code.
http://blog.csdn.net/lmj623565791/article/details/49300989
12. Level three cache (each big picture frame can pull up to this)
(1) Memory cache, (2) local cache, (3) network
Memory: http://blog.csdn.net/guolin_blog/article/details/9526203
Local: http://blog.csdn.net/guolin_blog/article/details/28863651
13.MVP Frame (must ask)
http://blog.csdn.net/lmj623565791/article/details/46596109
Extension: The handwriting MVP example, the difference between MVC and the advantage of MVP
14. Explain the context
http://blog.csdn.net/lmj623565791/article/details/40481055
15.JNI
Http://www.jianshu.com/p/aba734d5b5cd
Extension: Where JNI is used in the project, such as: Core logic, key, cryptographic logic
the difference between a 16.java virtual machine and a Dalvik virtual machine
Http://www.jianshu.com/p/923aebd31b65
17. What is the difference between a thread sleep and wait
http://blog.csdn.net/liuzhenwen/article/details/4202967
18.view,viewgroup Event Distribution
http://blog.csdn.net/guolin_blog/article/details/9097463
http://blog.csdn.net/guolin_blog/article/details/9153747
19. Save Activity Status
Onsaveinstancestate ()
http://blog.csdn.net/yuzhiboyi/article/details/7677026
20.WebView interaction with JS (which APIs are called)
http://blog.csdn.net/cappuccinolau/article/details/8262821/
21. Memory leak detection, memory performance optimization
http://blog.csdn.net/guolin_blog/article/details/42238627
This article has four articles, very detailed.
Extended here:
(1) The difference between memory overflow (OOM) and memory leaks (objects cannot be recycled).
(2) Causes of memory leaks
22. Layout optimization
http://blog.csdn.net/guolin_blog/article/details/43376527
23. Customizing View and animations
The following two explanations are very thorough, this part of the interviewer will not ask very deep, or give you an effect to let you talk about the principle.
(1) Http://www.gcssloop.com/customview/CustomViewIndex
(2) http://blog.csdn.net/yanbober/article/details/50577855
24. Design Patterns (singleton, factory, observer. function, use scene)
Generally said that they will be OK, do not just remember the name of a round mouth to say, or you feel better.
http://blog.csdn.net/jason0539/article/details/23297037/
Extend here: Double check is required to write the notation.
25.string,stringbuffer,stringbuilder Differences
http://blog.csdn.net/kingzone_2008/article/details/9220691
26. Open source Framework, why use, what is different from other
This question must be asked basically. He would ask what frame he wrote on his resume.
such as: Volley, the interviewer will ask me volley the principle of implementation, and okhttp and retrofit difference.
Open source Framework A lot of, I choose a few of the most companies will use (the framework is for business and performance, so not necessarily famous framework for someone to use)
Network Request: Volley,okhttp,retrofit
Async: Rxjava,asynctask
Image processing: Picasso,glide
Message Delivery: Eventbus
The above framework please find yourself, too much will not be posted out.
27.RecyclerView
This is funny. There is another colleague is looking for a job, the interviewer thinks he has not used Recyclerview direct pass off.
http://blog.csdn.net/lmj623565791/article/details/45059587
OK, click to stop.
Conclusion
What the interviewer is looking at is all about their personal (character, mood, weather, your face). These are just some of the points I think are important, of course, there are a lot of deep things are not 1:30 days can be mended, or to see their usual experience accumulation. Interview is not only technical, there are high-level, personnel, these are to see the individual play.
PS: If the interviewer said that there is anything else to ask, do not dig a hole for themselves, said today how he behaved, can not be admitted. To the company's team, the atmosphere to ask, as far as possible to show interest in the company.
such as: I would like to know whether the company regularly open technical meetings, the old staff will share some of their own experience and so on.
Life is not easy, if you have an interviewer (you will interview someone someday) see this article, please put down the shelf or prejudice, respect for each interviewer.
Finally, I list the following points to be noted in the interview.
- With a smile, courtesy, humility
- Wear a little decent, wearing a slipper GG 80%
- Be sure to bring your CV and pen
- Come say thank you, finish say thank you
- To learn to look at the interviewer's face, if the answer is not good do not continue to say
- Do not blow the project you have done before, there are more than boast B, do not
- Be cool, don't say a bunch of mouths, interviewers are annoying
Finally, I wish you a smooth interview, and find your favorite company soon.
In the future will be written some of the difficulties encountered in the project and a deep point of technical blog, please support a lot!
ANDROID2017 Latest questions (3-5 years experience personal interview experience)