1

WatchOS 2 用の Apple Watch コンプリケーションを作成中です。表示しようとしている特定のデータは、3 ~ 6 分の間隔で (Web リクエストを介して) 提供されます。データ値がどのようになるかを予測できる予測アルゴリズムがあります。これは私に問題を提示します。

タイムトラベルで予測アルゴリズムが提供するデータを表示したいので、getTimelineEntriesForComplication (特定の日付以降のデータを要求するバージョン) を使用して、タイムラインに忠実であるとアルゴリズムが信じる将来の値を提供したいと考えています。 . ただし、時間が進むと (よくあることですが)、これらの予測データ ポイントのいずれかが発生するように設定された時間に達すると、予測値は正確ではなくなります。

たとえば、午後 12 時で、現在 A の (正確な) データ値があるとします。予測アルゴリズムは、次の 2 時間の次のデータ値を予測する可能性があります。

  • 午後 12 時 30 分 | B
  • 午後 1 時 | C
  • 午後 1 時 30 分 | D
  • 午後 2 時 | え

ただし、実際に午後 12 時 30 分になると、実際のデータ値は F になる可能性があります。さらに、アルゴリズムは、午後 2 時 30 分まで新しい予測セットを生成します。updateTimelineForComplicationタイムラインを再構築する必要があることを示すために使用できることは理解していますが、この方法には 2 つの問題があります。

  1. 実行時間の制限をすぐに超えてしまうのではないかと心配しています
  2. updateTimelineForComplicationタイムライン全体をフラッシュします。これは、過去のすべてのデータが完全に有効であることを考えると無駄に思えます。次の 4 つほどの値を更新する必要があるだけです。

この問題を処理するより良い方法はありますか?

4

1 に答える 1