Je voudrais savoir ce qui « est vraiment applications tierces dans Android.Alors que je faisais référence au développement Android , il est dit que la couche dapplication se compose de:
- Applications natives
- Applications tierces
- Applications de développement
Je sais que les applications tierces sont celles qui ne sont pas développées par la première partie (fournisseur de lexploitation système) comme mentionné dans les applications tierces . Mais je pense quen ce qui concerne les applications tierces Android et les applications de développement, ce nest pas le cas? Quelquun pourrait-il maider .
Commentaires
- Honnêtement, je ne pourrais pas ' comprendre la séparation entre les applications natives, tierces applications et applications (toutes sont des applications de mon dictionnaire). Comme il a été cité dans le livre (auquel nous ne pourrions ' avoir accès que si nous l’achetons), cela explique-t-il également la différence entre ceux-ci, ou ne fait-il que mentionner cela? Si tel est le cas, pourriez-vous également le citer et lajouter à la question?
- @AndrewT.: Oh désolé, cétait vraiment des applications de développement et non des applications comme jai édité la publication.Pourriez-vous dire si les applications tierces diffèrent des applications de développement. Comme la réponse indiquée par Izzy, les deux devraient être identiques car les deux ne sont pas développés par le système dexploitation ni le fabricant .
- Je suppose que dans ce contexte, " applications de développement " signifie des applications qui ne sont installées à partir daucun marché " " – mais celles que vous écrivez vous-même et que vous testez via les frameworks de développement correspondants. Dans le contexte des " signatures " (voir ma réponse ci-dessous): AFAIK ces applications sont signées avec " clés de développement ", donc elles ont à nouveau une sorte de " signature spéciale ". Je dois cependant approfondir cette question pour faire la différence exacte avec le point de vue dun utilisateur '.
Réponse
Version courte
Toutes les applications autres que " OS et applications du fabricant " signifie " applications tierces ".
TL; DR
Les applications tierces sont celles fournies par un, hrm, tiers. Bien que les termes suivants soient inexistants, vous pouvez le visualiser comme suit: la première partie est celle qui fournit le système dexploitation (AOSP / Google), la seconde partie le fabricant (ajoutant ses propres applications).
En gros, ceci peut être lu comme suit: Tout ce qui n’est pas pré-installé. Voici ce que le terme " tiers " est normalement utilisé pour 1 .
Contexte technique
Vous trouverez des informations techniques sur le système dautorisation dAndroid. Si vous parcourez les pages associées sur les développeurs Android ou consultez mes autorisations dapplication expliquées , pour certains autorisations que vous rencontrerez lexpression " ne pas utiliser par des applications tierces " (ou similaire). Comment le système décide-t-il de ce qui fait une " application tierce "? Il examine sa signature et la compare aux signatures du système dexploitation et des fabricants. Si la signature de lapplication ne correspond à aucune des deux, elle « sa " application tierce ".
" Applications de développement "
Dans votre question, lobjectif était de décider entre " tiers " et " développeur " applications. Fondamentalement, dans la pratique, les applications de développement sont plutôt un " sous-groupe " de " tiers les applications de fête ". Comme lindique la page développeur correspondante , pour faciliter le débogage dune application pendant le développement 3 , elle peut être signée " en mode débogage ":
Vous pouvez signer une application en débogage ou en version mode. Vous signez votre application en mode débogage pendant le développement et en mode version lorsque vous êtes prêt à distribuer votre application. Le SDK Android génère un certificat pour signer les applications en mode débogage. Pour signer des applications en mode version, vous devez générer votre propre certificat.
[…]
Vous pouvez exécuter et déboguer une application connectée en mode débogage sur lémulateur et sur les appareils connectés à votre équipe de développement via USB, mais vous ne pouvez pas distribuer une application connectée mode de débogage.
Ainsi, les " applications de développement " peuvent être informé en utilisant un " certificat de débogage " connu. Comme lindique la source citée, cela ne doit pas être utilisé avec les " applications publiées " (par exemple, un développeur ne doit publier aucune application signée way) 2 .
Lectures complémentaires
- Vérification de la signature de lapplication: comment ça marche, Comment le désactiver avec Xposed et pourquoi vous ne devriez pas
- La vulnérabilité de faux identifiant Android permet à des logiciels malveillants de se faire passer pour des applications de confiance ( décrit un bogue exploité pour contourner la protection des signatures, permettant à toute application de se présenter comme " signé par le système dexploitation ou le fabricant ", ce qui a été corrigé par exemple avec Kitkat)
- Mécanisme de signature Android (décrit la différence entre le " mécanisme de signature ROM " et " Mécanisme de signature dAPK tiers ")
- Signature numérique (présentation générale de ce quest une signature numérique et de son fonctionnement)
1: bien que techniquement cela ne soit pas tout à fait correct (exemple: dans ce contexte, comment sappellerait une application que vous avez installée manuellement, quand elle signé avec la même clé que la ROM elle-même – cest-à-dire quelle provenait du fabricant?)
2: Ceci est pour des raisons de sécurité. Les applications peuvent accéder aux ressources dautres applications en utilisant la même signature – un fait utilisé par exemple par les " addons " pour des applications spécifiques écrites par le même développeur (comme le source déjà nommée , par exemple: Android permet aux applications signées par le même certificat de sexécuter dans le même processus, si le applications le demande, afin que le système les traite comme une seule application. Et: Android fournit une application des autorisations basée sur la signature, de sorte quune application puisse exposer des fonctionnalités à une autre application qui est signée avec un certificat spécifié. En signant plusieurs applications avec le même certificat et en utilisant des vérifications dautorisations basées sur les signatures, vos applications peuvent partager du code et des données de manière sécurisée ). En utilisant " votre propre " protège " votre application " contre laccès par " autre déve lopers « apps ".
3: AFAIK, vous ne pouvez pas installer une " application non signée ", il est donc indispensable de la signer. Lorsque " signe " une application, il faut généralement fournir deux mots de passe (un pour le keystore contenant vos signatures, et un pour la signature lui-même). En utilisant la signature en " mode de débogage ", cela peut être évité, car cela utilise une signature interne du SDK avec un mot de passe connu du développeur outils. Cela rend le débogage beaucoup plus facile, car vous navez pas à taper les deux mots de passe encore et encore pendant la " compiler ›tester› compiler ›tester à nouveau› .. " processus.
Commentaires
- : Que ' est une bonne réponse élaborée, mais pourriez-vous dire sil est nécessaire de signer une application en mode débogage .
- Comme décrit par ma réponse (à nouveau mise à jour): " faciliter le débogage dune application pendant le développement ". Je ' Je vais inclure un peu de contexte à ce sujet avec " encore une autre mise à jour ". Après cela, laissez ' nettoyer nos commentaires (suppression celles obsolètes par mes mises à jour de la réponse), daccord?;)
- : Daccord, mais pouvez-vous me dire ce que signifie réellement la signature dune application. qui la vraiment développé (que ce soit ' s OS, fabricant) ou est-ce que ça veut dire autre chose?
- Ce ' va un peu plus loin dans la partie technique. Vous souhaiterez peut-être vous référer à Wikipedia pour cela. En gros, cela signifie qui a signé lapplication, qui est généralement le développeur.Comme pour un papier signé par une signature (manuscrite), une signature numérique démontre lauthenticité des données signées (ici le
.apk
).