+− THE DAILY DIFFdev & AI news
NEEDS REVIEW

Kinailangang i-disassemble ng mga Android developer ang naipadala nang library ng Pixel

Isang bug sa pag-scan ng malawak na character sa Setyembre Android 17 Pixel builds ang kinailangang i-diagnose sa pamamagitan ng pag-disassemble ng naipadala nang Bionic C library dahil ang mga pampublikong AOSP source ay nasa mas naunang snapshot.

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

Isang bug sa pag-scan ng malawak na character sa Setyembre Android 17 Pixel builds ang kinailangang i-diagnose sa pamamagitan ng pag-disassemble ng naipadala nang Bionic C library dahil ang mga pampublikong AOSP source ay nasa mas naunang snapshot. Ikinokonekta ng insidenteng ito ang paglalabas ng source code ng Android sa Q2/Q4 sa mga claim ng Google sa internal AI engineering at ang paglulunsad ng Gemini 4 Argon noong Oktubre 13 para sa bayad na API at AI Ultra.

Basahin ang nakasulat na edisyon (English) ↗

Ang sakop ng video na ito

  • Ipinapakita ng Android NDK issue #2260 na ang wcscspn() at wcspbrk() ng Bionic ay humihinto sa mga character na >= U+0100 sa Setyembre Android 17 Pixel builds kapag ang reject set ay may dalawa o higit pang character na < U+0100.
  • Ang AOSP ay nananatiling open source, na may naka-iskedyul na paglabas ng source code para sa Q2 at Q4 sa 2026; ang pampublikong android17-release Bionic branch ay huling kinuha noong Marso 28, 2026, na nahuhuli sa mga September Pixel binaries.
  • Kinumpirma ng Bionic maintainer ng Google ang bug at nakahanap ng isang internal test sa wchar_test.cpp:1475 na umaasa sa maling return value (2 sa halip na 3).
  • Ang Gemini 4 Argon (gemini-4-argon) ay naging available sa publiko noong Oktubre 13 para sa bayad na Gemini API at mga subscriber ng Google AI Ultra; ang AI Studio at API docs ay hindi kasama ang Free at Google AI Pro tiers.
  • Ang panimulang presyo ng API na $2 input at $10 output bawat 1M token ay tatakbo hanggang Nobyembre 30, 2026 at magdodoble sa $4 input at $20 output simula Disyembre 1, 2026.
  • Sa 11-oras na magdamag na ADK optimization run ng Google, ang mga human maintainer ay naglabas ng 2 sa 6 na iminungkahing optimizations ng Argon at tinanggihan ang 4 sa panahon ng code review.

Isinaling transcript

Isinalin mula sa orihinal na salaysay sa English. Ang available na audio at mga caption ay kinokontrol ng YouTube.

Bakit kailangang i-disassemble ng isang Android developer ang isang Pixel library?

0:00 Ang Android ay open source, ngunit ang pampublikong source code ay ilang buwan nang huli sa binary sa isang Pixel phone. Kinailangan ng isang developer na i-disassemble ang isang naipadala nang system library para lang mag-report ng isang emoji bug. Sa video na ito, bakit sinira ng isang emoji ang isang C library sa mga Pixel phone? Bakit nawawala ang naipadala nang Android code mula sa pampublikong tree? At sino ang talagang nakakakuha ng Gemini four Argon ngayon? Nang tingnan ng isang Google maintainer ang pribadong source tree para sa bug na iyon, nakita niya ang mas masahol pa sa isang nawawalang unit test.

0:26 Ipapakita ko sa iyo ang eksaktong pagkabigo bago ang hatol. Miyerkules, Oktubre katorse, at ito ang The Daily Diff. Ang Bionic ay ang core C library ng Android, ang layer na inaasahan ng bawat native app para sa memorya, mga file, at teksto. Inilalathala ng Google ang Android sa pamamagitan ng Android Open Source Project, habang naglalabas din ng mga tool ng AI ng developer tulad ng Gemini four Argon. Ang bug ay lumitaw sa Visual Pinball sa Android. Pagkatapos ng update noong Setyembre sa Pixel seven at Pixel eight a phones,

0:51 hindi naglo-load ang mga pinball table tuwing ang isang script comment ay may emoji. Isang smiley face ang nag-crash sa pinball machine. Ang salarin ay nasa dalawang wide character search functions sa Bionic.

Paano sinira ng isang emoji ang C library ng Android?

1:01 Nagbibigay sa kanila ang isang programa ng isang string at isang listahan ng mga delimiter, tulad ng isang newline, at nagtatanong kung gaano karaming character ang lumalabas bago ang una delimiter. Sa Android seventeen ng Setyembre build, kapag ang listahan ng delimiter ay may dalawa o higit pang character sa ibaba ng hex one hundred, humihinto ang scan sa unang character sa o higit sa hex one hundred. Nasira nito ang mahigit isang punto isang milyong Unicode code points, kabilang ang emoji, Cyrillic, at Chinese characters.

1:24 Kapag nasira ang isang open source library, karaniwan mong binabasa ang repository. Tiningnan ng developer na si francisdb ang pampublikong Android seventeen branch ng Hunyo at nakahanap ng isang malinis na loop na gumana nang maayos. Ang binary ng telepono ay nagpapatakbo ng ibang code. Kaya kinuha ng developer ang C library mula sa Pixel at na-disassemble ang arm sixty four instructions. Upang mapabilis ang paghahanap ng multi character, bumubuo ang binary ng dalawang daan at limampu't anim byte lookup table sa stack.

1:47 Kinukumpara ng loop ang bawat character laban sa hex one hundred at patuloy na nag-scan lamang habang ang character ay mas mababa. Anumang mas malawak na character ay lumalabas sa loop at nagre-report ng tugma, na gumagana para sa pagpapanatili ng mga character at nabigo kapag tinatanggihan ang mga ito. Ang Bionic maintainer ng Google ay sumagot sa loob ng tatlong oras at kinumpirma ang bug. Malapit na niyang sabihin sa reporter na basahin ang source,

Bakit nawawala ang naipadala nang Android code mula sa pampublikong source?

2:02 hanggang sa nakita niya na kulang ang pampublikong branch ng mga pagbabago noong Abril. Ang Android Open Source Project ay nananatiling open source. Sa ilalim ng patakaran ng Google noong dalawang libo dalawampu't anim, na naaayon sa trunk stable model nito, Inilalathala ng Google ang source code ng Android dalawang beses sa isang taon, sa ikalawa at ikaapat na quarters. Ang pampublikong Android seventeen branch ng Bionic ay nasa isang snapshot pa rin mula Marso dalawampu't walo. Nakakuha ang mga Pixel phone ng quarterly release noong Setyembre, iniwan ang mga labas na developer na nagde-debug ng mga binary sa isang disassembler hanggang sa ika-apat

2:29 quarter drop. Habang ang mga labas na developer ay naghihintay ng mga source drop, sa loob ng Google mas mabilis ang paggalaw ng code sa AI.

Paano ginagamit ng Google ang Gemini 4 Argon sa loob ng sarili nitong mga repo?

2:33 Sinasabi ng Google na tinulungan ng Gemini four Argon ang Chrome na ayusin ang isang anim na milyong linya na legacy folder sa loob ng apatnapung milyong linya na codebase ng Chromium, ginagawang linggo ang mga buwan. Nagpatakbo din ang mga inhinyero ng Google Cloud ng Argon sa loob ng labing-isang oras magdamag sa kanilang Python Agent Development Kit, na sumasaklaw sa dalawang daan at limang libong linya. Nagpanukala ang Argon ng anim na optimizations sa tatlumpu't dalawang file, binawasan ang overhead ng session ng apatnapung porsyento. Tinanggihan ng mga human maintainer ang apat sa anim na panukalang iyon sa review.

2:59 Ang isang cache ay nanganganib na magbalik ng lumang data ng session pagkatapos ng garbage collection, at ang pagtanggal ng mga top level imports ay sumira sa dalawampu't limang internal Google tests hanggang sa muling isinulat bilang mga lazy loader. Na nagdadala sa atin sa mismong modelo. Nang ipahayag ng Google ang Gemini four Argon noong Setyembre trenta,

Sino ang talagang nakakakuha ng Gemini 4 Argon ngayon, at sa anong presyo?

3:14 Binigyan ko ito ng markang NEEDS REVIEW dahil hindi ito magagamit ng mga regular na developer. Noong Oktubre trese, minarkahan ng Google na "generally available" ang gemini four argon endpoint generally available. Mismong ang paglalabas ay mayroong hindi pagtutugma ng dokumentasyon. Sinasabi ng pahina ng DeepMind na ang Argon ay available ngayon para sa Google AI Pro at Ultra subscribers. I-click ang mga docs ng pagpepresyo ng API, at isang warning box ang nagsasaad na ang Argon ay hindi available sa Free tier at sa Google AI Pro. Sa AI Studio at Antigravity, kailangan mo ng AI Ultra o isang bayad na API key. Ang panimulang presyo na dalawang dolyar bawat milyong input tokens at sampung dolyar

3:45 para sa output ay magtatapos pagkatapos ng Nobyembre. Sa Disyembre uno, dodoble ang presyo sa apat na dolyar sa input at dalawampu sa output. Sa leaderboard ng Artificial Analysis, nakakuha ng fifty three si Argon, pantay sa GPT six Astra at Claude Fable five point one, sa likod ng Claude Opus five point five na may fifty eight. Ang average ng live API tests ay apatnapu't apat na segundo ng pag-iisip bago dumating ang unang sagot token. Ipinakita rin ng Google ang Argon na kontrolado ang isang Boston Dynamics Spot robot para maghulog ng mga lata sa isang foot pedal bin.

4:14 Bago igalaw ang isang pisikal na paa, bumubuo ang Argon ng isang MuJoCo simulation para magpraktis balansehin sa tatlong paa, ginagabayan ng isang kasanayan ng tao at camera verifier prompts. Ngayon para sa unit test na iyon sa pribadong Bionic tree ng Google.

Ano ang ipinagpipilitan ng sariling unit test ng Google?

4:25 Tatlumpu't limang minuto pagkatapos kumpirmahin ang Pixel emoji bug, nag-post ng facepalm ang maintainer ng Google. Mayroong wide character test ang Bionic sa linya labing-apat pitumpu't lima, at ipinagpipilitan nito ang buggy return value na dalawa sa halip na tatlo. Maging ang pagbabago ay isinulat ng isang tao noong Abril o isang ahente sa magdamag, ang source inspection at tunay na mga pagsubok ang nagpapanatili nitong tapat. Kung mas gusto mong basahin ito kaysa pakinggan akong sabihin ito, ang diff ay dumarating sa iyong inbox araw-araw, libre sa the daily diff dot dev, link sa ibaba.

4:49 Kaya ang hatol ngayon ay NEEDS REVIEW.

Ano ang hatol sa dalawang-bilis na paglabas ng Google?

4:52 Sa Gemini four Argon sa bayad na API, susubukan ko ito sa bounded refactors na sinusuportahan ng isang test suite, at patuloy kong pipilitin ang Google na maglathala ng Android source kapag naipadala na ang mga binary. At iyon ang diff para sa araw na ito. Ako si Niko mula sa Axrisi. Mag-merge nang may pananagutan. Merge responsibly.

Mga Pinagmulan

  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

Mga kaugnay na video