Detect ABI_STRING correctly

This commit is contained in:
Mygod
2020-08-12 01:39:50 +08:00
parent 27e93b2a78
commit f5ea58e35a

View File

@@ -12,7 +12,10 @@ object AppProcess {
*/
@get:RequiresApi(29)
val genericLdConfigFilePath: String get() {
"/system/etc/ld.config.${Build.VERSION.SDK_INT}.txt".let { if (File(it).isFile) return it }
val classVMRuntime = Class.forName("dalvik.system.VMRuntime")
val abiString = classVMRuntime.getDeclaredMethod("getCurrentInstructionSet").invoke(
classVMRuntime.getDeclaredMethod("getRuntime").invoke(null))
"/system/etc/ld.config.$abiString.txt".let { if (File(it).isFile) return it }
if (Build.VERSION.SDK_INT >= 30) "/linkerconfig/ld.config.txt".let {
check(File(it).isFile) { "failed to find generated linker configuration from \"$it\"" }
return it