Ubuntu20.04 Compilez le code source d'Android 10 et gravez le code source dans le guide de pixel3 pour éviter les fosses

environnement de laboratoire

  1. Ubuntu20.04
  2. pixel3

Téléchargez l'arborescence des sources Android

Pour télécharger le code source Android, vous pouvez choisir de télécharger la dernière version ou vous pouvez télécharger la branche spécifiée . Si vous pouvez utiliser l'Internet scientifique, il est recommandé de télécharger à partir de l'arborescence des sources de google. Sinon, il est recommandé d'utiliser le miroir Tsinghua: https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/ , le lien vers le tutoriel du miroir a été donné en détail, ici je ne les répéterai pas un par un

  1. Téléchargez l'outil repo:
// 下载repo工具
mkdir ~/bin
PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
  1. Après avoir installé Repo, configurez votre propre client pour accéder à la bibliothèque de codes: ici, vous devez créer un compte Google par vous-même
(1)创建一个文件夹用来存放源码
mkdir Pixel3
cd Pixel3
(2)使用google帐号和真实姓名去配置Git
git config --global user.name "Your Name"
git config --global user.email "[email protected]"
(3)运行repo init 获取最新版本代码或者指定分支
repo init -u https://android.googlesource.com/platform/manifest // 获取最新源码
repo init -u https://android.googlesource.com/platform/manifest -b android-10.0.0_r1// 指定分支
  1. Téléchargez l'arborescence des sources Android
repo sync

Installez la version du pilote du téléphone sur pixel3

  1. Sur le site officiel pour trouver le modèle de téléphone et la version du numéro de build du code source Android du pilote qui correspond à l'
    endroit où j'ai téléchargé le code source est android-10.0.0_r1, il s'agit donc du numéro de build QP1A.190711.019
    Insérez la description de l'image ici
    puis de conduire le site officiel vers trouver et télécharger les informations de pilote correspondantes Descendre
    Insérez la description de l'image ici

  2. Décompressez dans le répertoire racine du code source qui vient d'être téléchargé

  3. Entrez le code suivant dans la ligne de commande, puis appuyez sur Entrée pour lire l'accord, mais comme l'accord est trop long, vous pouvez appuyer sur ctrl + c pour interrompre, ici vous serez invité à entrer J'ACCEPTE, après l'entrée, vous peut extraire l'image

./extract-google_devices-blueline.sh
./extract-qcom-blueline.sh

Insérez la description de l'image ici

  1. Une fois l'extraction réussie, un répertoire du fournisseur sera généré dans le répertoire racine
    Insérez la description de l'image ici

Compiler le code source Android

Notez que la compilation du code source nécessite au moins 16 Go de mémoire, vous devez donc augmenter la partition d'échange. Pour connaître les étapes détaillées, veuillez consulter mon premier article de blog.

source build/envsetup.sh
lunch aosp_blueline-userdebug
make -j12

Android Studio importer le code source du système Android

  1. Une fois la compilation réussie, exécutez les commandes suivantes pour compiler le module de code source idegen et générer la construction de configuration AS (* ipr):
mmm development/tools/idegen/
development/tools/idegen/idegen.sh

Une fois terminé, vous verrez trois nouveaux fichiers dans le répertoire racine:
android.iml (utilisé pour enregistrer les modules, dépendances et versions sdk contenus dans le projet)
android.ipr (configuration spécifique du projet, code et informations de la bibliothèque dépendante) android.iws (informations de configuration personnelles)

  1. Changez l'autorisation android.iml android.ipr en 777
sudo chmod 777 android.iml
sudo chmod 777 android.ipr
  1. Ouvrez le studio Android, importez le projet existant, sélectionnez le fichier .ipr dans le répertoire racine

L'importation du code source dans Android Studio est trop lente

sudo vim /etc/sysctl.conf

Après avoir saisi le fichier, appuyez sur i pour accéder au mode d'édition

Ajouter à la fin du fichier

fs.inotify.max_user_watches = 524288

Après avoir saisi ce passage, appuyez sur Echap pour entrer en mode normal, puis appuyez sur: puis saisissez wq (signifie écrire et enregistrer)

Document efficace

sudo sysctl -p –system // 生效文件

Brossez le fichier image nouvellement compilé sur pixel3

  1. Connectez le pixel3 à l'ordinateur et entrez en mode bootloader
adb reboot bootloader
  1. Déverrouiller le téléphone
fastboot flashing unlock
  1. Passez en mode fastbootd, le document de référence est
    Insérez la description de l'image ici
// (1) 方法一:在bootloader模式下输入
fastboot reboot fastboot
// (2)方法二:返回Android系统,输入以下命令
adb reboot fastboot
  1. Entrez la commande suivante dans la ligne de commande
source ./build/envsetup.sh
  1. Entrez la commande suivante dans la ligne de commande
lunch aosp_blueline-userdebug
  1. Entrez le chemin du produit généré, entrez la commande suivante dans la ligne de commande
cd  $ANDROID_PRODUCT_OUT
  1. Gravez le fichier image compilé, entrez la commande suivante dans la ligne de commande
fastboot flashall -w 

Insérez la description de l'image ici

Évitez la fosse

  1. Lorsque vous choisissez un téléphone clignotant, n'achetez pas la version américaine pixel2, son chargeur de démarrage ne peut pas être déverrouillé. Si vous souhaitez flasher le téléphone pixel2, vous devez acheter la version européenne.
  2. Si vous devez flasher le fichier image nouvellement compilé 3 ou 4 sur le pixel3 avant d'importer l'image, sinon vous rencontrerez "Valeur trop grande pour le type de données défini" lors du clignotement du fichier image
  3. Assurez-vous de flasher la machine en mode fastbootd, sinon vous rencontrerez une erreur lors du clignotement sur le système: `` La partition doit être flashée dans fastbootd ''
  4. : Si le système d'origine du téléphone est Android 11, si vous gravez le fichier image d'Android 10.0 sur l'appareil, la gravure échouera. Il est recommandé d'aller d'abord sur le site officiel pour graver les images d'usine de la branche source compilée, puis de graver le fichier image d'Android 10.0
  5. Si "wait for any devices" apparaît après l'entrée de fastboot flashall -w, alors flashez le fichier image nouvellement compilé sur le pixel 3. Ces étapes doivent être exécutées sous les privilèges root.

Rendu final

Insérez la description de l'image ici

Lien de référence
https://blog.csdn.net/weixin_45767368/article/details/105962606?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-6&spm=1001.2101.3001.4242
https://developers.google.com/android /drivers#bluelineqp1a.190711.019
https://source.android.google.cn/devices/bootloader/fastbootd?hl=zh-cn
https://www.jianshu.com/p/1f4a2b18246a

Je suppose que tu aimes

Origine blog.csdn.net/weixin_38355732/article/details/114044577
conseillé
Classement