+− THE DAILY DIFFdev & AI news
NEEDS REVIEW

Les développeurs Android ont dû désassembler une bibliothèque Pixel livrée

Un bogue de balayage de caractères larges dans les versions Pixel d'Android 17 de septembre a dû être diagnostiqué en désassemblant la bibliothèque C Bionic livrée, car les sources publiques AOSP se basent sur un instantané antérieur.

Want to see our stories first on Google? Add us to your preferred sources — it helps us grow.

Un bogue de balayage de caractères larges dans les versions Pixel d'Android 17 de septembre a dû être diagnostiqué en désassemblant la bibliothèque C Bionic livrée, car les sources publiques AOSP se basent sur un instantané antérieur. L'épisode relie la cadence de publication des sources d'Android au deuxième et quatrième trimestres aux revendications d'ingénierie d'IA internes de Google et au déploiement de Gemini 4 Argon le 13 octobre pour l'API payante et AI Ultra.

Lire l'édition écrite (anglais) ↗

Ce que cette vidéo couvre

  • Le problème Android NDK #2260 montre que wcscspn() et wcspbrk() de Bionic s'arrêtent sur des caractères >= U+0100 sur les versions Pixel d'Android 17 de septembre lorsque l'ensemble de rejet contient deux caractères ou plus < U+0100.
  • AOSP reste open source, avec des mises à jour des sources prévues pour les deuxième et quatrième trimestres de 2026; la branche publique android17-release de Bionic a été mise à jour pour la dernière fois le 28 mars 2026, en retard par rapport aux binaires Pixel de septembre.
  • Le responsable Bionic de Google a confirmé le bogue et a trouvé un test interne à wchar_test.cpp:1475 qui s'attendait à la mauvaise valeur de retour (2 au lieu de 3).
  • Gemini 4 Argon (gemini-4-argon) a atteint la disponibilité générale le 13 octobre pour l'API Gemini payante et les abonnés Google AI Ultra; les documents AI Studio et API excluent les niveaux Gratuit et Google AI Pro.
  • Le prix de lancement de l'API de 2 $ en entrée et 10 $ en sortie par million de jetons est valable jusqu'au 30 novembre 2026 et double à 4 $ en entrée et 20 $ en sortie à partir du 1er décembre 2026.
  • Lors de l'exécution d'optimisation ADK de 11 heures de Google, les responsables humains ont livré 2 des 6 optimisations proposées par Argon et en ont rejeté 4 lors de la revue de code.

Transcription traduite

Traduit de la narration originale en anglais. L'audio et les sous-titres disponibles sont contrôlés par YouTube.

Pourquoi un développeur Android a-t-il désassemblé une bibliothèque Pixel?

0:00 Android est open source, pourtant le code source public a des mois de retard sur le binaire d'un téléphone Pixel. Un développeur a dû désassembler une bibliothèque système livrée juste pour signaler un bogue d'émoji. Dans cette vidéo, pourquoi un émoji a-t-il cassé une bibliothèque C sur les téléphones Pixel? Pourquoi le code Android livré est-il manquant dans l'arborescence publique? Et qui reçoit réellement Gemini quatre Argon maintenant? Lorsqu'un responsable de Google a vérifié l'arborescence de sources privées pour ce bogue, il a trouvé quelque chose de pire qu'un test unitaire manquant.

0:26 Je vous montrerai l'échec exact avant le verdict. Nous sommes le mercredi quatorze octobre, et c'est The Daily Diff. Bionic est la bibliothèque C principale d'Android, la couche sur laquelle chaque application native repose pour la mémoire, les fichiers et le texte. Google publie Android via le projet Android Open Source, tout en livrant également des outils d'IA pour développeurs comme Gemini quatre Argon. Le bogue est apparu dans Visual Pinball sur Android. Après la mise à jour de septembre sur les téléphones Pixel sept et Pixel huit A,

0:51 les tables de flipper ne se chargeaient pas chaque fois qu'un commentaire de script contenait un émoji. Un visage souriant faisait planter le flipper. Le coupable se trouve dans deux fonctions de recherche de caractères larges de Bionic.

Comment un émoji a-t-il cassé la bibliothèque C d'Android?

1:01 Un programme leur fournit une chaîne et une liste de délimiteurs, tels qu'une nouvelle ligne, et demande combien de caractères apparaissent avant le premier délimiteur. Sur la version Android dix-sept de septembre, lorsque la liste de délimiteurs contient deux caractères ou plus inférieurs à l'hexadécimal cent, l'analyse s'arrête au premier caractère égal ou supérieur à l'hexadécimal cent. Cela bloque plus de un million cent mille points de code Unicode, y compris les émojis, les caractères cyrilliques et chinois.

1:24 Lorsqu'une bibliothèque open source tombe en panne, vous lisez normalement le dépôt. Le développeur francisdb a vérifié la branche publique Android dix-sept de juin et a trouvé une boucle propre qui fonctionnait très bien. Le binaire du téléphone exécutait un code différent. Le développeur a donc extrait la bibliothèque C du Pixel et désassemblé les instructions arm soixante-quatre. Pour accélérer les recherches multi-caractères, le binaire construit une table de consultation de deux cent cinquante-six octets sur la pile.

1:47 La boucle compare chaque caractère à l'hexadécimal cent et continue à balayer seulement tant que le caractère est inférieur. Tout caractère plus large sort de la boucle et signale une correspondance, ce qui fonctionne pour conserver les caractères et échoue pour les rejeter. Le responsable Bionic de Google a répondu dans les trois heures et a confirmé le bogue.

Pourquoi le code Android livré est-il manquant dans la source publique?

2:02 Il était sur le point de dire au journaliste de lire la source, jusqu'à ce qu'il voie que la branche publique manquait les modifications d'avril. Le projet Android Open Source reste open source. Selon la politique de Google de vingt vingt-six, alignée sur son modèle de branche stable, Google publie le code source d'Android deux fois par an, aux deuxième et quatrième trimestres. La branche publique Android dix-sept de Bionic se trouve toujours sur un instantané de mars vingt-huit. Les téléphones Pixel ont reçu la version trimestrielle en septembre, laissant les développeurs externes déboguer des binaires

2:29 dans un désassembleur jusqu'à la publication du quatrième trimestre. Pendant que les développeurs externes attendent les publications des sources,

Comment Google utilise-t-il Gemini 4 Argon dans ses propres dépôts?

2:33 chez Google, le code évolue plus rapidement avec l'IA. Google affirme que Gemini quatre Argon a aidé Chrome à démêler un dossier héritage de six millions de lignes dans la base de code de quarante millions de lignes de Chromium, transformant des mois en semaines. Les ingénieurs de Google Cloud ont également exécuté Argon pendant onze heures pendant la nuit sur leur Python Agent Development Kit, couvrant deux cent cinq mille lignes. Argon a proposé six optimisations sur trente-deux fichiers, réduisant les frais généraux de session de quarante pour cent.

2:59 Les responsables humains ont rejeté quatre de ces six propositions lors de la revue. Un cache risquait de renvoyer des données de session périmées après la récupération de mémoire, et la suppression des importations de haut niveau a cassé vingt-cinq tests internes de Google jusqu'à ce qu'ils soient réécrits comme chargeurs paresseux. Ce qui nous amène au modèle lui-même.

Qui obtient réellement Gemini 4 Argon maintenant, et à quel prix?

3:14 Lorsque Google a annoncé Gemini quatre Argon le trente septembre, je l'ai marqué NEEDS REVIEW car les développeurs réguliers ne pouvaient pas l'utiliser. Le treize octobre, Google a marqué le point d'accès gemini quatre argon comme généralement disponible. Même le déploiement présente un décalage de documentation. La page de DeepMind indique qu'Argon est disponible aujourd'hui pour les abonnés Google AI Pro et Ultra. Cliquez sur la documentation des prix de l'API, et une boîte d'avertissement indique qu'Argon n'est pas disponible sur le niveau Gratuit et sur Google AI Pro. Dans AI Studio et Antigravity, vous avez besoin d'AI Ultra ou d'une clé API payante.

3:45 Le prix de lancement de deux dollars par million de jetons d'entrée et dix dollars pour la sortie expire après novembre. Le premier décembre, le prix double pour atteindre quatre dollars en entrée et vingt en sortie. Au classement Artificial Analysis, Argon en haut des scores cinquante-trois, à égalité avec GPT six Astra et Claude Fable cinq point un, derrière Claude Opus cinq point cinq à cinquante-huit. Les tests API en direct affichent en moyenne quarante-quatre secondes de réflexion avant que le premier jeton de réponse n'arrive. Google a également montré Argon contrôlant un robot Boston Dynamics Spot

4:14 pour déposer des canettes dans une poubelle à pédale. Avant de bouger une jambe physique, Argon construit une simulation MuJoCo pour s'entraîner à l'équilibre sur trois jambes, guidé par une compétence humaine et des invites de vérificateur de caméra.

Qu'est-ce que le propre test unitaire de Google a affirmé?

4:25 Maintenant, pour ce test unitaire dans l'arborescence privée Bionic de Google. Trente-cinq minutes après avoir confirmé le bogue des émoticônes du Pixel, le responsable de Google a posté un facepalm. Bionic avait un test de caractères larges à la ligne quatorze soixante-quinze, et il affirmait la valeur de retour boguée deux au lieu de trois. Qu'un changement soit écrit par un humain en avril ou par un agent pendant la nuit, l'inspection du code source et les vrais tests le maintiennent honnête. Si vous préférez lire ceci plutôt que de m'entendre le dire, la différence arrive dans votre boîte de réception

4:49 chaque matin, gratuitement sur the daily diff point dev, lien ci-dessous.

Quel est le verdict sur la sortie à deux vitesses de Google?

4:52 Le verdict d'aujourd'hui est donc NEEDS REVIEW. Avec Gemini quatre Argon sur l'API payante, je le testerais sur des refactorisations limitées soutenues par une suite de tests, et je continuerais à pousser Google à publier le code source d'Android lorsque les binaires sont livrés. Et c'est la différence pour aujourd'hui. Je suis Niko d'Axrisi. Fusionnez de manière responsable.

Sources

  1. [BUG] bionic: wcscspn()/wcspbrk() treat every wchar_t >= 0x100 as a match (Android 17, CP3A.260905.009) · #2260android/ndk
  2. Android Open Source Project site updates — 2026 Changes to AOSP (Q2 and Q4 schedule)Android Open Source Project
  3. fix: avoid wcspbrk, broken for chars >= U+0100 on Android 17 bionic · PR #41vpinball/libwinevbs
  4. Gemini API Release Notes — October 13, 2026 (Gemini 4 Argon GA)Google AI for Developers
  5. Gemini Developer API Pricing — Gemini 4 ArgonGoogle AI for Developers
  6. Google AI plans in AI StudioGoogle AI for Developers
  7. Gemini 4 Argon — model overview and Chrome refactoring case studyGoogle DeepMind
  8. Optimizing a 200,000-line Python codebase overnight with Gemini 4 ArgonGoogle for Developers Blog
  9. Gemini 4 Argon for RoboticsGoogle for Developers Blog
  10. Gemini 4 Argon (High) Intelligence, Performance & Price AnalysisArtificial Analysis

Vidéos similaires