すべてのプロダクト
Search
ドキュメントセンター

Mobile Platform as a Service:SDK の使用

最終更新日:Jun 04, 2026

ソフトウェア開発キット(SDK)を追加した後、iOS クライアントにリアルタイムリリース機能を統合するには、次の手順を実行します。

  1. 新バージョンの確認:SDK インターフェイスメソッドを呼び出して、新バージョンを確認します。

  2. 段階的リリースホワイトリストの設定:アップグレードプロンプトや段階的リリースなどのオプションを設定します。

    重要

    UTDID 依存関係を削除すると、時間枠に基づく段階的リリースは機能しません。

  3. オンライン公開:mPaaS コンソールで IPA ファイルを生成し、新バージョンを公開します。

操作手順

新バージョンの確認

アップグレード確認 SDK は、アプリケーションの更新をチェックするためのインターフェイスを提供します。新バージョンが検出された場合、SDK は UI 要件に応じて次のように動作します。

  • mPaaS のデフォルトポップアップウィンドウを使用する場合、SDK が自動的にアップグレードプロンプトを表示します。

  • mPaaS のカスタマイズ可能なポップアップウィンドウを使用する場合、SDK はデリゲートメソッドを呼び出して、カスタムイメージ、トースト、またはプログレスバーをレンダリングします。

  • 完全にカスタム UI を使用する場合、SDK はアップグレード情報をディクショナリとして返し、ユーザーが処理を行います。

メソッドのヘッダーファイルは、AliUpgradeCheckService.framework > Headers > MPCheckUpgradeInterface.h にあります。

typedef NS_ENUM(NSUInteger, AliUpdateType) {
    AliUpgradeNewVersion = 201,            /*現在のバージョンが最新です。*/
    AliUpgradeOneTime,                     /*クライアントに新バージョンがあります。1 回だけ通知します。*/
    AliUpgradeForceUpdate,                 /*クライアントに新バージョンがあります。強制アップグレード(非推奨)。*/
    AliUpgradeEveryTime,                   /*クライアントに新バージョンがあります。複数回通知します。*/
    AliUpgradeRejectLogin,                 /*ログインを制限します(非推奨)。*/
    AliUpgradeForceUpdateWithLogin         /*クライアントに新バージョンがあります。強制アップグレード。*/
};

/**
 カスタム UI を使用する場合のアップグレード確認成功時のコールバック。

 @param upgradeInfos アップグレード情報。
 @{upgradeType:202,
 downloadURL:@"itunes://downLoader.xxxcom/xxx",
 message:@"新バージョンが利用可能です。アップグレードしてください。",
 upgradeShortVersion:@"9.9.0",
 upgradeFullVersion:@"9.9.0.0000001"
 needClientNetType:@"4G,WIFI",
 userId:@"admin"
 }
 */
typedef void(^AliCheckUpgradeComplete)(NSDictionary *upgradeInfos);
typedef void(^AliCheckUpgradeFailure)(NSException *exception);

@interface MPCheckUpgradeInterface : NSObject

/**
 1 回の通知間隔(日単位)。デフォルト値:3。
 */
@property(nonatomic, assign) NSTimeInterval defaultUpdateInterval;

/**
 デフォルトのポップアップ UI を変更するためのデリゲート。
 */
@property (nonatomic, weak) id<AliUpgradeViewDelegate> viewDelegate;

/**
 * インスタンスを初期化します。
 */
+ (instancetype)sharedService;

/**
 アップデートを積極的にチェックします。アップデートが見つかった場合、デフォルトの mPaaS UI を使用してポップアップウィンドウが自動的に表示されます。
 *
 */
- (void)checkNewVersion;

/**
 アップデートを積極的にチェックします。ポップアップウィンドウは自動的に表示されません。通常、カスタム UI、アップデートチェック、または通知ドットの表示に使用されます。

 @param complete 成功時のコールバック。アップグレード情報のディクショナリを返します。
 @param failure  失敗時のコールバック。
 */
- (void)checkUpgradeWith:(AliCheckUpgradeComplete)complete
                 failure:(AliCheckUpgradeFailure)failure;
@end

アプリ起動後に適切なインターフェイスを呼び出します。起動が遅くなるのを避けるため、ホームページ表示後にインターフェイスを呼び出してください。以下の 3 つのオプションがあります。

  • デフォルトの mPaaS ポップアップウィンドウを使用してアップグレードプロンプトを表示する場合:

      - (void)checkUpgradeDefault {
          [[MPCheckUpgradeInterface sharedService] checkNewVersion];
      }
  • デフォルトの mPaaS ポップアップ UI をカスタムイメージ、ネットワーク通知トースト、またはネットワークリクエスト用のプログレスバーでカスタマイズする場合:

      - (void)checkUpgradeWithHeaderImage {
          MPCheckUpgradeInterface *upgradeInterface = [MPCheckUpgradeInterface sharedService];
          upgradeInterface.viewDelegate = self;
          [upgradeInterface checkNewVersion];
      }
    
      - (UIImage *)upgradeImageViewHeader{
          return APCommonUILoadImage(@"ilustration_ap_expection_alert");
      }
    
      - (void)showToastViewWith:(NSString *)message duration:(NSTimeInterval)timeInterval {
          [self showAlert:message];
      }
    
      - (void)showAlert:(NSString*)message {
          AUNoticeDialog* alertView = [[AUNoticeDialog alloc] initWithTitle:@"Information" message:message delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
          [alertView show];
      }
  • 完全にカスタム UI を使用してアップグレード情報を取得し、表示を自分で処理する場合:

      - (void)checkUpgradeWIthCustomUI {
          [[MPCheckUpgradeInterface sharedService] checkUpgradeWith:^(NSDictionary *upgradeInfos) {
              [self showAlert:[upgradeInfos JSONString]];
          } failure:^(NSException *exception) {
          }];
      }

段階的リリースホワイトリストの設定

段階的リリースホワイトリスト機能を使用するには、サーバーが各クライアントを識別できる必要があります。MPaaSInterface カテゴリで、userId メソッドを設定し、ユーザー名、電話番号、メールアドレスなど、アプリケーションの一意な識別子を返すようにします。

@implementation MPaaSInterface (Portal)

- (NSString *)userId
{
    return @"mPaaS";
}

@end

mPaaS コンソールでのホワイトリスト設定方法については、「リアルタイムリリース > ホワイトリスト管理」をご参照ください。

オンライン公開

IPA ファイルの生成

  • Xcode を使用して IPA パッケージを生成します:

  • または、mPaaS プラグインのパッケージング機能を使用して IPA パッケージを生成します。パッケージは現在のプロジェクトの product ディレクトリに保存されます。次のフィールドを設定します。

    • Bundle Identifier:クラウド設定ファイル内の Bundle ID と一致している必要があります。

    • Bundle Version:プロジェクトの info.plist ファイル内の Production Version の値と一致している必要があります。

    • Provisioning Profile:署名設定ファイルです。Bundle ID と一致している必要があります。一致しない場合、パッケージングは失敗します。

    • Debug:デバッグパッケージを生成するかどうかを指定します。

    • App Store:App Store 向けのリリースパッケージを生成するかどうかを指定します。

新バージョンの公開

リリース管理機能を使用して新バージョンを公開します。詳細については、「リリース管理」をご参照ください。

アップグレードモード

mPaaS コンソールでリリースタスクを作成する際、ユーザーへのプロンプト頻度を制御するアップグレードモードを選択します。初回プロンプト後、SDK はクールダウン期間が経過しているかどうかを確認し、その後のアップグレードチェック呼び出し時に、期間内に複数回プロンプトが表示されないようにします。

  • 1 回のみ通知:アップグレードチェックインターフェイスを複数回呼び出しても、クールダウン期間中にクライアントに 1 回だけプロンプトが表示されます。

    • ユーザーの邪魔をせずにアップグレードを促したい場合にこのモードを使用します。

    • デフォルトのクールダウン期間は 3 日です。これを変更するには、アップグレードチェックインターフェイスを呼び出す前に次のプロパティを設定します。

        - (void)checkUpgradeDefault {
            [MPCheckUpgradeInterface sharedService].defaultUpdateInterval = 7;
            [[MPCheckUpgradeInterface sharedService] checkNewVersion];
        }
  • 複数回通知:クライアントがアップグレードチェックインターフェイスを呼び出すたびにポップアップが表示されます。新バージョンが公開されてからある程度時間が経過しており、より頻繁にユーザーに通知したい場合にこのモードを使用します。

  • 強制通知:クライアントがアップグレードチェックインターフェイスを呼び出すたびにポップアップが表示され、キャンセルボタンはありません。ユーザーはアップグレードせずにアプリの使用を継続できません。古いクライアントバージョンを廃止したい場合にこのモードを使用します。

関連リンク

コード例