Tuesday, March 27, 2018

Exclusive: Upcoming Xiaomi Flagship will feature an In-Display Fingerprint Sensor

Besides the controversial display notch, another recent trend in smartphones is the introduction of in-display fingerprint sensors. The first smartphone with such a scanner was the Vivo X20 Plus UD with a Synaptics sensor. This was followed up by the Vivo X21 UD and more recently the Huawei Porsche Design Mate RS, both of which utilize a Goodix-built in-display fingerprint sensor. The Huawei Mate 10 successor and the Samsung Galaxy Note 9 are also rumored to feature such a sensor, and we now have evidence that one of Xiaomi's next flagship devices will too. It might not be the Xiaomi Mi 7, though, but rather another unreleased Xiaomi flagship.

The following information is based on firmware files obtained by @FunkyHuawei, the man behind the FunkyHuawei.club service, which allows users to updateunbrick, or rebrand Huawei and Honor phones for a fee. He has shared the files exclusively with XDA-Developers, and we have examined them in collaboration with XDA Junior Member franztesca.


Xiaomi Flagship with an In-Display Fingerprint Sensor

The Xiaomi Mi 7 was expected to launch as the company's first 2018 flagship with a Qualcomm Snapdragon 845 system-on-chip, but the device seemingly fell off the radar for unknown reasons. Instead, the Xiaomi Mi Mix 2S took center-stage and was finally launched as Xiaomi's flagship model. An industry insider claimed that the Mi 7 was delayed because Xiaomi wanted to incorporate an in-display fingerprint scanner and a display notch, and while initially we were skeptical of these claims, we are finally starting to see evidence that Xiaomi indeed went back to the drawing board and is working on adding this new type of fingerprint scanner to one of their flagship devices.

The first concrete piece of evidence that we have regarding the Xiaomi Mi 7's delay is the fact that there now exists two firmware branches for the device: dipper and dipperold. dipper is the code-name for the Mi 7, but fairly recently we discovered a new Mi 7-related code-name called dipperold. The conclusion to be drawn here is fairly obvious: dipperold is the code-name for the scrapped Mi 7 prototype device, whereas dipper is the code-name for the device currently in-development. With that out of the way, let's discuss the main difference between the two firmwares: the fingerprint sensor.

Xiaomi Mi 7 In-Display Fingerprint Sensor Xiaomi Mi 7 In-Display Fingerprint Sensor

On the left, we have a snippet of code from dipper's /vendor/build.prop, and on the right that same code from dipperold's /vendor/build.prop file. In dipper's firmware, the fingerprint sensor is said to be sourced from FPC and Goodix, which is not uncommon for Xiaomi phones. However, in dipperold's firmware, the two fingerprint sensors are sourced from Synaptics and Goodix. Notably, the Goodix sensor has a different name here: "goodix_fod" where we believe that "fod" means "fingerprint on display."

With that in mind, we dug through the MiuiKeyguard (the app responsible for the lock screen) code in order to find further evidence of an in-display sensor. We found classes with the name "Gxzw" in them that contained strings referencing both of the fingerprint scanners mentioned in dipperold's firmware. No similar methods could be found in dipper's firmware.

Xiaomi Mi 7 In-Display Fingerprint Sensor

Digging further, we found that "Gxzw" refers to a specific type of fingerprint sensor, as evidenced by the method below. We can see that the method returns "true" for "GXZW_SENSOR" if persist.sys.fp.vendor matches either "syna" or "goodix_fod" but returns false otherwise. Already, this is rather curious—why would there be a method in MiuiKeyguard differentiating between types of fingerprint sensors if not for an in-display sensor?

Xiaomi Mi 7 In-Display Fingerprint Sensor

To further confirm our suspicion, we looked for other classes and methods with the "Gxzw" moniker. One of the more interesting ones extends an ImageView, which is a class used in Android to display an image in an app. We can see code related to the X and Y coordinates, the height and width, and the color of something called a "LIGHT_TIP." We can also see references to "HBM" which we believe is an acronym for "High-Brightness Mode" as seen on many other smartphones.

Xiaomi Mi 7 In-Display Fingerprint Sensor

Another method in this class tells us what drawables will be shown in the image. "finger_circle" and "finger_image" are shown at the coordinates mentioned earlier, and of course the drawables are a circle and a fingerprint respectively.

Xiaomi Mi 7 In-Display Fingerprint Sensor

Using the drawables above, the coordinates listed in the code, and finally some notch-related files we discovered earlier, XDA Junior Member franztesca put together an excellent mock-up of where we believe the Xiaomi flagship will show a hint to guide the user to place their finger on the display.Xiaomi Mi 7 In-Display Fingerprint Sensor

In-Display Fingerprint Sensor, Possibly the Xiaomi Mi 7 Plus?

Now here's the kicker: As we mentioned above, all of the code that led to our conclusion about Xiaomi testing an in-display fingerprint scanner is from dipperold. None of what we just discussed is found in dipper, which is the firmware for the Xiaomi Mi 7. That tells us that Xiaomi may have had plans for an in-display fingerprint sensor on the Mi 7, but scrapped it mid-development. It's possible that things could change and this sensor could re-appear in the firmware (and if it does, we'll keep you updated), but for now it doesn't look like the Mi 7 will have this sensor.

But a device which may be the Xiaomi Mi 7 Plus might have one. This second Xiaomi device, code-named ursa, is a flagship device with the Qualcomm Snapdragon 845 SoC, a 4,000 mAh battery, an OLED display with a notch, and finally it has the same Synaptics and Goodix_fod sensors as well as all of the above code in MiuiKeyguard. There are other similarities between ursa and dipper such as optical zoom which led us to believe the two devices are related. While we don't have direct evidence that ursa will be the Mi 7 Plus (after all, Xiaomi skipped the Mi 6 Plus), at the very least we know that this is another Xiaomi flagship device with an in-display fingerprint sensor in testing.

dipper and ursa aren't the only Xiaomi flagships we've spotted, so stay tuned to the XDA Portal for more firmware file leaks. Until then, be sure to follow our new Exclusive tag for more posts like this!



from xda-developers https://ift.tt/2GxkGNc
via IFTTT

No comments:

Post a Comment