Browse Source

安装sdk和工具时,先接受licence,后安装

dengdx 2 days ago
parent
commit
9b14c1a273
1 changed files with 9 additions and 10 deletions
  1. 9 10
      .build/setup-android-sdk.js

+ 9 - 10
.build/setup-android-sdk.js

@@ -198,7 +198,15 @@ async function main() {
     setGitHubEnv('ANDROID_HOME', SDK_ROOT);
     setGitHubEnv('ANDROID_HOME', SDK_ROOT);
     setGitHubEnv('ANDROID_SDK_ROOT', SDK_ROOT);
     setGitHubEnv('ANDROID_SDK_ROOT', SDK_ROOT);
     
     
-    // 5. 安装 platforms 和 build-tools
+    // 5. 先接受 licenses(使用 --yes 参数)
+    console.log('📝 接受 SDK licenses...');
+    runSdkManager([
+      '--licenses',
+      `--sdk_root=${SDK_ROOT}`,
+      '--yes'
+    ]);
+    
+    // 6. 然后安装 platforms 和 build-tools
     console.log('📦 安装 Android SDK 组件...');
     console.log('📦 安装 Android SDK 组件...');
     runSdkManager([
     runSdkManager([
       'platforms;android-35',
       'platforms;android-35',
@@ -206,15 +214,6 @@ async function main() {
       `--sdk_root=${SDK_ROOT}`
       `--sdk_root=${SDK_ROOT}`
     ]);
     ]);
     
     
-    // 5. 接受 licenses(使用 echo y)
-    console.log('📝 接受 SDK licenses...');
-    const sdkManagerPath = path.join(CMDLINE_TOOLS_DIR, 'bin', 'sdkmanager.bat');
-    const licenseCmd = `echo y | "${sdkManagerPath}" "--licenses" "--sdk_root=${SDK_ROOT}"`;
-    execSync(licenseCmd, { 
-      stdio: 'inherit',
-      shell: 'cmd.exe'
-    });
-    
     console.log('🎉 Android SDK 安装完成!');
     console.log('🎉 Android SDK 安装完成!');
     
     
     // 清理临时文件
     // 清理临时文件