Why Google Camera with Portrait Mode isn't working on my Phone?

So, as we all know @Arnova8G2 from xda Developers Forum had already ported the Google Camera from the original Pixel 2 (download) device with the most wanted feature called Portrait Mode. He modded the apk file to work the application with almost every android running 7.1.x and above also his modded Google Camera doesn't need any root access and can be installed as any normal apk file, but still people facing issues regarding its installtion. Almost every second user trying to use that mod on their phone is reporting a failure. So, with this post we gonna tell you about some basic requirements needed to run the app whereas our main focus will be on WHY GOOGLE CAMERA ISN'T WORKING ON YOUR PHONE???


First of all, let us clear some basic requirements for the Google Camera Mod to work on:-
1. Android Version Running 7.1.x or above (OEM Customised OS may not work, so STOCK is always preferable)
2. Camera2 API enabled
3. Qualcomm Powered Device (400/600/800 Series)

Q. What's Camera2 API???
Ans. First understand what's an API exactly means? API stands for, "Application Programming Interface". An operating system uses APIs to give (third party) developers tools and access to certain parts of the system to use them for their application. In reverse, this means that the maker of the operating system can also restrict access to certain parts of the system. It is a set of clearly defined methods of communication between various software components. A good API makes it easier to develop a computer program by providing all the building blocks, which are then put together by the programmer.

Now, that you know what API is, lets take a dig to what Camera2 API is? Up to version 4.4 (KitKat) of Android, the standard API to access the camera functionality embedded in the OS was very limited. With version 5 (Lollipop), Google introduced the so-called Camera2 API to give camera app developers better access to more advanced controls of the camera, like manual exposure (ISO, shutter speed), focus, RAW capture etc. While the phone makers themselves are not necessarily fully dependent on Google’s new API, because they can customize their own version of the Android OS, third party app developers are to a large extend – they can only work with the tools they are given.


So does every Android device running Lollipop have the new Camera 2 API? Yes and No. While Camera2 API is the new standard Camera API since Android Lollipop, there are different levels of implementation of this API which vary between different phone makers and devices. There are four different levels of Camera2 implementation: Legacy, Limited, Full and Level 3.
Legacy:- means that only the features from the old Camera1 API are available
Limited:- means that some features of the new API are available
Full:- means that all basic new features of Camera2 are available
Level 3:- adds some bonus features like RAW capture on top of Camera2

So, almost every mid-range to flagship device running Android 6.x.x and above, have this but it depends on OEM of your device on how they implemented it or whether they restricted it with some tweaks over it to make sure users will use their camera only. So, you can download an app called Camera2 Probe to check which type of implementation is done. If you have installed Magisk on your device then you can use a module(download) to enable Camera2 API if it's not enabled already.

As your device is fulfilling all the 3 above mentioned requirements, there's a good 90% chances that the Google Camera Mod or any Camera Mod built on top of Camera2 API will work with your device. Why 90% not 100% chances? It's because, as we said earlier OEMs may restrict access to various system parts to force users to use their app only and you can't change it. So, here's our suggestion to beat that!!
Unlock Bootloader of your phone >> Install TWRP recovery >> Flash a Custom ROM for your device

Q. Why Custom ROM???
Ans. As we said earlier even after fulfilling all requirements if Camera Mod isn't working there's a good chance your device OEM have restricted system access. So, to get rid of that you can simply install any custom rom compatible with your phone. As many users on different forums reported everything working when using the camera on a custom rom installed device.

Now, we guess you understood everything why Google Camera isn't working on many phones. And if it's working already for you than Kudos!! you guys learned something on how things actually work and obviously you got an idea about the Camera2 API.

You can read more on Camera2 API here: https://developer.android.com/reference/android/hardware/camera2/package-summary.html