16

Which Android version supports exFat, if at all? The web seems unclear about that. Thanks!

  • 2
    I assume your real question is "Since which Android version is exFat supported?" - only this way it makes sense. – Robert Nov 28 '16 at 18:51
11

It seems that, according to here, It's been supported since KitKat (whether using apps or not) But (as always) it's down to The OEM's discretion if a device can Run it. Chances are, If a device supports SD cards bigger than 32Gb, It supports SDXC, which has a exFAT filesystem (First Graph here)

| improve this answer | |
  • That makes sense, also the OEM's omission of support if a device does not have an SD card reader. – Lorenz Lo Sauer Nov 29 '16 at 10:23
  • Glad to be of service. – Dan Brown Nov 29 '16 at 12:47
  • 10
    I have found my Pixel in 2018 on Android 8.1 does not support exFat. – jonallard Aug 20 '18 at 22:45
  • From this post it indicates Samsung devices are compatible. – Adam Hurwitz Apr 1 at 23:56
  • @Adam Hurwitz hi there! I'll have to invite you to read the post again; I noted that it's OEM's discretion on whether it's supported or not. Also, your links is about NTFS while this question is about ExFat. – Dan Brown Apr 2 at 20:24
5

As of today (03-Apr-2020), exFAT is not yet officially supported in AOSP.

exFAT - a filesystem developed by Microsoft - was (is?) not open-source, so it was never a part of Linux (and hence Android) kernel over patent issues. However a FUSE-based driver (exFAT-FUSE) has been around since long. But it's not a proper in-kernel driver, so lags in performance. Also there are properly licensed commercial-grade and for home users exFAT implementations from authorized Microsoft partners like Tuxera and Paragon.

Following a leaked release of exFAT filesystem source code, Samsung properly open-sources an exFAT driver back in 2013. It's available as exFAT-nofuse Linux kernel module. In 2018 another exFAT driver was released as part of Samsung Galaxy S8+ source. It's available as exFAT-Linux out-of-tree kernel module.

However none of the above drivers were ever merged to mainline Linux tree because of license issues. The other answer correctly states that it's up to OEM's discretion if they include exFAT driver in their kernel (and executables in userspace) after having an agreement with Microsoft or their partners. But almost every custom ROM includes one or more of the above drivers. exFAT-FUSE support is also available as a Magisk module: vold-posix which can be used almost with any ROM (at least after some modifications). With Android 9, a very basic support was also added to AOSP:

"Android doesn't natively support exFAT, but we're at least willing to try mounting an exFAT filesystem if we detect the Linux kernel supports it, and if helper binaries are present."

There came a big news from MS in 2019:

"Microsoft ♥ Linux – we say that a lot, and we mean it! Today we’re pleased to announce that Microsoft is supporting the addition of Microsoft’s exFAT technology to the Linux kernel."

And with that a community user (who already developed an exFAT driver for Linux based on 2013 release) made the initial commits to staging (unofficial, going to be part of mainline kernel) tree. After getting into "real" shape, it's being merged to Linux kernel v5.7-rc1 (test release). Hopefully exFAT is going to be a part of future Linux/Android kernel stable/LTS releases. It can possibly be backported to current Android LTS releases (3.18 or 4.*) but there can be license issues, I'm not sure of, as Paragon states: "Microsoft’s statement is related to future versions of the Linux Kernel."

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.