Google's Pilex phone blocks users from calling 911

Google's Pilex phone blocks users from calling 911

At the end of November, Reddit user KitchenPicture 5849 posted that his Pixel phone with Android 11 prevented him from calling 911. At that time, his grandmother had a stroke and needed to call an ambulance, but after calling 911, "the phone was stuck as soon as it rang, and there was nothing he could do except click on the emergency call app running in the background."

[[440273]]

This phenomenon can be reproduced. After the post became popular, Reddit users reproduced the problem. They also said that five minutes after the call was initiated, the emergency services department did not respond, and there was no evidence that the phone called 911 - the phone records on the device and the carrier (Verizon) phone records were all empty.

On December 8, Google responded to this issue positively, saying that "this problem is caused by unexpected interaction between the Microsoft Teams application and the underlying Android operating system. We will fix this problem soon and will provide Android platform updates to the Android ecosystem on January 4."

It is disturbing and confusing that a third-party application like Microsoft Teams can interfere with a service as important as emergency dialing. Carriers are required by law in almost all countries to route emergency calls to nearby emergency service sites, so emergency calls can be made even if the mobile device does not have a SIM card installed.

That is to say: emergency dialing on a mobile phone should not be blocked under any circumstances.

Source of the problem: PhoneAccounts

Subsequently, Mishaal Rahma of foreign media medium conducted a detailed study of what Google called "unexpected interaction between Microsoft Teams and underlying Android" and found that the problem lies in the PhoneAccounts instance at the bottom of Android. Android applications with calling functions will build PhoneAccount instances, such as the Microsoft Teams application. It uses the Skype backend for voice calls, but it cannot handle emergency calls, so the problem of not being able to dial 911 at the beginning of the article occurs.

But if we simply follow this logic, then all Android phones with Microsoft Teams installed will not be able to call 911. However, this is not the case. Usually, the Android system will sort the PhoneAccounts list by tags such as "whether emergency calls are supported", select the PhoneAccounts instance with the highest priority and execute it.

Then the mystery of the problem was revealed. The Microsoft Teams app had an error of excessive registration of PhoneAccount instances. Whenever the phone had the Microsoft Teams app installed but not logged in, each cold start of the app would create another PhoneAccount instance. Too many PhoneAccount instances to sort caused an integer overflow/underflow error in Android's sortSimPhoneAccountsforEmergency emergency call priority sorting method, which selected the wrong app for emergency calls.

Follow-up

On December 10, Microsoft released version 1416/1.0.0.2021194504 of the Teams application. This version solves the problem of generating too many duplicate PhoneAccounts, and also calls the clearPhoneAccounts method of TelecomManager at the first startup to clear all previously created PhoneAccounts.

Enthusiastic netizen @linuxct developed a simple open source application that can list all PhoneAccounts in the device and evaluate whether any application has the problem of excessive registration of PhoneAccounts. It is currently available for download on GitHub.

This article is reproduced from OSCHINA

Title of this article: Google's Pilex phone blocks users from calling 911

Article URL: https://www.oschina.net/news/173606/pixel-prevented-user-from-calling-911

<<:  After iOS 15.2 was released: Apple Watch users in China are looking forward to the ECG function being launched soon

>>:  Automatic warning of risky transactions! WeChat Pay's "anti-fraud customer service reminder" function is launched

Recommend

Here comes the ranking order of cooking oils, which one is right for you?

Many netizens have been asking about cooking oil,...

Free model: the glory or sorrow of the Internet?

Not long ago, Ethan Zuckerman, the father of pop-...

What kind of gold is the “colloidal gold” on the test paper?

Produced by: Science Popularization China Author:...

Apple updates iOS 15.2 with details to check if iPhone parts are genuine

The official version of iOS 15.2 has been release...

The bird on the national emblem smells like cow dung

The national emblem of the Cooperative Republic o...

Is the mask subsidy real? How to get mask subsidies on WeChat

A few days ago, a notice about "mask subsidi...

2022 Chengdu Tea Tasting Studio Contact Guide

Chengdu Tea Tasting Studio has its own appointmen...