728x90
반응형
Kakao Developers
카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.
developers.kakao.com
1. AnroidManifest.xml에 쿼리 요소를 추가해주고 커스텀 스킴(Scheme)을 설정해줍니다.
<manifest package="com.example.sample">
<!--queries에 카카오톡 패키지 추가-->
<queries>
<package android:name="com.kakao.talk" />
</queries>
...
</manifest>
<activity android:name=".{YOUR_ACTIVITY_NAME}">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<!-- "kakao{YOUR_NATIVE_APP_KEY}://kakaolink" 형식의 앱 실행 스킴을 설정하는데 사용 -->
<data android:host="kakaolink"
android:scheme="kakao{YOUR_NATIVE_APP_KEY}" />
</intent-filter>
</activity>
2. Kakao Sdk를 초기화시켜주는 클래스를 생성하고 해당 클래스 이름을 매니페스트 name에 추가합니다.
public class KakaoApplication extends Application {
private static volatile KakaoApplication instance = null;
@Override
public void onCreate() {
super.onCreate();
instance = this;
// Kakao Sdk 초기화
KakaoSdk.init(this, "0a7897983e0a0efaacad8f23437ba7a9");
}
}
<application
android:name=".KakaoApplication"
... >
3. 카카오링크를 통해 보낼 템플릿을 설정해준다.
public static Content content;
public static Social social;
public static List<com.kakao.sdk.template.model.Button> buttons;
public static FeedTemplate defaultFeed;
Link link = new Link("https://jhuinee-diary.tistory.com/","https://jhuinee-diary.tistory.com/");
content = new Content("Title", "이미지 url", link , "desc");
social = new Social(286,45,845);
buttons = List.of(new com.kakao.sdk.template.model.Button("웹으로 보기",link));
defaultFeed = new FeedTemplate(GlobalVar.content, GlobalVar.social, buttons);
* com.kakao.sdk.template.model.Button : android.widget.Button과 중복되지 않게 안드로이드 자체에서 저렇게 추가됨
* 이 때 url은 카카오 디벨로퍼에 웹 도메인 URL로 등록해야한다.
4. LinkClient를 통해 해당 템플릿을 보낸다.
LinkClient.getInstance().defaultTemplate(mContext, defaultFeed,null, (linkResult, throwable) -> {
if (throwable != null) {
Log.e("TAG", "카카오링크 보내기 실패", throwable);
}
else if (linkResult != null) {
mContext.startActivity(linkResult.getIntent());
// 카카오링크 보내기에 성공했지만 아래 경고 메시지가 존재할 경우 일부 컨텐츠가 정상 동작하지 않을 수 있습니다.
Log.w("TAG", "Warning Msg: "+ linkResult.getWarningMsg());
Log.w("TAG", "Argument Msg: "+ linkResult.getArgumentMsg());
}
return null;
});
728x90
반응형
'Android > 튜토리얼 및 가이드' 카테고리의 다른 글
[Android/Training] 사진을 외부앱으로 전송하기 (0) | 2023.05.09 |
---|---|
[Android/Training] View를 사진으로 저장하기 (0) | 2023.05.09 |
[Android/SDK연동]SNS 로그인 구현(6) - 카카오톡 로그인 SDK V2 (0) | 2021.05.14 |
[Android/API]SNS 로그인 구현(5) - 네이버 JSON 파싱으로 계정 정보 얻어오기 (0) | 2021.05.14 |
[Android/SDK연동]SNS 로그인 구현(4) - 페이스북 (0) | 2021.05.12 |