背景
iOS 13 は 2019 年 9 月 20 日に正式リリースされました。iOS 13 のベータ版と正式版のテスト中に、システムの動作がいくつか変更されていることがわかりました。そのため、使用する前にアプリの適応を行う必要があります。そうしないと、機能の例外やクラッシュなどの問題が発生する可能性があります。
mPaaS を適応する前は、Xcode 10 でビルドされた mPaaS SDK が iOS 13 デバイスに与える主な影響は次のとおりです。iOS 13 はアプリの起動を最適化し、ミラーローディングメカニズムを変更するため、システムカテゴリが SDK で定義されているカテゴリメソッドを上書きする可能性があります。その結果、カスタムメソッドが期待される結果を返さない可能性があります。
重要: 基本ライブラリとして、mPaaS バージョン 10.1.60.26 以後は、Xcode 11 でビルドされた iOS 13 に適応しています。
SDK またはコンポーネントをスペックアップする
CocoaPods に基づいてスペックアップする
次の手順を実行して、バージョン 10.1.60 の最新の SDK をインストールします。
Podfile で mPaaS のバージョンが 10.1.60 であることを確認します。
pod mpaas update 10.1.60コマンドを実行します。エラーが返された場合は、
pod mpaas update --allコマンドを実行してプラグインを更新してから、前のコマンドを再実行します。pod installコマンドを実行します。
API の変更
mPaaS コンポーネントのバージョン 10.1.32 以降には、適応レイヤーが追加されています。SDK をスペックアップした後、適応レイヤーの API を使用することをお勧めします。詳細については、以下の各コンポーネントのスペックアップ手順をご参照ください。
注:
プロジェクトの mPaaS コンポーネントのディレクトリとinfo.plist の構成の変更に特に注意してください。
特定の基盤となるメソッドは将来のバージョンで変更または廃止される可能性があるため、コードを変更し、基盤となるメソッドを直接使用するのではなく、中間レイヤー (アダプター) メソッドを使用することを強くお勧めします。引き続き使用すると、今後の更新で適応に多くの時間がかかる場合があります。
ディレクトリ構造の変更
プロジェクトの MPaaS ディレクトリにあるコンポーネントカテゴリのディレクトリとファイルのうち、スペックアップ後は APMobileFramework と mPaas のみが保持されます。APRemoteLogging などの他のすべてのディレクトリは自動的に削除されます。これらのディレクトリにカスタムファイルが保存されている場合は、事前にバックアップする必要があります。ディレクトリ構造の詳細については、「mPaaS ディレクトリ構造」をご参照ください。
Info.plist の変更
次の図は、スペックアップ前にプロジェクトの Info.plist ファイルに挿入された関連する mPaaS フィールドを示しています。

10.1.32 以降のバージョンでは、Product Version フィールドのみが必要です。ベースラインがスペックアップされると、プラグインは Product ID、mPaaS、mPaaSInternal フィールドを自動的に削除します。プラグインがこれらのフィールドを削除できない場合は、手動で削除する必要があります。次の図は、スペックアップ後のフィールドを示しています。
注: 手動でフィールドを削除する場合は、Product Version フィールドを削除しないでください。

カスタムライブラリを処理する
バージョン 10.1.60 のコンポーネントには、カスタマイズの要件が組み込まれています。ただし、依存関係にカスタムライブラリが含まれている場合は、セキュリティ上の理由から、次の操作を実行して適切に処理する必要があります。
SDK を以前のバージョン (10.1.20 など) から 10.1.60 にスペックアップした場合は、新しいバージョンに基づいてカスタムライブラリを再度カスタマイズする必要がある場合があります。これを行うには、チケットを送信するか、mPaaS テクニカルサポート担当者に連絡してください。
SDK バージョンが 10.1.60 の場合は、特定のコンポーネントを更新します。iOS 13 更新に適応したライブラリのリストを参照して、カスタムライブラリがリストに含まれているかどうかを確認してください。
含まれていない場合は、これらのカスタムライブラリを引き続き使用できます。
含まれている場合は、再度カスタマイズする必要がある場合があります。これを行うには、チケットを送信するか、mPaaS テクニカルサポート担当者に連絡してください。
iOS 13 更新に適応したライブラリのリスト
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