From a7f7374f96f8294331c9034c25b1147f32c6a817 Mon Sep 17 00:00:00 2001 From: MrZ626 <1046101471@qq.com> Date: Thu, 26 Aug 2021 15:20:15 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dloadlib=E5=B0=8F=E6=A8=A1?= =?UTF-8?q?=E5=9D=97=E5=9C=A8=E5=AE=89=E5=8D=93=E4=B8=8A=E4=BC=9A=E4=B8=80?= =?UTF-8?q?=E7=9B=B4=E5=A4=8D=E5=88=B6so=E5=BA=93=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Zframework/loadLib.lua | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/Zframework/loadLib.lua b/Zframework/loadLib.lua index a1d471ee..c540e254 100644 --- a/Zframework/loadLib.lua +++ b/Zframework/loadLib.lua @@ -1,18 +1,22 @@ package.cpath=package.cpath..';'..SAVEDIR..'/lib/lib?.so;'..'?.dylib' +local loaded={} return function(libName) if SYSTEM=='Android'then - local platform=(function() - local p=io.popen('uname -m') - local arch=p:read('*a'):lower() - p:close() - return - arch=='aarch64'or arch=='arm64'and'arm64-v8a'or - 'armeabi-v7a' - end)() - love.filesystem.write( - 'lib/libCCloader.so', - love.filesystem.read('data','libAndroid/'..platform..'/libCCloader.so') - ) + if not loaded[libName]then + local platform=(function() + local p=io.popen('uname -m') + local arch=p:read('*a'):lower() + p:close() + return + arch=='aarch64'or arch=='arm64'and'arm64-v8a'or + 'armeabi-v7a' + end)() + love.filesystem.write( + 'lib/libCCloader.so', + love.filesystem.read('data','libAndroid/'..platform..'/libCCloader.so') + ) + loaded[libName]=true + end end local r1,r2,r3=pcall(require,libName) if r1 and r2 then