一、 環境準備
確保 HBuilderX 為官網最新正式版。
確保 macOS 和 Xcode 均為最新正式版。
確保已在 Xcode 的 Settings -> Accounts 中登錄了有效的 Apple Developer Program 付費帳號。
從 DCloud 官網下載最新的「iOS 離線SDK - 正式版」。
二、 HBuilderX 操作 (導出資源)
在 HBuilderX 中,使用默認模板創建一個全新的 uni-app v3 項目。
打開 manifest.json,切換到「源碼視圖」,為 app-plus -> distribute -> ios 節點手動配置好 bundle ID (例如 com.yourcompany.yourapp)。
執行菜單 發行 -> 原生App-本地打包 -> 生成本地打包App資源,在 unpackage/resources 目錄下生成 UNI... 資源文件夾。
三、 Xcode 操作 (創建全新工程並手動移植)
在 Xcode 中,創建一個全新的 iOS App 項目。
模板: iOS -> App
語言: Objective-C
界面: Storyboard
Team 和 Bundle Identifier: 與 manifest.json 中配置的完全一致。
創建後,進入 Signing & Capabilities 頁面,確認項目簽名完全正常,沒有任何錯誤。
將第7步 HBuilderX 生成的 UNI... 資源文件夾,通過拖拽方式添加到新 Xcode 項目的導航欄中(選項勾選 Copy items if needed 和對應的 App Target)。
將第4步下載的官方 SDK 包裡的 SDK/Libs 文件夾,也通過拖拽方式添加到新 Xcode 項目的導航欄中(選項同上)。
進入 Target 的 General -> Frameworks, Libraries, and Embedded Content 設置,點擊 + 號,手動添加 Libs 文件夾中的所有 .a, .framework, .xcframework 文件。
將官方 SDK 包裡的 AppDelegate.h 和 AppDelegate.m 的文件內容,完全複製並替換掉新項目中的同名文件。
進入 Target 的 Build Settings 標籤頁,確保已選中 All 和 Levels 視圖。
使用從 Finder 拖拽 Libs 文件夾的方式,為 Header Search Paths, Framework Search Paths, 和 Library Search Paths 這三項,都設定上正確的路徑,並確保均設置為 recursive (遞歸)。
四、 最終結果
在 Xcode 中,執行菜單 Product -> Clean Build Folder。
點擊「運行 (Build)」按鈕。
復現的錯誤:
Xcode 在 AppDelegate.h 或 AppDelegate.m 中,於 #import "PDRCore.h" 這一行,報告 'PDRCore.h' file not found 錯誤,編譯最終失敗。
結論:
以上步驟證明,在一個絕對乾淨的環境和全新的 Xcode 工程中,使用官方最新的離線 SDK 進行最標準的手動集成,依然無法找到其核心頭文件。這強烈暗示了 SDK 包本身可能存在文件缺失或結構性問題。
1 个回复
DCloud_iOS_WZT
看起来应该是 .h文件没有添加到工程依赖导致的问题