設定値配信アクションの静的変数でフォルダは設定できる?

設定値配信の接客アクションでどのように設定すれば、アプリ側でどのようなデータが受け取れるのかを調べているのですが、その点について質問があります。

添付のように静的変数でフォルダ"folder"を追加し、その中にテキスト変数"text"を入れた場合、以下のようにディクショナリー形式でデータオブジェクトを取得できるのかなと思ったのですが、dictionaryはnilでした。仕様としては静的変数の設定でフォルダを使うのは想定されていないという理解でよいでしょうか?

let dictionary = KarteVariables.variable(forKey: "folder").dictionary
let text = dictionary?["text"] as? String

また、添付のように"folder"の中に静的変数直下に定義されていないテキスト変数"folder_text"を追加した場合、アプリが起動時にクラッシュするようで、Karte SDK(1.7.7)内でExceptionが発生しているようなのですが、こちらの修正バージョンなどあれば教えていただけると助かりますmm

質問フォームでも同様の質問をしていたので、担当者からの回答をこちらにも共有します。
同じ問題につまづいている方の参考になれば幸いです。

<担当者からのご報告>

調査しましたところ、変数をフォルダに入れて管理している場合に問題が起こることがわかりました。
変数をフォルダに入れることにより、SDKにレスポンスされる設定値にvalueが含まれない状態となり、valueがあることを想定しているSDK側でクラッシュが発生するようになっておりました。

開発当初の情報を確認したところ、設定値のフォルダでの管理には対応しない旨が記載されており、現状フォルダが作れてしまうことが問題のようです。

これを踏まえて対応についてご案内させていただきます。

暫定的な対応について

お手数をお掛け致しますが、設定値配信においてはフォルダの使用を控えていただきますようお願い致します。
フォルダを使用しないことでクラッシュは回避可能です。

恒久的な対応について

以下2点について対応させていただきます。

  • 想定した値がレスポンスされない場合においてもアプリがクラッシュしないようにSDKを改修致します。
  • 設定値配信においてフォルダの作成ができないように管理画面を改修致します。

この度がご迷惑をお掛けし申し訳ございませんでした。
以上、どうぞ宜しくお願い致します。

1 Likes