ライブカードはタイムラインの現在のセクションに表示し、現在に関係のある情報を表示します。
ライブカードは、ユーザーがタスクに強く注目するとき、よく機能する。しかし、グラスを一時的なチェックの場合はそうではない。例えば、2〜3分置きに 実行し時間をチェックしたり、曲をスキップしたり停止したりとミュージックプレイヤーを操作したい場合など。
もし今回が初めてのグラスプリの開発の場合、Ongoing Task guide を最初に読んでください。このドキュメントは、私たちのベストデザインに従う、ライブカードを使用したグラスウェアの作り方をみごとに提示します。
How they work
ライブカードは、それらが現在であるかぎり、タイムラインの現在のセクションに保持するための方法を提供します。
静的なカードと異なり、ライブカードはタイムラインに保持しません、ユーザーは実行後それらを常に削除します。
Note:グラスのシステムは再起動もしくは、LiveCard.attach()を使用していない時のリソース低下時に、ライブカードを取り除きます。
<画像>
ユーザーはメインメニューからヴォイスコマンドでライブカードを開始します。彼らはメニューアイテムをみるためにそのカードをタップすることができます。
When to use them
ライブカードは、アクションやナビ中の地図、音楽プレーヤーなどの実行状態を示すなど、ユーザーが頻繁に入れたり出したりできる「ongoing task」でデザインされています。
ライブカードの別の恩恵は、ユーザとリアルタイムに更新のやりとりをするユーザーインターフェースによく合うことです。
ライブカードを使用中、タイムラインは、ユーザーの操作を受けている、そのためライブカードの前後のスワイプは、ライブカードそのものの操作よりもタイムラインのナビゲートを行う。
しかしながら、ライブカードは、センサーやGPSデータのようなインメーションが行う多くの同じ機能へのアクセスを持っている。これは、あなたが強制的なエクスペリエンスを作成でき、一方ではメッセージをチェックするような、その他の機能を実行するタイムラインのエクスペリエンスにいることをユーザーに許容します。
Architecture
ライブカードは、ずっと見ることが可能で、バックグラウンドのサービスで、それらを保持する長時間実行できるコンテクストが必要です。
あなたは、サービス開始あるいは、サービスが監視している他のイベントの操作を受け、ライブカードを発行しレンダリングすることができる。ライブカードは、ほとんど実行しないことも(数秒に1回)、頻繁に(システムのリフレッシュにまで)実行することも可能です。
ライブカードが不要になったとき、レンダリングを止めるためサービスを削除します。
Low-Frequency Rendering
低周期のレンダリングは小さなアンドロイドビューに制限され、数秒に1回表示を更新することが可能です。
定期のレンダリングあるいは頻繁な更新が不要なコンテンツは、ライブカードで作ることはシンプルな方法です。
High Frequency Rendering
高周期レンダリングを行いたい場合は、Androidグラフィックフレームワークのなかのオプションを使う必要がある。
システムはライブカードのバック表面を与え、OpenGLの2Dや複雑な3Dのグラフィックも直接描画可能です。
Creating low-frequency live cards
低周期レンダリングはRemoteViews objectによって提供されるUIが必要です。下記にあるアンドロイドレイアウトやビューのサブセットがサポートしている
<対象サブセット>
低周期レンダリングを使うときは:
- 上で表記したAPIの標準アンドロイドビューだけが必要な場合
- 低更新が妥当な場合(リフレッシュの間に数秒など)
心に留めて:
- ライブカードは、タイムラインにカードを発行するため常に
setAction()で宣言された、
PendingIntentを保持しなければいけません。
- 発行後、カードに変更を与えるため、
setViews()