local appName=Export.getProperty("project.app_name") appName=string.gsub(appName,"'","\\'") Export.setProperty("local.app_name",appName) require "lfs" local java=Export.getProperty("export.javaPath") if lfs.attributes(java,"mode")~="directory" then if Export.getProperty("sys.exeExtension")==".exe" then local rPathData,rPathType = nil,nil local function getPathAndroidStudio() require "hkey" local key = windows.hkey.HKEY_LOCAL_MACHINE:open("Software\\Android Studio",windows.hkey.KEY_READ|windows.hkey.KEY_WOW64_64KEY) if key then rPathData,rPathType = key:queryvalue("Path") print("Registry:","AndroidPath:",rPathData) end end if pcall(getPathAndroidStudio) and rPathData then else rPathData="C:/Program Files/Android/Android Studio" end --Check JBR first (new electric eel android studio) java = rPathData.."/jbr" if not lfs.attributes(java) then java = rPathData.."/jre" end else java="/Applications/Android Studio.app/Contents/jbr/Contents/Home" end Export.setProperty("export.javaPath",java) end print("Java Path:"..java) local home=Export.getProperty("export.androidPath") if lfs.attributes(home,"mode")~="directory" then home=Export.getProperty("sys.homeDir") if Export.getProperty("sys.exeExtension")==".exe" then home=home.."/AppData/Local/Android/sdk" else home=home.."/Library/Android/sdk" end Export.setProperty("export.androidPath",home) end print("Android SDK Path:"..home) local platforms=home.."/platforms" local sdkVer=Export.getProperty("export.androidSdk") if lfs.attributes(platforms.."/android-"..sdkVer,"mode")~="directory" then sdkVer=0 for adir in lfs.dir(platforms) do if lfs.attributes(platforms.."/"..adir,"mode")=="directory" then if adir:lower():sub(1,8)=="android-" then sdkVer=math.max(tonumber(adir:sub(9)) or 0,sdkVer) end end end Export.setProperty("export.androidSdk",sdkVer) end print("Android SDK Version:"..sdkVer) local tools=home.."/build-tools" local buildVer=Export.getProperty("export.androidTools") if lfs.attributes(tools.."/"..buildVer,"mode")~="directory" or buildVer=="" then buildVer="" for adir in lfs.dir(tools) do if lfs.attributes(tools.."/"..adir,"mode")=="directory" then local _,dots=adir:gsub("%.",".") if adir~=".." and dots==2 and adir>buildVer then buildVer=adir end end end Export.setProperty("export.androidTools",buildVer) end print("Android Build Tools:"..buildVer) local ap=require("Tools/export_android") tmp tmp tmp local autorotation=tonumber(Export.getProperty("project.autorotation")) or 0 local rotation=tonumber(Export.getProperty("project.orientation")) or 0 local so="portrait" if autorotation==1 then if rotation==0 or rotation==2 then so="sensorPortrait" else so="sensorLandscape" end elseif autorotation==2 then so="fullSensor" elseif autorotation==3 then so="nosensor" else if rotation==0 then so="portrait" elseif rotation==1 then so="landscape" elseif rotation==2 then so="reversePortrait" elseif rotation==3 then so="reverseLandscape" end end Export.setProperty("local.orientation",so) local ap=require("Tools/export_android") ap.usePermission("android.permission.WRITE_EXTERNAL_STORAGE") local ap=require("Tools/export_android") ap.useFeature("android.hardware.vr.headtracking",true) if Export.isSet("export.oculusHT") or Export.isSet("export.oculusHTR") then ap.usePermission("com.oculus.permission.HAND_TRACKING") ap.useFeature("oculus.software.handtracking",Export.isSet("export.oculusHTR")) end if Export.isSet("export.oculusPT") or Export.isSet("export.oculusPTR") then ap.useFeature("com.oculus.feature.PASSTHROUGH",Export.isSet("export.oculusPTR")) end ap.usePermission("com.oculus.permission.USE_ANCHOR_API") ap.usePermission("com.oculus.permission.USE_SCENE") app/src/main/assets/assets app/src/main/assets/assets ../../../../.. gradlew [[[local.gradleTarget]]] [[[local.gradleExtra]]] /c gradlew.bat [[[local.gradleTarget]]] [[[local.gradleExtra]]] .. tmp install -r [[[local.apkname]]][[[local.isUnsigned]]].[[[local.apkext]]]