FAQ #16927, published on 2018-11-05, updated on 2018-12-13
Android 8 and higher - What to do when ShellExecute("myApp.apk") returns "App not installed" ?
Starting with Android 8, installing an Apk requires a new permission, INSTALL_PACKAGES, that must be add manually to the manifest.

When generating the Android application, on the Configuration tab, click the "Advanced configuration" button, then click "Edit the manifest" then :

- select the first line (manifest)
- click "add a child node" button
- enter "uses-permission" for the node name
- enter "android.permission.INSTALL_PACKAGES" in the input field below

Note too, and it's true for all Android versions, that the Apk you want to install, must be on an external storage.