Three years of Android development angered the HR of a large factory, angrily swiped the 1549 page test questions and landed at the University of Science and Technology of China

insert image description here

Recently, a reader contacted me and told me about a very angry thing he encountered in an interview recently. Why is it convenient to call Xiaohua.

Xiaohua is currently an Android developer for three years, and he has been looking for a job since last month. Because the environment this year is not good, he encountered obstacles everywhere during the interview. But it didn't take long for me to be discouraged, and I started the interview and analysis and summary again.

But on the 15th, there was a quarrel with an HR of a large factory. The reason was that the HR of a large factory said, "Now the programmers of the second book can't be interviewed. If you can make an appointment for an interview, you are considered a high-spirited person."

To be honest, I couldn't believe that there is such an HR now, it shouldn't be, although I have seen it in the video before, I always thought it was a plot. Later, I asked a lot of people about HR topics, and they all gave some bad comments. In general,
HR used to beg us for an interview, but now it’s the other way around, and the wording of many hrs is not very good. Of course, there should not be many such people, and I hope that you will not meet them during the interview.

Xiaohua seized the tail of June and successfully passed the interview at HKUST. He also said that although it is not as easy to find a job now as it used to be, but you have to prepare for the interview in advance, and there is no problem in finding a job. In particular, he advises programmers like him who haven’t come out for an interview for a long time to prepare for the interview again. The previous interview is different from now .

This is indeed the case. Many friends who have not interviewed for a year may encounter this problem when they have just left the job interview. Many companies focus on different technologies or have changed.

In order to save everyone the time of collecting information, I will share with you a recently compiled interview question of Dachang

Finally, there are detailed explanations of the interview questions, and those that save time can be directly pulled to the bottom

quick worker

one side
  • The principle of viewBinding

  • How to optimize Recycleview sliding

    • cache design

      • The difference between the first level cache and the second level cache

      • Principle of Layout Manager

  • draw

    • onMeasure describe

    • describe onDraw

    • Will invalidate call onDraw?

  • event distribution

    • who dispatched the event
  • fragment

    • Destroy and restore

    • Communication with Activity

  • Activity

    • Activity life cycle

    • Destroy and restore

  • Internationalization plugin

  • hashmap

    • 2^n reasons (there are multiple reasons)

    • expansion

  • 22 reverse linked list

two sides
  • Coroutine principle

  • rxjava principle

  • leakcanary

    • How to Analyze Citation Chains
  • Thread Pool

  • Given a bunch of data, how do you draw a curve?

  • event distribution

  • chain of responsibility model

  • car refueling problem

Three sides
  • Delete duplicate nodes of linked list when ordered or unordered

    • delete all

    • keep one

  • How to realize the full-screen sliding effect of Kuaishou and Douyin

  • How to enable operations to understand community articles

  • Difficulties in the project (ask very detailed) For example, have you encountered any difficulties?

meituan

one side
  • Thread pool principle, several parameters

    • What is the type of blocking queue in the thread pool?
  • Design Patterns

    • The difference between state pattern and strategy pattern
  • The difference between sleep and wait

  • android serialization

    • Parcelable与Serializable
  • Handler

  • Hashmap

  • deep copy vs shallow copy

    • How to implement deep copy
  • sync和Reenterlock

    • Encountered the exception difference
  • Reentrant locks and non-reentrant locks

    • funA,funB,funC,funD
  • The difference between postInvalidate and Invalidate

    • requestLayout
  • Merge of two sorted lists

  • anr classification and principle

two sides
  • Basically all questions

Alipay

one side
  • project

  • viewmodel principle

  • What jetpack stuff did you use?

  • Why livedata has life cycle awareness

two sides
  • How does shareperference ensure thread safety,

    • Why is it not process safe

    • How to achieve process safety

  • How does viewmodel solve the memory leak problem? Can it be solved?

  • The difference between mmkv shared memory and binder

  • magic ocr project

  • Have you ever done multithreaded development?

  • How does room implement orm

  • Are kotlin and java products the same?

  • The difference between various image formats

  • How to ensure the synchronization of memory and files

  • Open a thread to commit, does the commit not need to be locked?

  • bitmap

    • How to determine that the bitmap is reused

    • The memory size occupied by a picture

Here is the byte script:

one side
  • MVC,MMVM,MVP

    • How MMVM solves the problems in MVP
  • memory leak

    • Several situations of memory leaks

    • LeakCancary analyzes the principle of memory leaks

  • Handwritten singleton mode and analysis

  • algorithm

    • Find the sum of two elements in two arrays is equal to a certain value
two sides
  • activity

    • onSaveInstance
  • service

    • Life cycle of StartService and BindService
  • Find the square root of a floating point number

  • The principle of Binder

  • Design Patterns

    • factory pattern

      • Abstract factory pattern and common factory pattern
    • builder mode

  • There are several startup modes

  • Shared memory principle

    • Can java implement shared memory?
  • The four dispatchers and differences of kotlin coroutines

Three sides
  • The relationship between window, decorview, and ViewRootImpl
    The interviewer wants you to answer how window and windowManager are connected. viewRootImpl is the link between window and decorview

  • Inter-process communication method

  • Usage of AIDL

    • Usage and principle
  • event distribution

    • Where is onIntercept used?

    • Generation of the bottom layer of event distribution

  • Usage of RecycleView

    • Various Manager functions inside
  • wake lock: keep the screen always on

  • How the Activity is restricted to below the status bar and navigation bar

  • canvas

    • The role of save and restore of canvas

    • What is the function of the density of the canvas

  • vsync

    • How vsync is generated
  • How to implement asynchrony in android

  • What happens to memory leaks in android

  • How to get the width and height of the view

  • Floating window

    • How to implement a floating window

    • A floating window is suspended on the top layer, covering the startup icon of the underlying app. If the event startup icon receives a click event

  • Permission changes before and after Android M

  • ContentProvider

    • use

    • How to find the contentProvider's

  • The difference between map and flatmap in RxJava

  • view drawing

    • How the viewgroup is refreshed

    • What are the roles of onMeasure, onlayout, and onDraw?

    • Can you layout yourself during onLayout?

  • AndroidManifest

    • The difference between and
      One is the system authority, the other is the user-defined authority
four sides
  • two algorithms

    • shuffle problem

    • catch rainwater

  • two way design

    • object-oriented principles

    • Use code to describe the project that you think has the most sense of design

The full version of the document has been organized and packaged, partners who need it can scan the QR code below + v for private chat~

↓↓↓【Preview】↓↓↓

img

Guess you like

Origin blog.csdn.net/Android23333/article/details/131440856