Using CocoaPods is the easiest way to integrate DyScan. If you would rather do this, click here.
After getting the access token for Dyneti's repo access, go to any temporary directory outside your project directory and clone our repository with the following terminal commands:
When asked for a password for user "dyscan", paste the access token that we provided.
Navigate to the variant directory of your choice (Universal is recommended).
Include DyScan.xcframework into your project.
Include DyScan.xcframework under “Frameworks, Libraries, and Embedded Content” in your app. You can see this in your Xcode project’s “General” settings. Select "Embed & Sign" option from Embed column.
If your app does not already ask for camera permissions, add the key “NSCameraUsageDescription” (Privacy - Camera Usage Description) to your app's Info.plist file. You should set the value to be the string a user sees when they are prompted for the camera permission (e.g. To scan credit cards).
DyScan should be integrated properly now. See this guide on how to interface with it.
Add DyScanAssets.xcassets, DyScan.xcframework and TensorFlowLiteC.xcframework into your project
Go to your target's Build Phases tab
Add DyScan.xcframework and TensorFlowLiteC.xcframework into Link Binary With Libraries phase with Status Required set
Add DyScanAssets.xcassets into Copy Bundle Resources phase
Go to your target's General tab
Verify that in Frameworks, Libraries, and Embedded Content section DyScan.xcframework and TensorFlowLiteC.xcframework have Embed set to Do Not Embed
If you are getting C/C++ errors during build process, add libc++.tbd into Link Binary With Libraries phase with Status Required set in your target's Build Phases tab.
If your app does not already ask for camera permissions, add the key “NSCameraUsageDescription” (Privacy - Camera Usage Description) to your app's Info.plist file. You should set the value to be the string a user sees when they are prompted for the camera permission (e.g. To scan credit cards).
DyScan should be integrated properly now. See this guide on how to interface with it.