Table des matières
Avant-propos
1. Componentisation
(1) Concept :
(2) Origine :
(3) Avantages :
(4) Problèmes de prise en compte :
Changement de mode : comment faire en sorte que l'application bascule librement entre le débogage individuel et le débogage global
Configurer dans build.grade :
Conflit de ressources
Communication entre composants
Chaque module métier n'a besoin d'aucune dépendance avant de pouvoir passer par le routage, ce qui résout parfaitement le couplage entre les entreprises
Lorsque les composants sont seuls Lors de l'exécution, chaque module forme son propre APK, ce qui signifie qu'il y aura plusieurs applications. Évidemment, nous ne voulons pas écrire autant de code à plusieurs reprises, nous n'avons donc besoin de définir qu'une seule BaseApplication, et les autres applications héritent directement de cette BaseApplication. C'est OK, vous pouvez également définir des paramètres publics dans BaseApplication
2. Plug-in
(1) Présentation
(2 avantages)
(3 inconvénients)
Maison interface Web Questions et réponses frontales Résumé des questions d'entretien technique les plus chaudes sur Android

Résumé des questions d'entretien technique les plus chaudes sur Android

Jul 31, 2020 pm 02:01 PM
android 面试题

Recommandé : "Résumé des questions d'entretien Android 2020 [Collection] "

Avant-propos

De nombreuses personnes n'ont peut-être jamais travaillé dans une entreprise Internet auparavant, ou ont peut-être travaillé dans une entreprise Internet pendant une courte période de temps. Je me demande quelles questions sont posées lors des entretiens techniques. dans les sociétés Internet ? De plus, je n'étais peut-être pas complètement préparé. J'ai été déconcerté par les questions de l'intervieweur quelques tours après l'entretien et j'ai abouti à un échec désastreux.

Ce qui suit est un résumé des questions d'entretien Android que j'ai compilées. Pour des raisons d'espace, je ne liste les questions que dans la section technologique chaude. Le reste des questions d'entretien sera mis à jour plus tard. et restez informé. J'ai mis à jour mes points de connaissances, et il m'a également fallu beaucoup de temps pour compiler cette collection d'interviews !

1. Componentisation

(1) Concept :

Componentization : consiste à diviser une application en plusieurs modules, chaque module est un composant, ou il peut s'agir d'une bibliothèque de base. est fourni pour que les composants dépendent. Au cours du développement, certains composants peuvent être débogués séparément. Les composants n'ont pas besoin de dépendre les uns des autres mais peuvent s'appeler les uns les autres. Une fois finalement publiés, tous les composants sont regroupés dans un apk sous la forme d'une bibliothèque. par la dépendance principale du projet APP.

(2) Origine :

  1. Les versions de l'APP sont itératives, de nouvelles fonctions sont constamment ajoutées, le métier devient complexe et les coûts de maintenance sont élevés
  2. Le couplage métier est élevé et le code est gonflé, il est difficile pour plusieurs personnes de collaborer et de développer au sein de l'équipe
  3. Le code de compilation Android est bloqué, et le couplage de code dans un seul projet est sérieux. Modifier un point nécessite une recompilation et. l'emballage, ce qui prend du temps et demande beaucoup de travail.
  4. Pratique pour les tests unitaires, vous pouvez modifier un module métier seul sans vous concentrer sur les autres modules.

(3) Avantages :

  1. La composantisation sépare les modules communs et les gère uniformément pour améliorer la réutilisation et diviser la page en composants avec une granularité plus petite. Le composant contient l'implémentation de l'interface utilisateur, et peut également inclure une couche de données et une couche logique
  2. Chaque composant peut être compilé indépendamment, accélérant la compilation, et empaqueté indépendamment.
  3. Les modifications au sein de chaque projet n'affecteront pas les autres projets.
  4. Les projets de bibliothèque d'entreprise peuvent être rapidement séparés et intégrés à d'autres applications.
  5. Les modules métier avec des itérations fréquentes adoptent une approche par composants. La recherche et le développement des secteurs d'activité ne peuvent pas interférer les uns avec les autres, améliorer l'efficacité de la collaboration, contrôler la qualité des produits et améliorer la stabilité.
  6. Développement parallèle, les membres de l'équipe se concentrent uniquement sur de petits modules développés par eux-mêmes, réduisant ainsi les couplages et facilitant la maintenance ultérieure.

(4) Problèmes de prise en compte :

Changement de mode : comment faire en sorte que l'application bascule librement entre le débogage individuel et le débogage global

Modules pour chaque entreprise après la composantisation peut être une application distincte (isModuleRun=false). Lors de la publication du package, chaque module métier est utilisé comme une dépendance de bibliothèque. Ceci est entièrement contrôlé par une variable dans le projet racine gradle.properties, isModuleRun=true. Le statut isModuleRun est différent, et l'application de chargement et AndroidManifest sont différents pour distinguer s'il s'agit d'un APK indépendant ou d'une bibliothèque.

Configurer dans build.grade :

Conflit de ressources

Lorsque nous créons plusieurs modules, comment résoudre les mêmes conflits de ressources dans le fichier la fusion des noms. Les noms en double des fichiers de ressources du module métier et du module de base provoqueront des conflits :

Chaque module a app_name, dans la construction de chaque composant. pour vérifier de force le préfixe du nom de ressource dans gradle. Corrigez le préfixe de ressource de chaque composant. Cependant, la valeur resourcePrefix ne peut limiter que les ressources en XML et ne peut pas limiter les ressources d'image. Comment référencer certaines bibliothèques et classes d'outils communes entre plusieurs modules

Communication entre composants

Après la composantisation, les modules sont isolés les uns des autres, comment effectuer des sauts et des méthodes d'interface utilisateur Pour appeler, vous pouvez utiliser le routage des frameworks tels que Alibaba ARouter ou WMRouter de Meituan

Chaque module métier n'a besoin d'aucune dépendance avant de pouvoir passer par le routage, ce qui résout parfaitement le couplage entre les entreprises

Nous le savons. les composants sont liés, alors comment obtenir les paramètres transmis par d'autres modules lors du débogage seul

Application

Lorsque les composants sont seuls Lors de l'exécution, chaque module forme son propre APK, ce qui signifie qu'il y aura plusieurs applications. Évidemment, nous ne voulons pas écrire autant de code à plusieurs reprises, nous n'avons donc besoin de définir qu'une seule BaseApplication, et les autres applications héritent directement de cette BaseApplication. C'est OK, vous pouvez également définir des paramètres publics dans BaseApplication
.

2. Plug-in

(1) Présentation

En ce qui concerne le plug-in, nous devons mentionner le problème que le nombre de méthodes dépasse 65535. Nous pouvons le résoudre. grâce à la sous-traitance Dex, et en même temps cela peut être résolu en utilisant le développement de plug-ins. Le concept du plug-in est que l'application hôte charge et exécute l'application plug-in.

(2 avantages)

Dans un grand projet, afin d'avoir une division claire du travail, différentes équipes sont souvent responsables de différentes applications plug-in, de sorte que la division du travail soit plus clair. Chaque module est encapsulé dans différents APK de plug-in et différents modules peuvent être compilés séparément, ce qui améliore l'efficacité du développement. Résolution du problème ci-dessus du nombre de méthodes dépassant la limite. Les bugs en ligne peuvent être résolus en lançant de nouveaux plug-ins pour obtenir un effet « hot fix ». Réduction de la taille de l'APK hôte.

(3 inconvénients)

Les applications développées sous forme de plug-ins ne peuvent pas être lancées sur Google Play, ce qui signifie qu'il n'y a pas de marché à l'étranger.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Un nouveau rapport fournit une évaluation accablante des rumeurs de mise à niveau des appareils photo des Samsung Galaxy S25, Galaxy S25 Plus et Galaxy S25 Ultra Un nouveau rapport fournit une évaluation accablante des rumeurs de mise à niveau des appareils photo des Samsung Galaxy S25, Galaxy S25 Plus et Galaxy S25 Ultra Sep 12, 2024 pm 12:23 PM

Ces derniers jours, Ice Universe n'a cessé de révéler des détails sur le Galaxy S25 Ultra, qui est largement considéré comme le prochain smartphone phare de Samsung. Entre autres choses, le fuyard a affirmé que Samsung prévoyait d'apporter une seule mise à niveau de l'appareil photo.

Le Samsung Galaxy S25 Ultra fuit dans les premières images de rendu avec des rumeurs de modifications de conception révélées Le Samsung Galaxy S25 Ultra fuit dans les premières images de rendu avec des rumeurs de modifications de conception révélées Sep 11, 2024 am 06:37 AM

OnLeaks s'est désormais associé à Android Headlines pour offrir un premier aperçu du Galaxy S25 Ultra, quelques jours après une tentative infructueuse de générer plus de 4 000 $ auprès de ses abonnés X (anciennement Twitter). Pour le contexte, les images de rendu intégrées ci-dessous h

IFA2024 | Le NXTPAPER 14 de TCL n'égalera pas la Galaxy Tab S10 Ultra en termes de performances, mais il lui correspond presque en taille IFA2024 | Le NXTPAPER 14 de TCL n'égalera pas la Galaxy Tab S10 Ultra en termes de performances, mais il lui correspond presque en taille Sep 07, 2024 am 06:35 AM

En plus d'annoncer deux nouveaux smartphones, TCL a également annoncé une nouvelle tablette Android appelée NXTPAPER 14, et sa taille d'écran massive est l'un de ses arguments de vente. Le NXTPAPER 14 est doté de la version 3.0 de la marque emblématique de panneaux LCD mats de TCL.

Un nouveau rapport fournit une évaluation accablante des rumeurs de mise à niveau des appareils photo des Samsung Galaxy S25, Galaxy S25 Plus et Galaxy S25 Ultra Un nouveau rapport fournit une évaluation accablante des rumeurs de mise à niveau des appareils photo des Samsung Galaxy S25, Galaxy S25 Plus et Galaxy S25 Ultra Sep 12, 2024 pm 12:22 PM

Ces derniers jours, Ice Universe n'a cessé de révéler des détails sur le Galaxy S25 Ultra, qui est largement considéré comme le prochain smartphone phare de Samsung. Entre autres choses, le fuyard a affirmé que Samsung prévoyait d'apporter une seule mise à niveau de l'appareil photo.

Vivo Y300 Pro contient une batterie de 6 500 mAh dans un boîtier mince de 7,69 mm Vivo Y300 Pro contient une batterie de 6 500 mAh dans un boîtier mince de 7,69 mm Sep 07, 2024 am 06:39 AM

Le Vivo Y300 Pro vient d'être entièrement dévoilé et c'est l'un des téléphones Android de milieu de gamme les plus fins avec une grande batterie. Pour être exact, le smartphone ne fait que 7,69 mm d'épaisseur mais dispose d'une batterie de 6 500 mAh. C'est la même capacité que le lancement récent

Le Motorola Razr 50s se présente comme un nouveau budget pliable possible lors d'une fuite précoce Le Motorola Razr 50s se présente comme un nouveau budget pliable possible lors d'une fuite précoce Sep 07, 2024 am 09:35 AM

Motorola a lancé d'innombrables appareils cette année, même si seuls deux d'entre eux sont pliables. Pour le contexte, alors que la plupart des pays du monde ont reçu la paire sous le nom de Razr 50 et Razr 50 Ultra, Motorola les propose en Amérique du Nord sous le nom de Razr 2024 et Razr 2.

Xiaomi Redmi Note 14 Pro Plus arrive en tant que premier smartphone Qualcomm Snapdragon 7s Gen 3 avec caméra Light Hunter 800 Xiaomi Redmi Note 14 Pro Plus arrive en tant que premier smartphone Qualcomm Snapdragon 7s Gen 3 avec caméra Light Hunter 800 Sep 27, 2024 am 06:23 AM

Le Redmi Note 14 Pro Plus est désormais officiel en tant que successeur direct du Redmi Note 13 Pro Plus de l'année dernière (375 $ sur Amazon). Comme prévu, le Redmi Note 14 Pro Plus est en tête de la série Redmi Note 14 aux côtés du Redmi Note 14 et du Redmi Note 14 Pro. Li

Le Samsung Galaxy S24 FE est annoncé pour un lancement moins cher que prévu en quatre couleurs et deux options de mémoire Le Samsung Galaxy S24 FE est annoncé pour un lancement moins cher que prévu en quatre couleurs et deux options de mémoire Sep 12, 2024 pm 09:21 PM

Samsung n'a pas encore donné d'indications sur la date à laquelle il mettrait à jour sa série de smartphones Fan Edition (FE). Dans l’état actuel des choses, le Galaxy S23 FE reste l’édition la plus récente de la société, ayant été présentée début octobre 2023. Cependant, de nombreux

See all articles