3 ms·
every Android phone runs Linux...
by blibble 5y ago
every Android phone runs Linux...
- pjmlp 5y agoWhich isn't part of the public APIs, https://developer.android.com/ndk/guides/stable_apis https://developer.android.com/ndk/guides/stable_apis
- blibble 5y agoI'm not really sure what your point is the NT native kernel API is also undocumented
- pjmlp 5y agoExactly, that is why applications that don't want to break with each OS update don't touch those APIs, making them irrelevant for application developers. Also, contrary to Windows, since Android 7, applications that link to undocumented APIs get terminated as security measure. Ask the termux guys how much fun they are having by refusing to acknowledge the fact that they have to use JNI and not Linux syscalls for their stuff.
- blibble 5y ago> Also, contrary to Windows, since Android 7, applications that link to undocumented APIs get terminated as security measure. "undocumented" has nothing to do with it there is a sandbox, syscalls are checked by seccomp and those not explicitly permitted will result in termination of the application it doesn't care where the syscall comes from, be that libc, golang style, or calling svc #0 yourself additionally: the kernel is open source... there are no "undocumented" syscalls this also has nothing to do with the original point
- pjmlp 5y agoSure it has, because it doesn't matter if it is open source or not, if it is a stable API described on the NDK documentation it is not allowed. Something that termux guys are having some issues to swallow, regarless of Linux being the kernel, it is not allowed to do what they want, wrapping Java APIs via JNI is the only allowed way.