1. What is a UTDID conflict?
Android UTDID packages are named
utdid4all-x.x.x.jar. iOS UTDID packages are namedUTDID.framework.UTDIDis a universal component for mobile SDKs from Alibaba Group. Many mobile SDKs, including those from Alibaba Cloud, depend on UTDID. AUTDID conflictcan occur if you integrate mobile SDKs from multiple platforms.
2. How to resolve UTDID conflicts
The Android UTDID version number must be v1.1.5.3 or later. If you cannot confirm the version number, retain the UTDID package from the Alibaba Cloud platform.
2.1 Manual integration
Manually delete the duplicate UTDID SDK and retain only one.
Retain the UTDID SDK downloaded from the Alibaba Cloud platform.
2.2 Remote repo integration
For Android integration, use
excludeto disable the transitive dependency on UTDID from other product SDKs. See the following example:
compile ('com.xxx:xxx.xxx:1.0.1') {
exclude (module: 'utdid4all')
}The module name is not always
utdid4all. To learn how to disable the transitive dependency on UTDID, contact the support team for the product SDK.For iOS integration, if you use CocoaPods for remote repo dependencies, you must switch to
manual integration. This is because CocoaPods cannot disable transitive dependencies.
2.3 Conflicts with the Alipay SDK
The Alipay SDK integrates UTDID from source code. Therefore, the
manual integration solutionandremote repo integration solutiondo not apply.Download and integrate the Alipay SDK without UTDID, and retain the UTDID package from the Alibaba Cloud platform.
This SDK version is updated in sync with the standard Alipay SDK. Your Alipay features will not be affected.