导入 XuXuCheck 工程(iOS 干化学尿液试纸分析 App)

从桌面工程复制而来,作为本仓库的 Xuxucheck/ 子目录。

为控制仓库体积做了两处删减:
- 移除 Frameworks/opencv2.xcframework 下的两个 visionOS 切片
  (xros-arm64、xros-arm64-simulator,合计约 106 MB),并同步删掉该
  xcframework 内 Info.plist 里对应的两条 AvailableLibraries 记录,
  只保留 ios-arm64 与 ios-arm64_x86_64-simulator。
- 移除全部 .DS_Store 与 xcuserdata/。

已用 xcodebuild 从本目录完整编译验证:BUILD SUCCEEDED,
ProcessXCFramework 以 --platform ios 成功选中框架,产物含 3699 个 cv:: 符号
(OpenCV 确实链入),嵌入 framework 3 个,与移除无用 pod 之后的状态一致。

仓库约 206 MB,其中 OpenCV 203 MB、其余源码与依赖约 3 MB。
This commit is contained in:
2026-09-23 14:17:31 +08:00
commit d6aeede2bc
901 changed files with 327267 additions and 0 deletions
@@ -0,0 +1,58 @@
//
// ImagePickerView.swift
// XuXuCheck
//
// Created by henseycai on 2025/7/30.
//
import SwiftUI
struct ImagePickerView: View {
@State var viewModel = ImagePickerViewModel()
var body: some View {
VStack(spacing: 32) {
imageView(for: viewModel.selectedImage)
controlBar()
}
.fullScreenCover(isPresented: $viewModel.isPresentingImagePicker, content: {
ImagePicker(sourceType: viewModel.sourceType, completionHandler: viewModel.didSelectImage)
})
}
@ViewBuilder
func imageView(for image: UIImage?) -> some View {
if let image = image {
VStack{
Text("size\(image.size)")
Text(convertImageToBase64(image: image).md5)
Text("\(convertImageToBase64(image: image).count)")
Image(uiImage: image)
.resizable()
.scaledToFill()
//Text(convertImageToBase64(image: image))
}
}
else {
Text("No image selected")
}
}
func controlBar() -> some View {
HStack(spacing: 32) {
Button(action: viewModel.choosePhoto, label: {
Text("Choose Photo")
})
Button(action: viewModel.takePhoto, label: {
Text("Take a Photo")
})
}.padding()
}
}