[한] Callback Android - naver/cafe-sdk-unity GitHub Wiki
해당 기능은 NAVER CAFE SDK 1.4.0 이상부터 지원합니다.
###Callback Listener
- NAVER CAFE SDK에서 제공하는 Callback Listener에 대하여 기술합니다.
GlinkAndroid.cs
-- 1. 카페SDK 시작 Listener
네이버카페SDK 실행 시에 대한 리스너를 등록합니다.
OnSdkStartedListener
class OnSdkStartedListener : AndroidJavaProxy {
public OnSdkStartedListener () : base("com.naver.glink.android.sdk.Glink$OnSdkStartedListener") { /* empty. */ }
void onSdkStarted () {
showToast ("sdk start.");
}
}
glinkClass.CallStatic ("setOnSdkStartedListener", new OnSdkStartedListener ());
-- 2. 카페SDK 종료 Listener
네이버카페SDK 종료 시에 대한 Listener를 등록합니다.
OnSdkStoppedListener
class OnSdkStoppedListener : AndroidJavaProxy {
public OnSdkStoppedListener () : base("com.naver.glink.android.sdk.Glink$OnSdkStoppedListener") { /* empty. */ }
void onSdkStopped () {
showToast ("sdk stop.");
}
}
glinkClass.CallStatic ("setOnSdkStoppedListener", new OnSdkStoppedListener ());
-- 3. 앱스킴 Listener
앱스킴 Listener를 등록합니다.
자세한 내용은 App Scheme 을 참조해주세요.
OnClickAppSchemeBannerListener
class OnClickAppSchemeBannerListener : AndroidJavaProxy {
public OnClickAppSchemeBannerListener () : base("com.naver.glink.android.sdk.Glink$OnClickAppSchemeBannerListener") { /* empty. */ }
void onClickAppSchemeBanner (string appScheme) {
showToast ("tapped:" + appScheme);
}
}
glinkClass.CallStatic ("setOnClickAppSchemeBannerListener", new OnClickAppSchemeBannerListener ());
-- 4. 카페 가입 Listener
카페 가입 Listener를 등록합니다.
OnJoinedListener
class OnJoinedListener : AndroidJavaProxy {
public OnJoinedListener () : base("com.naver.glink.android.sdk.Glink$OnJoinedListener") { /* empty. */ }
void onJoined() {
showToast ("카페에 가입하였습니다. (from listener)");
}
}
glinkClass.CallStatic ("setOnJoinedListener", new OnJoinedListener ());
-- 5. 게시글 등록 Listener
게시글 등록 Listener를 등록합니다.
OnPostedArticleListener
/** 게시글 등록 Listener를 설정.
* @param menuId 게시글이 등록된 menuId
* @param imageCount 첨부한 image 갯수
* @param videoCount 첨부한 video 갯수
**/
class OnPostedArticleListener : AndroidJavaProxy {
public OnPostedArticleListener () : base("com.naver.glink.android.sdk.Glink$OnPostedArticleListener") { /* empty. */ }
void onPostedArticle(int menuId, int imageCount, int videoCount) {
String message = String.Format ("게시글이 작성되었습니다. (from listener, 메뉴: {0})", menuId);
showToast (message);
}
}
glinkClass.CallStatic ("setOnPostedArticleListener", new OnPostedArticleListener ());
-- 6. 댓글 등록 Listener
댓글 등록 Listener를 등록합니다.
OnPostedCommentListener
class OnPostedCommentListener : AndroidJavaProxy {
public OnPostedCommentListener () : base("com.naver.glink.android.sdk.Glink$OnPostedCommentListener") { /* empty. */ }
void onPostedComment(int articleId) {
String message = String.Format ("댓글이 작성되었습니다. (from listener, 게시글: {0})", articleId);
showToast (message);
}
}
glinkClass.CallStatic ("setOnPostedCommentListener", new OnPostedCommentListener ());
--
해당 기능은 NAVER CAFE SDK 1.7.0 이상부터 지원합니다.
7. 투표 완료 Listener
투표 완료 Listener를 등록합니다.
투표가 있는 게시글에서 투표를 하였을 시 발생합니다.
OnVotedListener
class OnVotedListener : AndroidJavaProxy {
public OnVotedListener () : base("com.naver.glink.android.sdk.Glink$OnVotedListener") { /* empty. */ }
void onVoted(int articleId) {
String message = String.Format ("on voted. (from listener, 게시글: {0})", articleId);
showToast (message);
}
}
glinkClass.CallStatic ("setOnVotedListener", new OnVotedListener ());
--
해당 기능은 NAVER CAFE SDK 1.6.0 이상부터 지원합니다.
8. 위젯 스크린샷 버튼 클릭 Listener
위젯 스크린샷 버튼 클릭 Listener를 등록합니다. 위젯을 참조해 주세요.
위젯에서 스크린샷 버튼을 클릭 시에 발생하는 이벤트.
(해당 이벤트에 스크린샷을 찍는 기능을 넣어야 스크린샷이 동작합니다)
OnWidgetScreenshotClickListener
class OnWidgetScreenshotClickListener : AndroidJavaProxy {
public OnWidgetScreenshotClickListener () : base("com.naver.glink.android.sdk.Glink$OnWidgetScreenshotClickListener") { /* empty. */ }
void onScreenshotClick() {
string name = "CafeSdkController";
GameObject obj = GameObject.Find (name);
if (obj == null) {
obj = new GameObject ("CafeSdkController");
obj.AddComponent<SampleBehaviour> ();
}
SampleBehaviour behaviour = obj.GetComponent<SampleBehaviour> ();
behaviour.OnClickScreenShotButton ();
}
}
glinkClass.CallStatic ("setOnWidgetScreenshotClickListener", new OnWidgetScreenshotClickListener ());
--
해당 기능은 NAVER CAFE SDK 1.7.0 이상부터 지원합니다.
9. 녹화 완료 Listener
녹화 완료 Linstener를 등록합니다.
녹화 완료시 이벤트가 발생합니다.
OnRecordFinishListener
/** 녹화 완료 리스너 등록
* 동영상 녹화 기능을 사용 할지 결정한다
*
* @param uri 동영상이 녹화된 파일 경로에 대한 uri
*/
class OnRecordFinishListener : AndroidJavaProxy {
public OnRecordFinishListener () : base("com.naver.glink.android.sdk.Glink$OnRecordFinishListener") { /* empty. */ }
void onRecordFinished(String uri) {
GLinkAndroid glink = (GLinkAndroid) GLink.sharedInstance ();
glink.executeArticlePostWithVideo (-1, "", "", uri);
}
}
glinkClass.CallStatic ("setOnRecordFinishListener", new OnRecordFinishListener ());