Keyboard Shortcuts
ctrl + shift + ? :
Показати всі комбінації клавіш
ctrl + g :
Не доступний для безкоштовних груп.
ctrl + shift + f :
Знайти
ctrl + / :
Сповіщення
esc to dismiss
Лайки
Пошук
Software for Android
On Sat, Dec 28, 2024 at 1:56 PM Jerry Stuckle via groups.io <ai0k=
ai0k.net@groups.io> wrote: Peter,Nope, it's not the kernel version, it's the version of the Android API that the application was built under. Newer API versions don't support very old versions of Android. https://apilevels.com/ and https://support.google.com/googleplay/android-developer/answer/11926878 If you don't see it in the Play Store, then the second link provides the rationale. 73, -Rick -- Rick Murphy, D. Sc., CISSP-ISSAP, K1MU/4, Annandale VA USA |
Rick,
That's true to a certain point. However, the API is just an interface to the kernel and must be compatible with the kernel. Changes in the kernel often require changes in the API. Perhaps not in the interface but in the implementation. And I can find the app in the Play Store but an attempt to download it results in the message that the app is not compatible with my Android version. 73, Jerry, AI0K |
Not really . . . apps need to be compatible with the runtime libraries (try to run something too new on a Linux based system, and the errors you getvare almost always symbol errors from libc, not including the newer ones. Running older code rarely fails . . . ) - almost nothing accesses the kernel directly on any Linux based system (and those interfaces are standards driven, and rarely change - mainly things presented as devices.
переключити цитоване повідомлення
Показати цитований текст
For instance (no Android, but the Linux foundation is similar), I can boot my systems ino a 3.x, 4.x, 5.x and 6.x family kernel, and absolutely nohing breaks app-wise - libc never changes. - Tim On December 29, 2024 12:52:41 PM CST, Jerry Stuckle <ai0k@...> wrote:
Rick, --
Sent from my Android device with K-9 Mail. Please excuse my brevity. |
Tim,
I've worked on multiple APIs in the 50+ years I've been programming (including as an IBM employee) on everything from MS-DOS 1.0 to mainframe operating systems like MVS. Yes, few applications interface directly with the kernel. But the API consists of two parts - the interface and the implementation. The interface is what the applications see. The implementation is how it interacts with the kernel and other resources. A change in the kernel can definitely change the implementation (which is why you have version-specific libraries). But sometimes the changes in the kernel can't be covered by the implementation without changes to the interface. And yes, it does happen which is why application sometimes have version specific libraries. So you can't say that changes in the kernel do not affect applications. They definitely can. That may or may not be the problem here but not knowing the reason for the rejection the biggest thing I see between being able to download or not is the kernel version. Jerry, AI0K |
I said that they are a layer away - apps go through the system shared libraries to access kernel functions in most cases, so reallynare well isolated. 36 years in *nix as a professional, including System-V at the source level, taught by AT&T, (If Win*/MS does something tupid, I'm not at all surpised . . . ). Essentiallynhave my own Linux distro, and can't recall a libc update forcing a kernel update (or the opposite) other than the change away from a.out binary format. I do load software from my own source builds wherever possible though, due to app symbol/lib version issues . . .).
переключити цитоване повідомлення
Показати цитований текст
On December 29, 2024 8:16:02 PM CST, Jerry Stuckle <ai0k@...> wrote:
Tim, --
Sent from my Android device with K-9 Mail. Please excuse my brevity. |
Well, first of all, Linux is only one OS out there, so it is not really a great reference. There are many other OS's out there, several of which I've worked on, from embedded systems to mainframes.
But I never said an update to libc forced a kernel update. In fact, just the opposite. The kernel is the lowest level and everything must interface to it. And while developers do their best to maintain compatibility, it's not always possible. This is why sometimes an application requires a certain library version. If what you are saying is true, why is it I (at the latest kernel level) can't install it but other can? 73, Jerry, AI0K |
Jerry,
You're stuck on this point but it's simply not true. It's not the kernel. The issue here is the API level used to build the app. That's it. It's the API level. When the Play Store says that an app is not compatible with the version of Android on your phone, it's the API version shipped with that version of Android and how far back it supports, as well as the minimum API version the application was built to require Nothing more, nothing less. Has zero to do with the kernel. The play store has no idea what kernel your phone is running. I posted the page with the proof (compatibility levels for each Android release). For the record, I've been an android developer, kernel hacker, and reverse engineer for over ten years. XKCD "Recognized Developer" for my contributions to the rooting community. The same thing is true for Apple applications. I build TQSL software for MacOS, with OSX 10.10 as the minimum allowed API version. If you're running anything 10.10 or later, it'll work fine - which means several different kernel versions from 10.10 to 15.2 - but if you try to use 10.9 it'll fail as the userland libraries don't have the API interfaces that the application needs. 10.10 came out in 2014, so Apple has maintained kernel compatibility for 10 years.) As Tim said, the kernel changes but remains largely backward compatible. The userland libraries do not. And finally, Windows - same issue, but much more tedious due to DLL Hell. The same application works from Windows XP to Windows 11 without changes (That's what, 23 years of kernel updates and no compatibility issues.) .The kernel doesn't matter. -Rick On Mon, Dec 30, 2024 at 7:21 PM Jerry Stuckle via groups.io <ai0k= ai0k.net@groups.io> wrote: Well, first of all, Linux is only one OS out there, so it is not really-- Rick Murphy, D. Sc., CISSP-ISSAP, K1MU/4, Annandale VA USA |
No mention has been made on a lot of the installs as to if they installed via the store, or an apk.
переключити цитоване повідомлення
Показати цитований текст
The store looks at device type (tablet, phone, etc.), Android version, and perhaps other things to determine if it should allow a download, and I beliece that stuff is set by the software owner/publisher, not determined by the app directly. As a counter argument, if the kernel were the factor, kernel upgrades as part of Android patching would cause already loaded apps to no longer work, and I have never see that happen (or a bunch of patches immediately after an Android patch). And I speak to Linux (or *nix in gereral) since it's what Android is rooted, and it's because it's where my professional experience lies (Ultrix, AIX, SunOS, Solaris, Ultrix, Irix, whatever Convergent called thiers, SysV68K SysV88K (Motorola) and a few others . . . On December 30, 2024 7:20:57 PM EST, Jerry Stuckle <ai0k@...> wrote:
Well, first of all, Linux is only one OS out there, so it is not really a great reference. There are many other OS's out there, several of which I've worked on, from embedded systems to mainframes. --
Sent from my Android device with K-9 Mail. Please excuse my brevity. |
Повідомлення
Більше
Додаткові параметри
Більше
to navigate to use esc to dismiss