I get apps from wherever but mostly from Google Play and Github and F-Droid and Sourceforge but some are directly from developers & some are reused
from phone to phone (some are extracted while others were saved
beforehand).
At any given time, some of those installed apps are updated automatically. Some aren't.
Some I can update with a new version manual download.
Some won't.
It seems I have to match sources?
I think?
What's going on?
Can someone explain Android app updates please?
Apps are signed with developer keys. To avoid impersonation, Android will only update apps where the new apk was signed with the same key as the old one.
F-droid builds and signs apps with their own key, rather than the
developer's key. The result is that you can only update F-droid builds of apps with another build sourced from the F-droid repo - the same app signed by the developer from Github or Play won't update the F-droid signed
version, and vice versa.
(If you're getting apps from Github etc, I can recommend Obtainium
as a tool for managing updates for you)
On 27 Feb 2024 13:14:13 +0000 (GMT), Theo wrote:
Apps are signed with developer keys. To avoid impersonation, Android will only update apps where the new apk was signed with the same key as the old one.
Thank you for offering to explain how Android updates apps given the
apps can come from a variety of sources which you won't know over time.
With those keywords, I guess you're explaining this (Play App Signing)? https://support.google.com/googleplay/android-developer/answer/9842756 "Devices only accept updates when its signature matches the installed
app's signature. By letting Google manage your app signing key,
it makes this process more secure."
F-droid builds and signs apps with their own key, rather than the developer's key. The result is that you can only update F-droid builds of apps with another build sourced from the F-droid repo - the same app signed by the developer from Github or Play won't update the F-droid signed version, and vice versa.
With those keywords, is this the signing process that you're explaining? https://f-droid.org/2023/09/03/reproducible-builds-signing-keys-and-binary-repos.html
"All the years before, F-Droid created a dedicated key for each app
to sign the published APKs, but now with reproducible builds
F-Droid ships APKs that are signed by the upstream developer(s)."
I'm never sure which to pick (probably the biggest one is most portable)
but I connected the phone to adb just to check what primary ABI I have.
Windows command line: adb -d shell getprop ro.product.cpu.abi
It output "arm64-v8a"
So I think that means I can use either of the two APKs below:
55.2MB app-release.apk (probably contains everything)
20.6MB app-arm64-v8a-release.apk (Sep 29, 2023)
After installing Obtainium on Android, I left the settings at the defaults. It may take a while to figure out how to use it effectively for updating.
One question: Since I couldn't get Obtaininum off of F-Droid (likely
I needed a repo for it to be found), how does it update itself?
Another question is, after loading up a phone for years, is there any way
to easily tell from which repository any given app was installed from?
Another question is, after loading up a phone for years, is there any way
to easily tell from which repository any given app was installed from?
Not unless there's any telltales in the version number or the signing key.
If they're signed with an F-droid key then that says they came from there.
(I don't know how to read out the key signature from the .apk, but there
must be a way)
(I don't know how to read out the key signature from the .apk, but there
must be a way)
There is also a "Installer App" section of the "App Info" tab.
dev.imranr.obtainium "Installer App" not listed
org.woheller69.weather "Installer App" F-Droid Basic
eu.faircode.netguard "Installer App" Package Installer
com.whatsapp "Installer App" not listed
com.android.location.fused "Installer App" not listed
Do those real-world examples tell you how they were installed?
And a variant problem: I have over 150 apps, most of which I rarely
use, and do not update them automatically -- I'd rather do them all at
once when the process won't interfere with my actual usage. Almost all
are genuine playstore apps.
It generally takes several days. I plug in the charger and tell the
phone to UPDATE ALL (via my home wifi) and it starts chugging. At some
point it simply stops updating while there are still un-updated apps.
This happens repeatedly during each update session and for all update sessions. I don't notice because I'm not watching the process. Our
wifi connection is good 24/7.
WTF is happening?
Do those real-world examples tell you how they were installed?
It does seem to record how apps were installed in that place (I have 'Obtainium', 'Droid-ify', 'Google Play', 'Aurora Store' and others in there) so it does seem to do what you suggest. I don't have anything for system apps. Maybe 'adb sideload' or opening the .apk from the filesystem don't record an installer app?
(If you're getting apps from Github etc, I can recommend Obtainium as a tool for managing updates for you)
On 27 Feb 2024 13:14:13 +0000 (GMT), Theo wrote:
(If you're getting apps from Github etc, I can recommend Obtainium as a tool
for managing updates for you)
I wonder how Obtainium compares with the other Android apk app updaters?
I don't think the Google PlayStore updates *all* the apps you've installed >> from the Google Play Store. It only updates *some* of the apps you've
installed from the Google Play Store.
That seems stupid. Why not?
You can easily prove this to yourself by running a *real* app updater app. >> And then comparing it against what the Google Play Store update found.
Still makes no sense. Why would google limit the number of apps it
would update in a single queue?
It generally takes several days. I plug in the charger and tell the
phone to UPDATE ALL (via my home wifi) and it starts chugging. At some
point it simply stops updating while there are still un-updated apps.
See above. The Google Play Store was never intended to update all the apps >> you've installed using the Google Play Store. It only updates some of them.
Again, why? And why would google not make its own update app better
than a third-party app it provides to update the apps it provides?
I don't know but sometimes apk updaters have two things that can be the
problem. One is they have a queue. The other is they have parallel streams. >>
Let's say you set the app updater to only one stream at a time.
And let's say you have a queue but one app in the queue is hung up.
In that case, nothing will update while that one app is hung up.
Not arguing, exactly, but it makes no sense that google would just
randomly stop updating while there are still apps in the queue.
If it decides that 100 need updating, it must know that there are 100
updates available. Why would it arbitrarily stop -- especially without notifying the user that only nn will be updated without restarting the process?
It will say something like "Updates only Google apps" or similar.
No conflict. I don't expect it to update F-Droid stuff.
Neither do I expect google to outright lie. Mistakes, annoyances, other
shit sure, but not actually lie. "Update all" ought to mean exactly
that. OTOH, Bard/Gemini wasn't above lying, and neither was openai.
So what updater do you recommend?
Even if it did finish updating, it only updates a small minority of the
apps that have updated versions available in the Google Play Store anyway.
OK, so the answer is "Because it's a lying bastard." I can accept than.
Using <news:url5ia$3al7o$1@dont-email.me>, The Real Bev wrote:
And a variant problem: I have over 150 apps, most of which I rarely
use, and do not update them automatically -- I'd rather do them all at
once when the process won't interfere with my actual usage. Almost all
are genuine playstore apps.
I don't think the Google PlayStore updates *all* the apps you've installed from the Google Play Store. It only updates *some* of the apps you've installed from the Google Play Store.
You can easily prove this to yourself by running a *real* app updater app. And then comparing it against what the Google Play Store update found.
In my experiments, admittedly from long ago, it updated something like one tenth or one twentieth of the apps that had updates on the Google Play
Store. This is easy to prove yourself.
1. Run the Google Play Store app updater.
2. Run a real app updater.
The difference is astounding.
In my experiments, admittedly from long ago, it updated something like one >> tenth or one twentieth of the apps that had updates on the Google Play
Store. This is easy to prove yourself.
I never experienced this. And I work in a company which develops Android
apps as well and know how publishing apps in Google Play works and how
the update mechanisms work.
1. Run the Google Play Store app updater.
2. Run a real app updater.
The difference is astounding.
The difference is just *when* an app will be updated and not *if* this
will happen.
Arno Welzel wrote on Sat, 2 Mar 2024 22:27:08 +0100 :
In my experiments, admittedly from long ago, it updated something like one >>> tenth or one twentieth of the apps that had updates on the Google Play
Store. This is easy to prove yourself.
I never experienced this. And I work in a company which develops Android
apps as well and know how publishing apps in Google Play works and how
the update mechanisms work.
1. Run the Google Play Store app updater.
2. Run a real app updater.
The difference is astounding.
The difference is just *when* an app will be updated and not *if* this
will happen.
It would take you less time to run the test, than to complain
that I told you that you're wrong - and yes - I have run the test.
And I develop Android software and I *know* how Google Play Services
work. Recently the company I work for, published an update for one of
their apps - and you would not see this in Google Play as update since
you are not in the user group for that. However a "real" update tool may still show this by ignoring the intendend limitations like region or
language specific updates.
Arno Welzel wrote on Sun, 3 Mar 2024 15:10:44 +0100 :
And I develop Android software and I *know* how Google Play Services
work. Recently the company I work for, published an update for one of
their apps - and you would not see this in Google Play as update since
you are not in the user group for that. However a "real" update tool may
still show this by ignoring the intendend limitations like region or
language specific updates.
If you claim to be a developer Android software, then I can claim to be the Queen of England even though neither of us has the qualifications for each.
You're simply guessing.
The fact remains that out of x updates that are available for your device, for your OS version, for your API, for your region, etc., the Google Play Store update will show about 1/10th of x out of those x available updates.
Run the test.
I don't have to - I *know* that there is a difference. But you fail to understand *why* this is so.
Arno Welzel wrote on Mon, 4 Mar 2024 10:52:34 +0100 :
I don't have to - I *know* that there is a difference. But you fail to
understand *why* this is so.
OK. Good. I just wanted everyone to know that if they run the Google Play Store app updater, it will find something like 1/10th the number of apps
that have updates available at that very moment on the Google Play Store.
Arno Welzel wrote on Mon, 4 Mar 2024 10:52:34 +0100 :
I don't have to - I *know* that there is a difference. But you fail to
understand *why* this is so.
OK. Good. I just wanted everyone to know that if they run the Google Play
Store app updater, it will find something like 1/10th the number of apps
that have updates available at that very moment on the Google Play Store.
Correct. But this what the app publishers *want* and not a bug in Google Play.
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 297 |
Nodes: | 16 (2 / 14) |
Uptime: | 04:23:32 |
Calls: | 6,666 |
Files: | 12,213 |
Messages: | 5,335,879 |