配置EasyAR Sense for iOS

这篇文章介绍如何使用EasyAR package配置EasyAR非Unity的iOS工程。

如果你需要运行EasyAR非Unity的iOS样例,请阅读 这篇文章

安装需求

  • XCode 12 或更新版本(AppStore接受的XCode最低版本请参考 苹果官方文档

  • ARM64 CPU的iPhone、iPad等iOS真机(EasyAR不支持在模拟器和ARMv7上运行,但为了方便编译,可能存在只包含空实现接口的库)

添加 Frameworks

Frameworks, Libraries, and Embedded Content 中添加 easyar.xcframework。

  • easyar.xcframework

../_images/image53.png

禁用 Bitcode

EasyAR 不使用bitcode也不提供 bitcode 兼容性。

需要保证在配置中禁用bitcode,

../_images/image54.png

初始化EasyAR

使用easyar_Engine的initialize: 方法来初始化EasyAR。你可以添加初始化代码如下,

[easyar_Engine initialize:key];

隐私配置

需要配置一些隐私设置。

如果要使用 camera,添加 Privacy - Camera Usage Description

../_images/image55.png

如果要使用录屏,添加 Privacy - Microphone Usage Description

../_images/image56.png

其它代码

剩下的就是写EasyAR的逻辑以及其它代码。你可以参考EasyAR的样例来实现。

如何使用Swift API

EasyAR Sense Swift API 是以源代码形式提供的,这样可以提供最好的兼容性(苹果从Swift 5开始提供ABI兼容)。

使用EasyAR Sense Swift API需要首先创建一个framework工程然后将framework target嵌入到你的工程中。由于不同项目的配置可能会有所不同,所以EasyAR没有提供预先配置好的XCode工程。

创建 EasyARSwift framework 工程

  1. 创建一个 Cocoa Touch Framework 类型的新工程并命名为EasyARSwift

    ../_images/image91.png ../_images/image92.png

    你可以选择将EasyARSwift工程嵌入到你的app工程里面或创建独立的工程。

    ../_images/image93.png
  2. 导入EasyAR Swift代码到 EasyARSwift 工程

    ../_images/image94.png

    XCode自动生成的 EasyARSwift.h 文件并没有被使用,可以安全删除。

  3. 在build settings中配置 Objective-C Bridging Header

    ../_images/image95.png

    请注意,这个选项在导入swift文件之前不会显示在XCode选项中,所以请一定先导入Swift代码再进行配置更改。

  4. 导入 easyar.xcframework 到 EasyARSwift 工程中

  5. 关闭 Bitcode

    EasyAR 不使用bitcode也不提供 bitcode 兼容性。

    需要保证在配置中禁用bitcode,

    ../_images/image54.png
  6. Deployment Target

    根据你自己的app工程修改 deployment target,保证 EasyARSwift的工程的deployment target比app工程的小或相等。

    ../_images/image96.png

嵌入和使用 EasyARSwift framework

  1. 在工程中嵌入EasyARSwift framework

    ../_images/image97.png ../_images/image98.png
  2. 在Swift源代码中 import EasyARSwift

    ../_images/image99.png
  3. 代码书写方式可以参考 HelloARSwift 样例中的代码或 API Reference