Custom Library (BYOA)
The Custom Library card in Application Builds lets Enterprise tenants generate MobileDefender library artifacts configured for application identifiers. Use it for Library Mode integrations where your team embeds MobileDefender directly in source code instead of uploading a compiled app for Standard Mode protection.
Custom library generation is Enterprise-only. Team and Free tenants do not see the Custom Library card.
When To Use A Custom Library
Use a custom library when you need any of the following:
- Source-code integration: you want to call MobileDefender APIs directly from your app.
- Granular runtime control: your app needs custom callbacks, screen-specific behavior, or product-specific detection handling.
- Strict supply-chain requirements: your build pipeline must produce the final signed binary without post-build AppTego processing.
For most apps, Standard Mode is faster and easier. See Standard Mode before choosing Library Mode.
Setting an Application Identifier
Custom libraries are bound to application identifiers: Android package names or iOS bundle IDs. Choose identifiers carefully because generated artifacts are intended for those apps.
- Open Application Builds.
- Open the Custom Library card.
- Select Add Identifier.
- Enter the application identifier, such as
com.company.myapp. - Save the identifier.
- The portal queues library generation for Android and iOS variants.
Setting or changing an identifier requires the Modify Tenant Settings permission.
Identifier rules:
| Rule | Requirement |
|---|---|
| Format | Reverse-DNS style, such as com.company.myapp. |
| Segments | At least 3 dot-separated segments. |
| Length | Up to 255 characters total, with each segment up to 63 characters. |
| Characters | Letters, digits, underscores, and dots. Each segment must start with a letter. |
| Reserved words | Java reserved words are rejected. |
| Blocked prefixes | com.example., com.test., org.example., com.android., android., java., and javax. are rejected. |
Enterprise tenants can configure multiple identifiers up to the tenant's custom-library identifier limit.
Build Status
The Custom Library page shows build status for each platform:
| Status | Meaning |
|---|---|
pending | Build is queued and waiting to start. |
building | AppTego is producing the library package. |
success | The library is available to download. |
failed | Build failed. Review the error message or contact support. |
deleted | A previously generated artifact has been deleted from portal availability. |
The portal displays friendly labels such as Generating, Download, and Failed. Builds are produced separately for each platform; one platform may complete before the other. Builds that remain stuck for more than about three hours time out.
Downloading the Library
When status is success, download buttons appear:
- Android produces a
mobiledefender.aarfile. - iOS produces a
MobileDefender.xcframework.ziparchive.
Downloads use short-lived URLs. Click Download again if a previous URL expires.
Deleting a Custom Library
To stop making a generated library available in the portal, use Delete from the Custom Library card. Existing downloads already in your possession are not removed from your local systems; deletion affects future availability in the portal.
Successful builds have a 30-day per-platform cooldown before deletion is allowed.
Deleting requires the Build Applications permission.
Integrating the Downloaded Library
After downloading, follow Library Mode. That guide covers:
- Gradle and Xcode setup.
- Initialization.
- Detection, prevention, and integrity APIs.
- Platform requirements.
Release Guidance
- Keep the downloaded library in your controlled dependency or artifact system.
- Record which application identifier and AppTego tenant produced it.
- Validate the integrated app in Development or Staging before production release.
- Rebuild and retest your app after replacing the library.
- Use Support and Help if a custom library build fails or the integrated app behaves unexpectedly.
Permissions Summary
| Action | Required permission |
|---|---|
| View custom library status | Any Enterprise role. |
| Download a built library | Any Enterprise role. |
| Set or change app identifier | Modify Tenant Settings. |
| Delete a custom library | Build Applications. |