Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Current »


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

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

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

 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

 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

 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

Important: Uninstall your app on the iPhone if you launch a new version of your app.

When you do a build of your project existing assets on a iPhone will NOT be deleted. When you start your app containing the Anyline SDK the first time on your iPhone our SDK copies assets into a local folder.

If in the future assets will be changed or deleted our SDK checks if this local folder exists. If yes, files will not be overwritten. So uninstall your app before you install a new version.


Links to Documentation

If you require any further information or details on our size reduction for the Anyline Android SDK,
please find our Documentation Page.

  • No labels