ios_sdk_copy.sh
1.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/bin/bash
set -euo pipefail
# 使用前注意:doublefeel_flutter 和 hippo 需要位于同一目录下。
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
SOURCE_SDK_DIR="$SCRIPT_DIR/SDK/iOS_SDK"
SOURCE_RUNNER_DIR="$SCRIPT_DIR/ios/Runner"
HIPPO_PROJECT_DIR="$SCRIPT_DIR/../hippo/hippo"
TARGET_SDK_DIR="$SCRIPT_DIR/../hippo/PodLocal/Flutter/SDK"
TARGET_PIGEON_DIR="$HIPPO_PROJECT_DIR/Pigeon"
if [ ! -d "$SOURCE_SDK_DIR" ]; then
echo "iOS SDK目录不存在:$SOURCE_SDK_DIR"
exit 1
fi
if [ ! -d "$HIPPO_PROJECT_DIR" ]; then
echo "hippo项目目录不存在:$HIPPO_PROJECT_DIR"
exit 1
fi
if [ -d "$TARGET_SDK_DIR" ]; then
echo "目标SDK目录已存在,正在替换..."
rm -rf "$TARGET_SDK_DIR"
else
echo "目标SDK目录不存在,正在新增..."
fi
mkdir -p "$(dirname "$TARGET_SDK_DIR")" "$TARGET_PIGEON_DIR"
cp -R "$SOURCE_SDK_DIR" "$TARGET_SDK_DIR"
echo "正在复制GeneratedPluginRegistrant文件..."
cp -f \
"$SOURCE_RUNNER_DIR/GeneratedPluginRegistrant.h" \
"$SOURCE_RUNNER_DIR/GeneratedPluginRegistrant.m" \
"$HIPPO_PROJECT_DIR/"
echo "正在复制Pigeon Api文件..."
pigeon_api_files=("$SOURCE_RUNNER_DIR"/Pigeon/*Api.swift)
if [ ! -e "${pigeon_api_files[0]}" ]; then
echo "未找到Pigeon Api文件:$SOURCE_RUNNER_DIR/Pigeon/*Api.swift"
exit 1
fi
cp -f "${pigeon_api_files[@]}" "$TARGET_PIGEON_DIR/"
echo "操作完成。"