When I try: adb shell pm uninstall-system-updates com.google.android.apps.photos
I get
Exception occurred while executing 'uninstall-system-updates':
java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.content.pm.ApplicationInfo.isUpdatedSystemApp()' on a null object reference
at com.android.server.pm.PackageManagerShellCommand.uninstallSystemUpdates(PackageManagerShellCommand.java:462)
at com.android.server.pm.PackageManagerShellCommand.onCommand(PackageManagerShellCommand.java:301)
at com.android.modules.utils.BasicShellCommandHandler.exec(BasicShellCommandHandler.java:97)
at android.os.ShellCommand.exec(ShellCommand.java:38)
at com.android.server.pm.PackageManagerService.onShellCommand(PackageManagerService.java:24825)
at android.os.Binder.shellCommand(Binder.java:950)
at android.os.Binder.onTransact(Binder.java:834)
at android.content.pm.IPackageManager$Stub.onTransact(IPackageManager.java:4847)
at com.android.server.pm.PackageManagerService.onTransact(PackageManagerService.java:8883)
at android.os.Binder.execTransactInternal(Binder.java:1184)
at android.os.Binder.execTransact(Binder.java:1143)
`
I don’t know if this is really necessary as the CalyxOS Gcam Service Provider already represents this package. I will reboot and give GCam another try.
Hmm hmm hmm
Were you able to install GCam Service Provider without issues this time (the non photo variant since you still got GCam Photos Preview installed)? Did you check if GsfProxy still exists?
Same for me, just tried it. I thought from the weird path in pm list packages -f it’s been updated (that’s usually why you get random symbols in between), but I guess that’s not it…
It’s looking for com.google.android.gsf.gservices, that should be supplied by GCam Service Provider, wonder why that’s not working
I only have Calyx proviced GCam Photos Preview installed. → this is the installed com.google.android.apps.photos package.
GCam Service Provider is still missing. As photos package is already there, the basic lukaspieper provider apk (here) should be enough.
When I try to install it (even with the NoG hiding module running) it still fails with "App not installed as package conflicts with an exiting package.”
I guess the module is not hiding/overlaying correctly?
You said:
How can I do this? I think pm list packages -f gsf
will always see it or is this the way to test?
If this is the right test the package is still visible. Excuted as root in termux directly on the phone:
:/ # pm list packages -f gsf
package:/product/app/GsfProxy/GsfProxy.apk=com.google.android.gsf
I would start fresh, delete the /NoG folder and follow the instructions again, make sure the module shows up in Magisk Manager afterwards and don’t forget to reboot.
I just switched to root as I have to type all the commands via root anyway. adb shell su - I was wondering why adb root is not working anymore which I could use on my FP2 – maybe a developer setting is missing, will check later on
checked the folder via adb:
ls -l /data/adb/modules/
total 3
drwxr-xr-x 3 root root 3488 1970-01-14 14:30 google_glide_lib
–> so everything is fine only glide lib module (which is not working ^^) is left so I skipped deleting the module folder manually
you are right about the links under /system (not it is much more clear to me - thx)
pm list packages -f gsf
... *nothing*
ls -l /system/product/app/GsfProxy/
total 0
So I assume there was a typo before or so.
So far so good.
Tried to install basic apk of Gcam-Services-Provider: Releases · lukaspieper/Gcam-Services-Provider · GitHub again. Just by taping on in in the file manager on the phone.
Result: "App not installed as package conflicts with an exiting package.”
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