Platform Requirements¶
Platform Support¶
EasyAR Sense is a cross-platform AR SDK. The following OSes are supported
Windows 7 and above (7/8/8.1/10)
Mac OS X 10.15 and above
Android 4.2 and above
iOS 9.0 and above
Notice: Due to the dependency for camera implementation on Media Foundation, Media Feature Pack is required on Windows N and KN variants.
More about the latest version of Android and iOS,
EasyAR Sense is compatiable with Android 11.0, the latest version of Android at the point of EasyAR Sense 4.3 release
EasyAR Sense is compatiable with iOS 14, the latest version of iOS at the point of EasyAR Sense 4.3 release
Generally, EasyAR Sense do not rely very much on system APIs, so if there are newer version of Android/iOS release, EasyAR Sense will most likely work smoothly on those systems.
CPU Architectures¶
Windows: x86, x86_64
Mac: x86_64
Android: armv7a, arm64-v8a
iOS: arm64
About Android arm64-v8a¶
EasyAR Sense provides arm64-v8a binaries. Developers need to choose whether to use it or not.
If the client Android system have 64bit subsystem available on arm64 chips, Android will check for the folder with the name of arm64-v8a and if that is available inside your apk, the system will use the 64bit binaries for all native libs.
So, there are two options for arm64-v8a binaries provided by EasyAR or other third parties or yourself,
Remove all arm64-v8a binaries, and remove the arm64-v8a folder. In this case you will lose an opportunity to optimize certain features with arm64 architectures, but all functions should still work, because almost all Android devices do not drop armv7 compatibility at this time. This choice will give you a benefit for smaller size of apk.
Make sure arm64-v8a binaries for EasyAR and all other libraries are available in your apk.
Please note if you are an Android ROM developer or working on system level or SOC level, or if you are working on some customized devices, the above description may not apply. And usually you would know better about your requirement.
API Languages¶
These language bindings are provided by EasyAR Sense by default.
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#
As EasyAR Sense provides a C API, you can always write your own API bindings for other languages.
Swift API for iOS¶
EasyAR Sense Swift API for iOS is compatiable with Swift 4 and Swift 5.
At the point of EasyAR Sense 4.0 release, the latest version of Swift is Swift 5.1.
EasyAR Sense Swift API is provided in source code for the best compatibility.
Rendering API Requirement¶
Most features does not require a specific rendering API, except for the following.
Recorder, which requires OpenGLES 2.0 or 3.0
VideoPlayer, which requires OpenGLES 2.0 or 3.0