Size of the Anyline SDK Bundle Explained - iOS

 


Why is the Anyline SDK Bundle so large?

Integrating our SDK can add up to 90MB for Android, 50MB for iOS and 20MB for Windows, due to all the necessary resources for all the processing. We are working on this and hope to be able to optimise further in the future.

Please note that the Anyline SDK requires the inclusion of computer vision and machine learning libraries, because there is no server side processing. This enables fully offline functionality and increased safety. The combination of all these resources, therefore, increases the size of our SDK.

Below is a table of how much space each module takes up in your app.

Version 42.3.0

MODULE(S)

SIZE OF ALL ADDED

OVERALL SIZE

SIZE WHEN REMOVED

MODULE(S)

SIZE OF ALL ADDED

OVERALL SIZE

SIZE WHEN REMOVED

All Modules

133.3MB

73.7MB

59.9MB

module_tire

133.3MB

12.5MB

120.8MB

module_license_plate

133.3MB

9.7MB

123.6MB

module_document

133.3MB

0.6MB

132.7MB

module_barcode

133.3MB

0MB

133.3MB

module_anyline_ocr

133.3MB

10.3MB

123MB

module_id

133.3MB

18.7MB

114.6MB

module_energy

133.3MB

21.9MB

111.4MB

Version 43

MODULE(S)

SIZE OF ALL ADDED

OVERALL SIZE

SIZE WHEN REMOVED

MODULE(S)

SIZE OF ALL ADDED

OVERALL SIZE

SIZE WHEN REMOVED

All Modules

181.8MB

73.6MB

108.2MB

module_tire

181.8MB

12.5MB

169.3MB

module_license_plate

181.8MB

9.7MB

172.1MB

module_document

181.8MB

0.5MB

181.3MB

module_barcode

181.8MB

0MB

181.8MB

module_anyline_ocr

181.8MB

10.3MB

171.5MB

module_id

181.8MB

18.7MB

163.1MB

module_energy

181.8MB

21.9MB

159.9MB

 


What exactly does the Bundle SDK include?

THE ANYLINE SDK EXAMPLES BUNDLE FOR ANDROID

  • The Anyline SDK in the latest version for offline integration

  • A build version of the Anyline OCR Examples App

  • The source code of the Anyline OCR Examples App

  • The Javadoc for the Anyline SDK

  • This documentation

  • The third party licenses

  • A Readme

  • The current Release Notes

THE ANYLINE SDK EXAMPLES BUNDLE FOR iOS

  • Framework: Contains the Anyline.framework and AnylineResources.bundle

  • Documentation: Contains a html and docset version of an appledoc style interface documentation

  • AnylineExamples: Contains a simple app where each plugin is implemented - it can be installed right away

  • LICENSE: The Third Party License Agreements

  • RELEASE_NOTES: Information about any changes

THE ANYLINE SDK EXAMPLES BUNDLE FOR UWP

  • The Anyline SDK in the latest version for offline integration

  • The source code of the Anyline Windows Examples App

  • The code documentation for the Anyline SDK

  • The third party licenses

  • The API Reference

  • A Readme

 


Reducing the Size of the SDK

iOS

Add the following script to Run Script in your Build Phases of your project.

# --Available Modules-- DIR_DOCUMENT="module_document" DIR_OCR="module_anyline_ocr" DIR_BARCODE="module_barcode" DIR_ENERGY="module_energy" DIR_ID="module_id" DIR_LICENSE_PLATE="module_license_plate" DIR_TIRE="module_tire" # Identify any of the SDK modules from the list above that the app requires # eg ${DIR_ID} ${DIR_ENERGY} and set the MODULES_TO_KEEP_ARRAY accordingly MODULES_TO_KEEP_ARRAY=(${DIR_ID}, ${DIR_LICENSE_PLATE}) echo "Modules to include: ${MODULES_TO_KEEP_ARRAY[@]}" FILENAME="AnylineResources.bundle" MODULES_DIR_PATH=$(find "${CODESIGNING_FOLDER_PATH}" -iname ${FILENAME}) MODULES_ARRAY=(${DIR_OCR} ${DIR_BARCODE} ${DIR_DOCUMENT} ${DIR_ENERGY} ${DIR_ID} ${DIR_LICENSE_PLATE} ${DIR_TIRE}) if ((${#MODULES_TO_KEEP_ARRAY[@]})); then for module in "${MODULES_ARRAY[@]}"; do if [[ ! " ${MODULES_TO_KEEP_ARRAY[*]} " =~ " ${module} " ]]; then echo "Removing module ${module}" rm -rf "${MODULES_DIR_PATH}/${module}" fi done fi

WARNING: Please make sure not to delete the module or any other resources you require!

 


Tutorial Videos

Here, you will be able to watch our SDK Size Reduction Tutorial video for iOS.

 


Important Notes