android development toolbox! Senior Android development takes you to the Framework, series

Key points in Tencent interviews and frequently asked technical points:

Data structure algorithm, tuning, View, SDK**, **animation audio and video, etc. and the framework you have used. The foundation of the first round is very important. After passing, the possibility of admission is relatively high!

The golden three and the silver four have arrived. Here I also share some free Java programmer interview topics and answers, and architecture video materials (collected at the end of the article). I hope that those in need can find a satisfactory one in the first wave of recruitment this year. Work smoothly!

Today this article mainly explains:

APK file decompilation

  • What is decompilation
  • How to prevent decompilation
  • Basic structure of APK file

The principle of APK reinforcement

  • APK reinforcement overall architecture
  • The basic process of APK packaging
  • The meaning of Dex files

AES encryption project combat

  • APK reinforcement project combat
  • APK unpacking technology combat

1. APK file decompilation

1. What is decompilation
  • Definition: The process of
    using a compiler to generate a target program from a source program written in a source language
2. How to decompile?

First understand the file structure of apk

2. Reinforcement plan ideas

A programmer’s story:

After working hard to find a partner, he was found to be a dominatrix after marriage. She slept on her stomach when she slept at night, which made the programmer unable to wash her feet. However, this programmer works very hard. In addition to going to work, he can also do some outsourcing and earn some extra money. So he thought of handing in the salary card, and put the extra money earned in his own small vault. Live a sex life since then

An encrypted story:

The purpose of protecting the core dex file is achieved by exposing the non-core dex file.

3. Basic principles

3.1 Apk packaging process

Packing is to add a protective shell on the basis of the original apk. If the dex file is modified, it needs to be repackaged, otherwise the apk cannot be installed. This requires us to learn in detail how to package the apk

3.2 What is a Dex file

The purpose of reinforcement is to protect the dex, directly speaking, it is to operate the dex file. You must know what the dex file is and whether you can directly use the knife

3.3 Dex file loading process

The packed file cannot be used directly. The dex file is encrypted, so we need to decrypt it. How to load the decrypted dex file?

3.4 How the APK file is produced

image.png

4. Reinforce the overall framework


So here comes the question:

  • How to achieve the encryption effect?
  • Why are there two series of dex?
  • How did the shell dex come from
  • How does shell dex protect source dex?
  • How to sign?
  • How to run new dex (how to unpack)?
4.1 Encryption process

4.2 How to sign APK files


4.3 How to run APK files (unpacking)

4.4 How to formulate certain classes in main dex
  • multiDexKeepFile: Manually add the class to be placed in Main.dex
com.umeng.analytics.Abb.class
  • multiDexKeepProguard: Use Proguard to manually add the classes to be placed in Main.dex
-keep public class com.tencent.bugly.**{*;}

to sum up

There are many algorithm knowledge points, and the topics of enterprise investigation are ever-changing. Facing the increasingly close "Golden Nine Silver Ten", I have prepared a set of relatively complete learning methods for everyone, hoping to help everyone as quickly as possible in the limited time. The evil complement algorithm of, through efficient learning to improve the pass rate of the algorithm module in the interview.

This set of learning materials has both text files and videos. It not only contains the key knowledge points, but also explains the relevant parts of the algorithm of the case. It can help you learn better and more comprehensively. The combination of the two will have a better learning effect. better.

Part of the information display:




With this set of learning materials, if you stick to the questions for a week, you will find that your algorithmic knowledge system is obviously improved, and you are closer to the major offers.

How to get information: like + follow + forward, then enter my [GitHub] , there are free ways to get it

D%E4%BC%9A%E8%BF%99%E4%BA%9B%EF%BC%9F%E5%A6%82%E4%BD%95%E9%9D%A2%E8%AF%95% E6%8B%BF%E9%AB%98%E8%96%AA%EF%BC%81.md), there are free ways to obtain it**

Guess you like

Origin blog.csdn.net/fanzhang_vip0723/article/details/112940902