平台需求

平台支持

EasyAR Sense 是跨平台的 AR SDK,支持以下操作系统

  • Windows 7 及以上版本(7/8/8.1/10)

  • Mac OS X 10.15及以上版本

  • Android 4.2 及以上版本

  • iOS 8.0 及以上版本

关于最新Android 和 iOS系统,

  • EasyAR Sense 可以兼容 Android 10.0 (Android P)(在 EasyAR Sense 4.0 发布的时间点最新的Android版本)

  • EasyAR Sense 可以兼容 iOS 13(在 EasyAR Sense 4.0 发布的时间点最新的iOS版本)

EasyAR Sense通常不会依赖很多系统API,所以如果 Android/iOS 发布了新版本,EasyAR Sense 一般都可以正常使用。

CPU 架构

  • Windows: x86, x86_64

  • Mac: x86_64

  • Android: armv7a, arm64-v8a

  • iOS: arm64

关于 Android arm64-v8a

EasyAR Sense 提供 arm64-v8a 的二进制文件。开发者需要自己决定是否使用这些文件。

如果Android 设备是64位芯片并且有64位子系统,Android 会检查名字为 arm64-v8a 的文件夹,如果这个文件夹在 apk中存在,系统将会使用 64位的库文件。

对于EasyAR 或其他第三方库或开发者自己提供的 arm64-v8a 的库文件有两种解决方法,

  1. 删除所有 arm64-v8a 文件,并删除 arm64-v8a 文件夹。这种情况你将失去对arm64架构下特定情况的优化,但所有功能仍可以正常使用。因为当前基本上所有 Android 设备都没有抛弃对 armv7 架构的兼容性。这个选择会带来额外的好处,可以减小apk的大小。

  2. 保证EasyAR及所有其他库的 arm64-v8a 文件都被打包到apk中。

请注意,如果你是 Android ROM 开发者,或者你工作在系统层或SOC层,或者工作在定制的设备上,上面的描述可能不完全适用。通常这种情况下你应该对你的需求了解的很清楚。

API 语言

EasyAR Sense默认提供这些编程语言接口,

  • Windows: C, C++17, traditional C++, C#

  • Mac: C, C++17, traditional C++, C#

  • Android: Java (also works for Kotlin), C, C++17, traditional C++, C#

  • iOS: Swift, Objective-C, C, C++17, traditional C++, C#

由于 EasyAR Sense 提供 C API,你总是可以在需要的时候自己创建其他语言的绑定。

Swift API for iOS

  • EasyAR Sense Swift API for iOS 兼容 Swift 4 和 Swift 5.

  • 在 EasyAR Sense 4.0 发布的时间点,最新的 Swift 版本是 Swift 5.1。

EasyAR Sense Swift API 是以源代码形式提供的,这样可以提供最好的兼容性。

渲染API要求

大部分功能不要求特定的渲染API,但以下功能除外。

  • Recorder,要求OpenGLES 2.0或3.0

  • VideoPlayer,要求OpenGLES 2.0或3.0