When you access mPaaS, the mPaaS SDK may conflict with other open source libraries or third-party libraries introduced into the project, leading to project compilation failure. Based on the types of libraries that cause the conflict, two categories of solutions are available:
- mPaaS custom libraries: If custom libraries of the mPaaS SDK conflict with other libraries in the project, you must use these custom mPaaS libraries.
- Non-mPaaS custom libraries: If conflicting mPaaS SDK libraries are not mPaaS custom libraries, you can delete the libraries introduced by mPaaS.
If conflicting mPaaS SDK libraries are custom libraries, you must use these custom mPaaS libraries.
|Open source library name||mPaaS library name||Conflict solution|
|AlipaySDK||AlipaySDK||The mPaaS version, which solves conflicts with modules such as mPaaS RPC and UTDID, must be used.|
|OpenSSL||APOpenSSL||The mPaaS version, which optimizes the original national secret algorithm, must be used. For more details, please refer to How to solve the OpenSSL conflict in iOS projects .|
|protocolBuffers||APProtocolBuffers||The mPaaS version must be used.|
If conflicting mPaaS SDK libraries are not mPaaS custom libraries, you can delete the libraries introduced by mPaaS. The deletable libraries are shown in the following table. When you check whether the conflicting mPaaS SDK libraries are mPaaS custom libraries, see Remove conflicting third-party libraries to remove the conflicting libraries.
|Components supported by remove_pod||Open source libraries contained|
If the conflicting mPaaS SDK library is not a mPaaS custom library, you can delete the library introduced by mPaaS.
- Install the beta version of the cocoapods-mPaaS plug-in.
sh <(curl -s http://mpaas-ios-test.oss-cn-hangzhou.aliyuncs.com/cocoapods/installmPaaSCocoaPodsPlugin.sh)
After the installation is completed, run the command
pod mpaas version --plugin to verify that the installed version is the beta version.
- Run the
pod mpaas update 10.1.68command again to update the local baseline.
remove_pod "mPaaS_xxx"to podfile and be sure to place remove_pod before a common mPaaS_pod command.
For example, to remove SDWebImage, run this command: remove_pod “mPaaS_SDWebImage”.
pod 'xxx' # The corresponding third-party native library
After you remove the mPaaS component library, you can run the
pod installcommand to introduce the native version.