All Products
Search
Document Center

Upgrade guide of mPaaS 10.1.60

Last Updated: Apr 16, 2021

About mPaaS 10.1.60

  1. The 10.1.60 baseline now supports WKWebView. For details, see Version 10.1.60 is adapted to WKWebView. Since App Store will no longer accept new apps that use UIWebView from April 2020, and will no longer accept updates to apps that use UIWebview from December 2020. For details, see Apple’s official announcement. For this reason, developers need to replace UIWebView with WKWebView.
  2. The 10.1.60 baseline has been adapted to iOS 13 and Xcode 11. For details, see mPaaS 10.1.60 is adapted to iOS 13.
  3. The 10.1.60 baseline adds the mini program component. The official version of the mini program has a complete set of APIs, with greatly improved stability and compatibility. For mini program upgrade, see Mini program upgrade instructions. For details about the debugging, preview, and publishing functions added for the mini program IDE, see Develop mini programs.
  4. The 10.1.60 baseline dramatically optimizes H5 containers, provides a more simplified access process, and significantly improves its compatibility and stability. For the upgrade of H5 containers and offline packages, see the H5 container upgrade guide.
  5. The 10.1.60 baseline greatly improves the compatibility and stability of overall components and its functionality. For the release notes for this version, see iOS SDK release notes.
  6. The 10.1.60 baseline no longer supports iOS 8.

mPaaS 10.1.60 upgrade instructions

Use CocoaPods for upgrade

Prerequisites

The CocoaPods mPaaS plug-in has been installed.

  • If you have not installed the CocoaPods mPaaS plug-in, execute the following script on the terminal to install the plug-in.

    1. sh <(curl -s http://mpaas-ios.oss-cn-hangzhou.aliyuncs.com/cocoapods/installmPaaSCocoaPodsPlugin.sh)
  • If you have installed the CocoaPods mPaaS plug-in, directly run the upgrade command pod mpaas update --all to upgrade the plug-in. For details about using the CocoaPods mPaaS plug-in, see Use CocoaPods for access based on the native framework.
  1. In Podfile, change the SDK version to 10.1.60.
    10.1.60

  2. Run the command pod mpaas update 10.1.60 to install the latest SDK of version 10.1.60 for the baseline.

  3. Run the pod install or pod update command as needed to upgrade the SDK to version 10.1.60 in the project.

Follow-up steps

If you encounter the following error when accessing CocoaPods:

  1. Invalid `Podfile` file: [!] No mPaaS_Nebula : 10.1.60-beta found !!! Check name & version in Podfile.

Try this solution:

  1. Run the command gem list | grep 'mPaaS' to view the CocoaPods plug-in version, as shown in the following figure.

  1. If the CocoaPods plug-in version is earlier than 0.9.5, execute the following script to reinstall the plug-in.
  1. sh <(curl -s http://mpaas-ios.oss-cn-hangzhou.aliyuncs.com/cocoapods/installmPaaSCocoaPodsPlugin.sh)

Component usage and upgrade instructions

In the 10.1.60 baseline, the accessibility and usability of H5 container, mini program, and hotfix components have been greatly improved. If you have used these components, read the following instructions in detail.

Component API changes

Starting from the 10.1.32 baseline, the mPaaS component adds an adaptation layer. If your baseline is not using adaptation-layer APIs, read mPaaS 10.1.32 is adapted to iOS 13 first.

We recommend that you use the APIs of the adaptation layer after upgrading the SDK. For details, see the following upgrade instructions for different components:

Notes:
  • Pay special attention to the directory and info.plist configuration changes for mPaaS components in the project.
  • We strongly recommend that you modify the code and use middle-layer (adapter) methods instead of directly using underlying methods, because certain underlying methods may be modified or discarded in future versions. You may need to take lots of time adapting them in future updates if you continue to use them.

Change of the directory structure

Among the component category directories and files under the MPaaS directory of the project, onlyAPMobileFramework and mPaas are kept after the upgrade. All the other directories, such as MPHotpatchSDK and APRemoteLogging, are automatically removed. If there are any custom files saved under these directories, you need to back up them in advance. For details of the directory structure, see mPaaS directory structure.

Change of Info.plist

The following figure shows the related mPaaS fields inserted in the Info.plist file of the project before the upgrade.

plistbefore

In 10.1.32 and later versions, only the Product Version field is required. After the baseline is upgraded, the plug-in automatically removes the Product ID, mPaaS, and mPaaSInternal fields. If the plug-in fails to remove these fields, you need to delete them manually. The following figure shows the fields after the upgrade.

Note: Do not delete the Product Version field when you delete the fields manually.

plistafter

Handle custom libraries

The components of the 10.1.60 baseline incorporate customization requirements. However, if you included custom libraries in your dependencies and upgraded the SDK from an earlier version (such as 10.1.32) to version 10.1.60, you may need to customize the custom libraries again based on the new version for security reasons. To do this, submit a ticket or contact mPaaS technical support personnel for consultation.