2013-11-21 2 views
5

GDK를 사용하여 사용자 시간대에 카드를 삽입 할 수 없습니다. 내 코드는 매우 간단하다 :타임 라인에 카드를 삽입 할 수 없습니다.

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

사람이이 문제를 가지고있다 :

TimelineManager timelineManager = TimelineManager.from(this); 

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

삽입 메소드에 의해 반환되는 문제는 다음이다?

줄리앙

+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 샘플 프로젝트 -> Build Target으로 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()입니다.

관련 문제