Extracting the dtb from an Android image is guaranteed to result in boot failure. Even if you rename dtb.img and configure uEnv.ini to use it correctly, the Android vendor kernel you pulled the dtb from has no code in-common with the mainline kernels that LE uses in the AMLGX image and kernel and dtb need to be version aligned.
If the box has an S905W chip the only device-tree files that might work are meson-gxl-s905w-p281.dtb or the similar Tanix TX3 mini device. It's a cost-engineered box with a CPU that runs/clocks slower than other GXL designs so p212 or similar may attempt to run the CPU faster than it can boot or reliably operate at. I would only use LE12.2 or perhaps an LE13 nightly image to attempt boot. LE9 images predate the existance of S905W (so don't support the chipset) and we no longer support those images.
If the device isn't booting to the LE splash screen or Kodi the only way for us to provide any support is to see the early boot log. This is obtained by connecting a USB serial UART cable to TX/RX/GND pins on the board; assuming they exist, and if not they need to be soldered in-place. The log will show what Amlogic u-boot attempts (or not). In the absence of the log we are blind to the issue and it's not worth the time/effort to guess at things.
NB: read https://wiki.libreelec.tv/hardware/amlogic to understand a little more about LE differences