I just picked the newest one from the release page and it’s been working almost flawlessly, but I’ve only used it (and GCam in general) for a few days.
There are versions with different package names available, so you can test different mods at the same time, since they can differ in features quite heavily. I’m personally not at a point to recommend one over the other
Pick up a few, try them and if one offers the features you need and is stable, that’s the one
Remove your NoG module and forget about gsf, that was a red herring.
I pushed the Gcam-Services-Provider basic package to /data/local/tmp, tried installing with pm install /data/local/tmp/app-basic-release.apk and can report it’s been gms that’s conflicting here. (This bug report served as great inspiration here)
Should have read the Calyx documentation more closely and tested for that earlier. When they write, disabled, they mean disabled, like in the package is just disabled, it’s still there
Rebuild your NoG module with /data/adb/modules/NoG/system/product/priv-app/GmsCore/ as the path, reboot and you can install Gcam Services Provider.
I’ve tried it and the three Gcam versions you wanted tested all work, the new MGC_8.5.300_A10_V6 I’m running however does not. I guess there’s been additional work done in microG since the provider was last released.
(Testing this did totally screw up my microG install, but getting it working was worth it )
Oh I’m sorry I don’t wanted to put your setup into a risk. I should have explained earlier that I’m not that into taking pictures with the Smartphone I’m just curious if the Gcam really make such a big difference and of course I’m also a bit challenged by such little problems.
Also I was thinking if there is a way to check an APK (extract it or so) and find out which package it will be after installation. I think I googled it already and it was a bit to difficult as it needed a whole Android development installation or so - don’t remember the details.
Ok, so gms it is. I don’t see in the issue (I read today as well) that this package is mentioned there, but I trust you as you dug into it very detailed (and nearly screwed up you phone ).
So there is no installed GmsCore package, but the path exist. How is this working?
Is it part of the disabled microg of Calyx?
No worries, I was fully aware this would happen, great time to check if the backup strategy is working
You can for example use Apktool for that, but since this is opens source software you can just read the AndroidManifest.xml directly.
The issue isn’t directly related, but it had some great insights what to look for, especially installing through pm to get more verbose output.
They essentially run something akin to su -c pm disable com.google.android.gms I guess. Those packages still exist but are disabled and only show up under pm list packages -d (or -a).
delete the old module - just needed if there were other attempts before like in my case. → see here - quite easy just delete in Magisk modules and reboot
setup the overlay/hide module again & finally correctly:
# Magisk modules path: /data/adb/modules/
# Just a name for the selfmade module: .../NoG
# Path to the disabled package we need to hide: .../system/product/priv-app/GmsCore
adb shell su -c mkdir /data/adb/modules/NoG`
adb shell su -c mkdir -p /data/adb/modules/NoG/system/product/priv-app/GmsCore
adb shell su -c touch /data/adb/modules/NoG/system/product/priv-app/GmsCore/.` `replace`
## check if everything is really there:
adb shell su -c ls -la /data/adb/modules/NoG/system/product/priv-app/GmsCore`
total 6
drwxr-xr-x 2 root root 3488 2022-08-13 23:39 .
drwxr-xr-x 3 root root 3488 2022-08-13 23:39 ..
-rw-r--r-- 1 root root 0 2022-08-13 23:39 .replace
→ reboot
check if the path to the disabled Calyx microg package is really “overlayed”
adb shell su -c ls -l /system/product/priv-app/GmsCore
total 0
# –> GmsCore is gone – check …
As already explained by others already the package names are differently so they can be installed in parallel. I like to use tags (KISS Launcher provides) in such cases to differ them.
Now that the GCam ports are generally working I played around a little bit.
I don’t have this detailed eye for colors and sharpness etc. that’s why I mostly use Open Camera (OC) and it feels totally ok for my needs.
The UI of GCam (ports - don’t know the original GCam, but I think it is more or less similar) feels much more modern than OC.
What I discovered apart from taking photos…
I like that iPhones can easily record SloMo videos and now realized that it is also available under video mode for the more feature rich Android camera apps (with options to 0,5x; 0,25x, 0,125x speed).
Unfortunately I get:
with OC: “Serious camera error” (have to use the back button or put OC in background … coming back it seems to still record something → hitting stop another error occurs: “Error, video file may be corrupted …” and nothing will be saved in the Gallary) - as you may ask: yes normal speed videos work
with GCam Wichaya (options 1/4; 1/8 speed): Screen stays black when switching to SlowMo Mode; normal video can be started and stopped but nothing is saved.
with GCam Nikita (same options as Wichaya): works more or less (SloMo [but only with 1/4 speed] and normal videos as expected)
with GCam BSG … basically the same behavior as Wichaya.
There are also other ports which work and I cannot really see differences
Both work more or less like the Nikita port (also in regards of SloMo videos).
Edit again: Just saw that the SloMo 1/8x speed doesn’t work (but 1/4x speed does) issue is already mentioned here. Even though for me (with Calyx OS) it does not work with Open Camera at all.
I guess this could be similar to GCam Photos Preview needing to have the Google Photos package name?
There are probably shortcuts, like double press power, or some hardware capabilities that are only available to specific apps, so GCam has to fake the package name on those devices
On the FP4 we just get the added benefit of having multiple installed
Package names are usually needed to access all cameras and/or to enable features like Google Lens.
Some brands (eg: OnePlus, Samsung, etc) restrict access to all cameras. They have a “whitelist” of apps (package names) that can access those cameras, so modders release their versions with package names that are on those lists.
So seems to be to be a practice to make it harder to use all cameras (so not only an FP4 issue - even though I would not expect this from Fairphone, but the module itself - the camera hardware - is probably also some specific chip etc. and so it might not be Fairphone’s “fault” only).