„Google“ ištaisė košmarišką „Android“ klaidą, kuri neleido vartotojui skambinti pagalbos tarnyboms

„Google“ ištaisė košmarišką „Android“ klaidą, kuri neleido vartotojui skambinti pagalbos tarnyboms

Jau buvo išleistas sausio mėnesio „Android“ saugos pataisymas, kuris ištaiso vieną iš labiausiai erzinančių „Android“ klaidų, kurios gali atsirasti po kurio laiko: tam tikros programos gali neleisti jums susisiekti 911 ar kitais pagalbos numeriais visame pasaulyje.

Gruodžio pradžioje „GooglePixel“ antriniame vaizdo įraše pasirodė šiurpi istorija iš vartotojo, kurio „Pixel 3“ sudužo tada, kai jam to labiausiai reikėjo: skambindamas pagalbos numeriu 911 savo močiutei, kuri „atrodė, kad ją ištiko insultas“. Sudužo visas telefono posistemis. iš karto po to, kai paskambino pagalbos tarnyboms, o vartotojas KitchenPicture5849 pasakė, kad negali sulaukti skambučio, kad galėtų prisijungti arba padėtų ragelį, kad pakartotinai skambėtų. Laimei, netoliese esantis fiksuotojo ryšio telefonas buvo pasiekiamas, kai jų Android telefonas sugedo ir buvo susisiekta su pagalbos tarnybomis.

Pasibaigus krizei, vartotojas dar kartą paskambino pagalbos numeriu iš savo išmaniojo telefono ir „Android“ vėl sugedo, o tai rodo, kad tai nebuvo vienkartinė klaida. Patikrinus jų telefono sąskaitą taip pat paaiškėjo, kad „KitchenPicture5849“ niekada neprisijungė prie 911 paslaugos. Jie sako, kad taip pat gavo keletą kitų privačių pranešimų iš vartotojų, kurie teigė, kad susidūrė su ta pačia klaida.

„Google“ susisiekė su naudotoju ir gruodžio 8 d. viešai atsakė į pranešimą:

Remdamiesi savo tyrimais, galėjome atkurti problemą tam tikromis aplinkybėmis. Manome, kad problema kyla tik kai kuriuose įrenginiuose, kuriuose įdiegta „Microsoft Teams“ programa, kai vartotojas nėra prisijungęs, ir šiuo metu žinome tik vieną naudotojo pranešimą apie šią klaidą. Nustatėme, kad problemą sukėlė nenumatyta „Microsoft Teams“ programos ir pagrindinės „Android“ operacinės sistemos sąveika. „Microsoft“ glaudžiai bendradarbiauja su „Google“, kad išspręstų šią nenumatytą sąveiką.

„Google“ teigė, kad „Microsoft“ kuo greičiau išleis programos naujinimą ir kad vartotojai turėtų patikrinti „Play“ parduotuvę, ar nėra naujinimų. Bendrovė taip pat paminėjo, kad OS lygio pataisa bus išleista po mėnesio, sausio pradžioje (tai šiandien). Tuo metu „Google“ daugiau nekomentavo šiuo klausimu.

Kodėl programos gali sugadinti 911 paslaugą

Delsimas. „Microsoft Teams“ sulaužė 911 paslaugą? Ar atsitiktinės „Android“ programos gali sutrikdyti pagalbos tarnybą? Kaip? Kodėl trečiųjų šalių programos turėtų būti per tūkstančius pėdų nuo tokios svarbios funkcijos? Ar kokios nors kitos programos trikdo 911 paslaugą, ar tik „Microsoft Teams“? Kol Teams buvo ištaisyta, ar buvo gerai leisti „Android“ naudotojams mėnesį praleisti laiką su šia OS lygio klaida, ypač kai nežinome, ar tai daro kitos programos? „Android“ yra „Android“, todėl daugelis telefonų niekada nebus sutvarkyti. Kaip vartotojai gali žinoti, kad skubios pagalbos tarnybos veiks? Išskyrus tai, kad „Google“ nepateikė jokių atsakymų, išskyrus tai, kad laukė mėnesio, kol bus pataisyta.

Laimei, kai kurie labai protingi „Android“ bendruomenės žmonės galėjo pateikti atsakymus, kurių „Google“ nedalino. Mishaalas Rahmanas, Esper vyresnysis techninis redaktorius, parašė neįtikėtiną įrašą „Medium“, kuriame išsamiai paaiškino, kaip veikia klaida ir kodėl ji atsiranda. „Android“ programos su telefono skambučio funkcija gali sistemoje užregistruoti „PhoneAccount“, nurodydamos, kad jos turi galimybę skambinti. Yra keletas programų, kurias galima įdiegti naudojant „PhoneAccount“, įskaitant vieną „CAPABILITY_PLACE_EMERGENCY_CALLS“. Kai ateina laikas skambinti 911, „Android“ surūšiuoja registruotų telefono paskyrų sąrašą ir pasirenka vieną. Kol kas viskas gerai.

Viena iš kelių klaidų, nustatytų Rahmano žinutėje, yra ta, kad Microsoft Teams užregistruos papildomą telefono paskyrą sistemoje kiekvieną kartą paleidus Teams, jei nesate prisijungę. Atminkite, kad nėra neįprasta įdiegti Microsoft Teams ir niekada jos nenaudoti . Dažnas skundas dėl „Android Teams“ programos yra tas, kad ji dažnai automatiškai atsijungia naudotojams.

Jei esate atsijungę, 10 kartų paleisdami „Microsoft Teams“ jūsų telefone bus 10 pasikartojančių „Teams“ telefonų paskyrų. Teams neturėtų to daryti, o „Microsoft“ naujinimas neleido Teams to daryti, tačiau daugybės pasikartojančių „PhoneAccounts“ taip pat neturėtų pakakti, kad „Android“ telefonų sistema atsiklauptų.

Kita klaida: renkantis telefono paskyrą pagalbos skambučiui, „Android“ atlieka sudėtingą rūšiavimo procesą, kad nustatytų, kurią paskyrą naudoti. Paskutinis šio rūšiavimo proceso žingsnis, konfliktų sprendimas, yra maišos kodų rūšiavimas. Maišos kodų palyginimas tiesiog atima vieną maišos kodą iš kito.

Bet kaip ir ta kvaila Microsoft Exchange 2000 klaida, kuri įvyko kitą dieną, tai gali sukelti sveikųjų skaičių perpildymą arba pertrūkį, o dabar telefono posistemis sugenda. „Google“ kodas yra klaidingas, bet kadangi tai yra paskutinis būdas išspręsti rūšiavimo problemas išbandžius akivaizdesnius dalykus, pvz., paketo pavadinimą, jis turėtų būti iškviestas tik labai konkrečiame programos, kuri generuoja pasikartojančias PhoneAccounts, egzempliorius. Taigi ačiū „Microsoft“!

„Google“ ištaisė šią klaidą , pavadintą „Pataisyti sveikųjų skaičių perpildymą / pertrūkį, atsiradusį dėl pasikartojančios telefono paskyros rūšiavimo skambinant pagalbos numeriu. Vietoj to, kad atimtų vieną maišos kodą iš kito ir galbūt dirbtų su tikrai dideliu ar labai mažu skaičiumi, dėl kurio sistema sugenda, „Google“ dabar apdoroja du skaičius per Java „Integer.compare“ funkciją. Tai grąžina tik -1, 0 arba 1, nurodant mažesnį, identišką arba didesnį palyginimo rezultatą.

Jei iš pradžių esate panašus į mane ir galvojate, kodėl „Android“ iš viso rūšiuoja telefonų paskyras, o ne tik naudoja numatytąją SIM kortelės paskyrą, spėliosiu beprotiškai ir pasakysiu, kad tai buvo bandymas priversti 911 paslaugą veikti nepaisant to. Kuris. Jei pagrindinė paskyra neveikia, „Android“ reikia visų galimų telefonų paskyrų sąrašo ir nori tai padaryti automatiškai, kad galėtų bet kokiomis priemonėmis prisijungti prie 911. Ši skirstymo sistema egzistuoja tik susisiekimui su pagalbos tarnybomis, todėl įprasti telefono skambučiai vis tiek veikia nukentėjusiems vartotojams.

Trečia šios netvarkos klaida yra ta, kad „Microsoft Teams“ net neužsiregistruoja kaip pagalbos skambučių tvarkytoja. Komandos sukūrė milijoną PhoneAccounts ir nenaudojo CAPABILITY_PLACE_EMERGENCY_CALLS vėliavėlės, bet vis tiek sugedo 911. „Google“ rūšiavimo procesas prasideda paprašius visų telefonų paskyrų, o geriausias pirmas žingsnis būtų pradėti nuo visų telefono paskyrų, kurios palaiko skubią pagalbą. skambučių.

„Google“ priima dar drastiškesnį sprendimą prieš šią naujausią klaidą ir pašalina kiekvieną „savarankiškai valdomą“ telefono paskyrą iš 911 pagalbos tarnybos procedūros. „Savarankiškai valdomos“ „Android“ telefono paskyros, pvz., „Microsoft Teams“, gauna tiesioginę prieigą prie „Android“ telefonijos rinkinio ir gali naudoti savo funkcijas. „Android“ pagalbos skambučių sistema dabar atsižvelgs tik į paprastesnius telefonijos paslaugų teikėjus, kurie prisijungia prie numatytosios telefono programos, pvz., jūsų operatoriaus paskyros.

Visos šios kitos VoIP programos tikriausiai vis dar gali būti naudojamos savarankiškai skambinti 911 (daugelyje šalių 911 funkcija reikalaujama pagal įstatymus). Bet jei atidarysite numatytąjį rinkiklį ir paspausite 911, „Android“ rinksis tik iš standartinių, sistemos valdomų telefono paskyrų.

Kas taiso ir kaip galite patikrinti, ar nėra 911 tarnybos klaidos

Rahmanas sako, kad „Google“ klaida yra CVE-2021-39659, kuri mėnesiniame saugos biuletenyje klasifikuojama kaip didelio sunkumo paslaugų atsisakymo pažeidžiamumas su pataisomis, skirtas įrenginiams, kuriuose veikia 10, 11 ir 12 operacinės sistemos. Android kodų bazėje Google yra Tiesą sakant, šis pataisymas visiškai perkeliamas į „Android 8.0“, kuri techniškai nebepalaikoma. Tai daugiausia grynai teorinė, nes nulis pardavėjų iš tikrųjų nesiunčia saugos naujinimų tokiems senesniems įrenginiams. Bet kodas yra, jei kam jo reikia.

„Android“ telefonijos rinkinys (dar?) nėra lengvai atnaujinamas „Project Mainline“ modulis, todėl vienintelis būdas tai pataisyti yra 2022 m. sausio mėn. „Android“ saugos mėnesinis naujinimas. „Samsung“ turėtų atnaujinti kiekvieną šiame sąraše esantį telefoną nuo šios savaitės, o „Google“ išleidžia „Pixel 3a“, 4, 4a, 5 ir 5a pataisymus. Atnaujinimas: taip pat tikimasi pagalbos skambučio atnaujinimo, skirto nenaudojamam „Pixel 3“.

Atnaujinimas dar nepasiekiamas Pixel 6. Naujausias „Google“ flagmanas šiuo metu patiria atnaujinimo krizę. 2021 m. gruodžio mėn. atnaujinimas buvo atšauktas dėl ne mobiliojo ryšio problemų (neveikia telefono skambučiai). Kadangi „Google“ stengiasi taisyti, kitas „Pixel 6“ naujinys su šiuo 911 pataisymu turėtų būti „sausio pabaigoje“. Tuo tarpu verta turėti lapkričio mėnesio pataisą. Abi „Google“ diagramos: „sausio pradžia“ ir „sausio pabaiga“ atrodo neįtikėtinai lėtos dėl klaidos, galinčios sukelti tiesioginę vartotojų mirtį.

Dar vieną beprotišką spėjimą pasakysiu, kad Pixel 6 yra keistas telefonas, nes tai visiškai kitoks SoC ir modemas (ir Samsung Exynos padalinio, ir visi kiti pikseliai naudoja Qualcomm). Sukūrus šventinį apsipirkimo sezoną, „Google“ nebeliko vietos manevruoti, jei paleidimas vėluotų. Dėl to telefonas, turintis daug pranašumų pirmą kartą, nenuvilia, bet tikimės, kad tai laikina problema.

Esu nustebęs, kad tai tik „didelė“ (o ne „kritinė“) klaida ir kad įdiegimas užtrunka nuo vieno iki dviejų mėnesių. Greitosios pagalbos atidėjimas gali būti mirtinas, todėl būtų puiku, jei viskas atvyktų greičiau, o ne taip, kaip „Google“ nusprendžia išspręsti šią problemą.

Kol kas girdėjome tik apie tai, kad „Microsoft Teams“ suaktyvina šią pasikartojančių telefono paskyrų klaidą, tačiau nežinoma, ar panašią klaidą daro kitos programos. Jei šiame sąraše matote programą, kuri sukuria daug pasikartojančių paskyrų, tikėtina, kad tai trukdo prisijungti prie pagalbos tarnybų. Rekomenduoju pašalinti programą, susisiekti su kūrėju ir pranešti kitiems Twitter ar bet kur.

Parašykite komentarą

El. pašto adresas nebus skelbiamas. Būtini laukeliai pažymėti *