リリースノート(iOS)

ヒント

v3.0.0未満の変更履歴は、リリース一覧open in new windowを参照してください。

v3.1.1

新機能

v3.1.0

新機能

  • XCFrameworkに対応しました。これにより、Appleシリコン搭載のMacにて、シミュレーター向けにarm64アーキテクチャでビルドできるようになりました。
  • Swift Package Managerでのインストールに対応しました。

修正

  • オブジェクトデータとユーザー詳細の削除でエラーが発生した場合に、削除件数を参照できない問題に対応しました。

破壊的変更

  • オブジェクトデータとユーザー詳細の削除(deleteDatadeleteUserDetailメソッド)の呼び出しで条件がない場合、全件削除されない様に変更しました。かわりに全件削除のメソッド(deleteAllDatadeleteAllUserDetailメソッド)が新規追加されました。詳細はオブジェクトデータを削除するユーザー詳細を削除するを参照してください。

v3.0.0

注意

本バージョンはbaas.raku-za.jp環境に対応しています。cloud.raku-za.jp環境をご利用の場合、v3.0.0未満のバージョンをご利用ください。

新機能

修正

  • BaaS@rakuzaとの通信に使用していたAFNetworkingopen in new windowのコードを削除しました。これにより、AFNetworkingのライセンス表記が不要になりました。
  • 各メソッドが返却するオブジェクト(RKZUserDataなど)のプロパティに、値がない場合NSNullのインスタンスが設定される問題に対応しました。この修正により、NSNullのかわりにnilが設定されます。
  • オブジェクトデータのお気に入り追加お気に入り削除のメソッド名を変更しました。(旧メソッドは非推奨になりました)
  • Bitcodeに対応しました。
  • その他、軽微な不具合修正や性能改善を行いました。

破壊的変更

Swift向けに型安全性を強化しました。

  • ジェネリクスに対応しました。例えば、オブジェクトデータを検索した際、これまではRKZObjectData型にキャストする必要がありましたが、不要になりました。
    • この修正により、NSMutableArrayNSArrayに、NSMutableDictionaryNSDictionaryに変更しています。
  • これまでは必須の引数にnilを渡してもコンパイルエラーにならず、すべての結果はオプショナル型でした。本バージョンでは、必須の引数は非オプショナル型のためコンパイルエラーになります。また、必ず返す結果は非オプショナル型のため、オプショナルチェーンなどを使用する必要がありません。
RKZService.sharedInstance().getDataList("shop", searchConditionArray: nil, sortConditionArray: nil) { dataList, responseStatus in
    // responseStatusは非オプショナル型のため、nilチェックは不要
    if responseStatus.isSuccess {
        // dataListの各要素の型がRKZObjectDataであることが分かっているため、キャスト不要
        print(dataList[0].name ?? "")
    }
}

オブジェクトデータのお気に入り情報を格納する先を変更しました。

オブジェクトデータのお気に入り情報の格納先をRKZObjectData.attributesから、オブジェクトのプロパティ(RKZObjectData.sys_favoriteRKZObjectData.sys_favorite_sum)に変更しました。

お知らせの既読未読情報を格納する先を変更しました。

お知らせの既読未読情報の格納先をRKZNewsData.attributesから、お知らせのプロパティ(RKZNewsData.readed_flgRKZNewsData.readed_dte)に変更しました。

クーポンマスタが削除された場合も、マイクーポンを返却する様に変更しました。

これまではクーポンマスタが削除されている場合(もしくはクーポンマスタの使用不可フラグがオンの場合)、対応するマイクーポンは返却されません。

本バージョンでは他のプラットフォームに合わせて、クーポンマスタが削除されている場合も対応するマイクーポンが返却されるようになりました。(その場合、RKZMyCouponData.couponnilになります)