A summary of the knowledge points used in the MF project (personal project notes directory)

I. Introduction

This article sorts out the various knowledge points used in a project I have done, puts together some fragmentary knowledge in the Android development process, and summarizes the system.
This article is only for personal review and review, and it is also convenient to solve similar problems more conveniently in the future development process. After all, some knowledge points will be gradually forgotten if you don't use them, and a good memory is not as good as a bad pen.

2. Project description

This project is a recent project of our company (referred to as the MF project, the same below), specifically for the on-board APP vehicle setting module. I was responsible for the UE and UI code development of this module and the subsequent interface based on the jar package provided by the supplier. Integrated code writing, responsible for fixing bugs and some self-test work during the release process after the code is written, the test tool uses PCAN, because the company’s test helped us write a graphical test tool, so we It is especially convenient to test in the test process of simulating sending signals~ You don't need to look at the cumbersome requirements and various signal values ​​hhh in the requirements document, the test efficiency is still very high.

3. Description of project requirements

The project requirement description is directly put into this blog: MF requirement description
(directly attach the effect diagram after the code is realized for display, and the text description is supplemented if the picture cannot be described)

Four, the specific knowledge points used in the project

The project uses the MVVM architecture and uses the Databinding+ViewModel+LiveData+Repositroy model to build the architecture. I divided the code of the project into two parts: architecture and pages. Let's take a look at the knowledge points used in the two parts after combing. (This article only lists the various knowledge points catalog, the specific implementation is linked to other blogs written by myself, which is convenient for subsequent reading and searching. Some articles containing core codes will be set as private links for personal review only. You still need to pay attention to some information Safe hhh)

(1) Architecture

(1) Mvvm mode: Databinding and ViewModel+LiveData+Repository
Mvvm mode: Databinding and ViewModel+LiveData+Repository

(2) SharedPreferences

(3) Use of Entity class

(4)
Refer to the interface document in the Repository to call the classes in the jar package, eg: Manager class, MutableLiveData extends LiveData, setIntProperty, PropID, etc.

(5)
How to use get/set/callback in the interface document? (Refer to the document to analyze the specific implementation), where
get: MCU->SOC
set: SOC->MCU

(6)
Context use (including Application learning, getInstance method, etc.)

(7) Analysis of anonymous inner class mServiceConnection

(8)
About registerCallback() and unregisterCallback() methods

(2) Page

(1) Java generics
(2) Specific use of Databinding in interface classes
(3) Broadcast
(4) View related knowledge (such as decorView, View.xxx series of attributes, etc.)
(5) Fragment
(6) Use of custom View
(7) Control SwitchCompat and its specific properties analysis
(8) RadioGroup and RadioButton
RadiosGroup are called getChildCount () and getChildAt (i) methods in java
(9) FragmeLayout frame layout (replacement in Fragment)
( 10) Four specific Fragment analysis
(11) CheckBox control (in driving preference xml)
(12) SeekBar control (in vehicle setting xml)
(13) TabLayout custom layout (in vehicle setting xml)

Five, the specific project design process

The specific implementation process of the project and articles related to the code source code are put into another classification column: mf project source code , the
corresponding article is:
MF project specific implementation process and source code analysis (general catalog)
, specific code implementation is carried out under this article Step description, and link into various source codes (all completed and set as personal private blog).

Guess you like

Origin blog.csdn.net/ambitionLlll/article/details/113137106