問題タブ [apple-watch-complication]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - watchOS - コンプリケーションは前のエントリを表示します
公共交通機関の出発時刻を表示する watchOS 3 のコンプリケーションを作成しています。(String) と(NSDate)Train
を持つオブジェクトを含む配列を持つデータ モデルを作成しました。stationName
departureTime
getCurrentTimelineEntry() メソッドを実装しましたが、エントリがウォッチに表示されています。問題は、時計が前のエントリしか表示しないことです。たとえば、次の出発時刻があります。
現在の時刻が 14:10 の場合、最初のエントリ (時刻は 14:00) がまだ時計に表示されています。現在時刻が 14:30 になるまで、そのエントリが表示されています。現在の時刻が 14:10 の場合、時計で 14:30 の出発時刻を確認したいと思います。
誰かがこれを手伝ったり、正しい方向に向けたりできますか?
swift - Swift 3 とバックグラウンド タスクによる複雑さの更新
watchOS 3 の場合、Apple はWKRefreshBackgroundTask
、getNextRequestedUpdateDate
.
新しいアプローチを使用して、2 つの更新の間の時間をどのように判断できますか?
私は(URLから)要求しているデータをハックしgetCurrentTimelineEntry
て複雑さを更新するだけですが、それはAppleが推奨するものではないと思います.
短いコード例は大きな助けになります。
watchkit - reloadTimeline() は合併症を更新しません
watchOS 3 アプリを作成しようとしていますが、バックグラウンド タスクでコンプリケーションを更新したいと考えています。
まず、 内のバックグラウンド タスクでサーバーから新しいデータを取得しますhandle()
。その後、 を呼び出してアクティブな合併症を更新しcomplicationServer.reloadTimeline(for:)
ます。
コンソールに「UPDATE COMPLICATION」というメッセージが表示されるので、コードが実行されます。
しかし、リロード後も、コンプリケーションはまだ古いデータを表示します。ウォッチフェイスを切り替えて元に戻すと、コンプリケーションがリロードされることがあります。バックグラウンド タスクからコンプリケーションをリロードするために何か他のことをする必要がありますか?
ios - getPlaceholderTemplateForComplication() メソッドはいつ呼び出されますか?
WatchOS アプリ用の単純な複雑なテンプレートを作成しようとしていますが、ComplicationController
クラスのメソッドgetPlaceholderTemplateForComplication()
がいつ呼び出されるかを理解しようとしています。
Appleのドキュメントによると
アプリが最初に起動されると、ClockKit はこのメソッドを呼び出します。
しかし、シミュレーターを実行すると、ほとんどの場合、起動しません。
「Apple Watch にアプリを表示」スイッチをオフにしてからオンに戻しても問題は解決しません。
getPlaceholderTemplateForComplication()
メソッドはいつ呼び出されますか?