2013-11-21 4 views
5

GDKを使用してユーザーのタイムラインにカードを挿入できません。私のコードは非常に簡単です:タイムラインにカードを挿入できません

TimelineManager timelineManager = TimelineManager.from(this); 

Card card = new Card(this); 
card.setText("Text").setInfo("Info").addImage(R.drawable.ic_launcher); 
timelineManager.insert(card); 

insertメソッドによって返された問題は以下の通りです:

Caused by: java.lang.IllegalArgumentException: Unknown URL content://com.google.android.glass.timeline/past_timeline_table 

もこの問題を持つ誰か?

ジュリアンあなたからカードを挿入しようとしている

+0

明確ではありません。エラーメッセージとは何ですか? – fabrizioM

+0

申し訳ありませんが、間違いを修正しました。 – Jul

+6

GDKドキュメントから: "これはGDK APIの驚くべきピークです.GDKアドオンにはこのリファレンスドキュメントには記載されていないAPIがいくつかあります。 JARファイルまたはIDEのオートコンプリート機能にAPIが表示されますが、ここに表示されない場合は現在サポートされていません。 –

答えて

0

?それでも問題が解決しない場合は、私のHello Glassレポをチェックアウトすることができます。私は問題なくカードを作成し、表示することができました。ここでhttps://github.com/DasCody/Hello-Glass

は一例です:

package com.codyengel.helloglass; 

import com.google.android.glass.app.Card; 

import android.os.Bundle; 
import android.app.Activity; 
import android.view.Menu; 
import android.view.View; 

public class Magic extends Activity { 

     @Override 
     protected void onCreate(Bundle savedInstanceState) { 
       super.onCreate(savedInstanceState); 
       /* 
       * We're creating a card for the interface. 
       * 
       * More info here: http://developer.android.com/guide/topics/ui/themes.html 
       */ 
       Card card1 = new Card(this); 
       card1.setText("Hello, Sir!"); 
       card1.setInfo("..or Ma'am"); 
       View card1View = card1.toView(); 

       // Display the card we just created 
       setContentView(card1View); 
     } 

} 
+5

私は、アクティビティではなく、タイムラインにカードを追加しようとしています。 – Jul

0

あなたはGDKのサンプルプロジェクトでの瞬間イストの外観にできる最善。 (File - > New - > Other - > Androidサンプルプロジェクト - > GDK Sneak Peakをビルドターゲットとして選択してください)
コンパス、ストップウォッチ、タイマーのサンプルを見て、あなたのガラス上で走らせてください。ここで

は、彼らがタイマーの例ではタイムラインに新しいカードを作成する方法のコードスニペット(ちょうど関連するコード)である:

TimelineManager mTimelineManager; 
LiveCard mLiveCard; 
TimerDrawer mTimerDrawer; 

mLiveCard = mTimelineManager.getLiveCard(LIVE_CARD_ID); 
mLiveCard.enableDirectRendering(true).getSurfaceHolder().addCallback(mTimerDrawer); 
mLiveCard.setNonSilent(true); 

Intent menuIntent = new Intent(this, MenuActivity.class); 
mLiveCard.setAction(PendingIntent.getActivity(this, 0, menuIntent, 0)); 
mLiveCard.publish(); 

短い説明:
LiveCardは、あなたが描くカードです。 (潜在的にかなり頻繁)
TimerDrawerは、図面を行うカスタムクラスです。
getLiveCardは、指定された文字列IDを使用してタイムラインに新しいカードを作成します。
MenuActivityは、LiveCardをタップすると発行されるカスタムアクティビティです。 (常に定義されなければならない)

基本的にこのコードは、新しいカードを作成し、それを描く方法を定義し、タップして公開するときの動作を定義します。より多くのコードが含まれているので、サンプルを見てください。これがあなたを正しい方向に導いてくれることを願っています。

1

この機能は、GDKのXE12/release 2で追加されました。

setInfo()は今やsetFootnote()です。

関連する問題