跳轉到

安裝說明

Android

環境設置

安裝步驟

iOS

事前準備

  • 請確保安裝下列項目:

    • Xcode(版本視蘋果開發者官網各年度 Release 而定)
  • 確認您的專案符合下列規定:

    • 您的專案必須指定下列平台版本或更新版本:

      • iOS 14
    • 當前版本尚不支持以下平台:

      • ❌模擬器

      • ❌macOS

      • ❌tvOS

      • ❌watchOS

  • Arctos Links 視訊 SDK ZIP,包含以下 .xcframework 檔案:

    • ArctosLinks.xcframework(主要框架)

      • ArctosCarrier.xcframework(ArctosLinks 依賴框架)

      • libyuv.xcframework(ArctosLinks 依賴框架)

      • RxSwift.xcframework(ArctosLinks 依賴框架)

        • RxCocoa.xcframework(RxSwift 拓展框架,ArctosLinks未使用)

        • RxRelay.xcframework(RxSwift 拓展框架,ArctosLinks未使用)

        • RxTest.xcframework(RxSwift 拓展框架,ArctosLinks未使用)

        • RxBlocking.xcframework(RxSwift 拓展框架,ArctosLinks未使用)

      • CocoaMQTT.xcframework(ArctosLinks 依賴框架)

        • MqttCocoaAsyncSocket.xcframework(CocoaMQTT 依賴框架)

        • Starscream.xcframework(CocoaMQTT 依賴框架)

步驟1:Xcode 建立 App 專案

備註

若是已存在之舊專案,請跳至步驟2

以新專案為例,以下為 Xcode 15.2 建立,名稱為 SDKSampleApp 的新專案,如圖:

step1

步驟2:確認環境設置

  • 檢查專案 TARGETS -> General 設定

    • Supported Destinations(支援平台)--> iPhone (and iPad)

    • Minimum Deployments(最低部署版本)--> iOS 14.0

    step2-1

    step2-1

  • 檢查專案 TARGETS -> Signing & Capablilties 設定

    • 新增 Background Modes --> ✅Audio, AirPlay, and Picture in Picture

    備註

    SDK 內使用裝置內建麥克風收音功能,啟用 Audio, AirPlay, and Picture in Picture 以允許 App 可以在背景中運行

    step2-3

  • 檢查專案 TARGETS -> Info 設定 --> Custom iOS Target Properties 額外加入以下權限

    • Privacy - Camera Usage Description(相機)

    • Privacy - Microphone Usage Description(麥克風)

    備註

    SDK 內使用裝置內建相機、麥克風收音功能,按照官方 App 設計規範,為了讓 App 能順利運行必須提供相關權限。

    step2-4

  • 導入本公司所提供的 SDK .xcframwork 二進制檔案

    對專案名稱點擊右鍵選單 --> Add Files to "SDKSampleApp"...

    step3-1

    選定提供的相關 .xcframework 後,留意勾選 ✅Copy items if needed

    step3-2

    加入後請確認 TARGETS --> General --> Frameworks, Libraries, and Embedded Contect,所有新增的 .xcframework 是否都有正確的處於 Embed & Sign 狀態,如圖所示:

step3-3

步驟4:初始化 SDK

具體使用方式請參閱章節 使用方法 初始設定

套件管理常見問題

  • 成因

    本公司提供的 SDK 方案,皆採用 Carthage 方式集成,將核心技術 ArctosLinks 與其他公開技術 libyuv、RxSwift、CocoaMQTT 等第三方套件預先編譯成 .xcframework 二進制庫的方式作管理。至於為什麼會使用 .xcframework,是因為這種方式擁有以下優點:

    1. 輕量化且簡單集成

      不會強制將第三方庫的源代碼 SourceCode 都集成到專案目錄內,不同於 CocoaPods 與 Swift Package Manager,而是相對單純的 .xcframework 檔案,能讓開發者以手動的方式,將檔案新增至專案中。

    2. 對 Xcode 開發環境友善

      不需要額外的腳本來自動管理依賴(如 Pods.xcodeproj 之類的文件)。這樣可以保持 Xcode 專案環境結構簡潔、獨立、減少干擾。

    3. 提升項目編譯建構效率

      由於 .xcframework 已經是預編譯的二進制庫。這代表編譯專案項目時並不需要額外在重新編譯這些二進制庫,這對於有在使用多個第三方套件的專案來說,能顯著提高開發效率、節省構建時間。

    4. 安全性與靜態掃描

      靜態掃描並非針對專案本身,而是取決於項目的應用領域、企業制度、法規等,例如:醫療、金融...等領域,通常為了符合法規,就會需要額外處理靜態掃描,檢視源代碼是否符合靜態掃描的規範。.xcframework 是二進制庫,非原始碼本身,自然就不受到靜態掃描的規範所影響,開發者在掃描的後續問題處理上就會相對容易。

當然 .xcframework 雖然有眾多好處,但實際開發上還是有一些缺點需做出取捨。例如:專案內本身若使用一些第三方套件,這些套件本身依賴於其他的公開套件,就有可能遇到會依賴套件重複引用的問題,假設「套件 A 內部引用 C 套件」、「套件 B 內部引用 C 套件」,A、B 套件各自獨立,但卻同時引用著自己內部 C 套件,這情況就會遇到 C 套件重複引用的編譯問題。其次,重複套件在不同的集成方式下也會造成專案編譯上的困難。

現在已知的套件集成方式至少就有3種:CocoaPodsSwift Package ManagerCarthage,若是集成方式混用遇到問題,對於開發者來說,要解決就是件相當麻煩的事。為了應對這種狀況,本公司額外提供了解決方案供開發者使用。

  • CocoaPods 重複套件引用衝突

    解決方案:

    1. 按照 步驟3:新增 ArctosLinks SDK .xcframwork 二進制檔案

    2. 請移除 CocoaMQTT、RxSwift 相同名稱的 Pods 相關套件內容

    3. 若原專案也使用了 RxSwift 核心之外的拓展套件如:RxCocoa、RxRelay...等,請根據我司額外所提供的相關對應名稱 Rx____.xcframework 額外引用

  • Swift Package Manager 重複套件引用衝突

    解決方案:

    1. 按照 步驟3:新增 ArctosLinks SDK .xcframwork 二進制檔案

    2. 請移除 CocoaMQTT、RxSwift 相同名稱的 SPM 相關套件內容,

    3. 若原專案內容引用 RxSwift 核心之外的拓展套件如:RxCocoa、RxRelay...等,請根據我司額外所提供的相關對應名稱 Rx____.xcframework 額外引用

    FAQ-SPM FAQ-SPM2

  • 參考文獻

SDK 後續維護與更新

  • 外部套件版本更新

    待更新...

  • .xcframework簽署驗證

    待更新...

相關文件

Windows (C++ with Qt6)

專案設置

  1. 安裝 Qt6,可藉由 Qt creator 獲取 prebuilt 或自行編譯
  2. Visual Studio 2022 安裝 Qt Visual Studio Tools 延伸模組
    • 延伸模組 -> 管理延伸模組 -> 瀏覽 -> 搜尋 Qt Visual Studio Tools -> 安裝
  3. 建立 QML 專案
  4. 引入 Arctos Links Windows SDK (Release Mode)
    • 新增 include directories
    • 新增 additional library directories
    • 加入 SDK/lib 中的 lib 參考 以上步驟可以參考 Visual Studio Demo APP 專案設置。