Learn how to upgrade the mPaaS 10.1.60 SDK and adapt your app for iOS 13 to prevent crashes and functional issues caused by changes in the image loading mechanism.
Background
iOS 13 was officially released on September 20, 2019. Testing revealed changes in system behavior that require app adaptation to prevent functional issues and crashes.
Before the adaptation, the mPaaS SDK built with Xcode 10 on iOS 13 devices had a primary issue: iOS 13 optimized app startup and changed the image loading mechanism. This change could cause system categories to overwrite category methods defined in the SDK, which means custom methods might not return the expected results.
mPaaS is a base library. Versions 10.1.60.26 and later, built with Xcode 11, are now adapted for iOS 13.
Upgrade the SDK and components
Upgrade using CocoaPods
To install the latest SDK for version 10.1.60, perform the following steps:
Make sure that the version number for the mPaaS components in your Podfile is 10.1.60.
Run the
pod mpaas update 10.1.60command. If an error occurs, first runpod mpaas update --allto update the plugin, and then run the command again.Run the
pod installcommand.
API changes
An adaptation layer was added to mPaaS components starting from version 10.1.32. After you upgrade the SDK, you must use the adaptation layer APIs. For details, see the upgrade notes for each component:
Use the adapter methods instead of calling the underlying methods directly. Underlying methods may change or be deprecated in future versions, which would increase your adaptation effort during upgrades.
Handling custom libraries
Version 10.1.60 supports customization for each component. If your dependencies include custom libraries, handle them as follows:
If you are upgrading from an earlier SDK version, such as 10.1.20, to version 10.1.60, your custom libraries may need to be re-customized based on the new version. To confirm this, contact the mPaaS helpdesk by joining the DingTalk group 145930007362.
If you are already using version 10.1.60, you only need to update some components. See the Checklist of libraries updated for iOS 13 adaptation below and check if your custom library is included.
If it is not included, you can continue to use the custom library.
If it is included, your custom library may need to be re-customized. In this case, contact the mPaaS helpdesk by joining the DingTalk group 145930007362.
Checklist of libraries updated for iOS 13 adaptation
mPaaS
MPDataCenter
MPPushSDK
APMultimedia
BEEAudioUtil
BeeCapture
BeeCityPicker
BeeMediaPlayer
BeePhotoBrowser
BeePhotoPicker
NebulaAppBiz
NebulaBiz
NebulaSecurity
NebulaKernel
NebulaSDKPlugins
NebulaSDK
NebulaConfig
NebulaTinyAppDebug
NebulaNetwork
TinyAppCommon
APConfig
AntUI
MPPromotion
BeeLocation
MPMpaaSService
TinyAppService
AMap