-
[Android]안드로이드 앱에 SNS공유 기능 넣기(with 카카오링크)Development/Android 2016. 12. 20. 16:31반응형
테스트 환경
안드로이드 버전
6.0.1
기기명(모델)
삼성 갤럭시노트4S-LTE(SM-N916L)
개발 툴
안드로이드 스튜디오 2.2.3
테스트 날짜
2016-12-20
오늘은 내가 만든 앱에 SNS공유 기능을 넣는 방법을 배워보겠습니다!
공유기능은 거의 모든 앱에 있는 기능 중 하나이기도 합니다.
아래 보시는 것 처럼 오늘은 카카오톡으로 공유하는 방법을 소개합니다.
우선 준비물입니다.
제가 주로 이용하는 무료 아이콘 다운로드 사이트가 있습니다.
개발자라면 자주 이용할 사이트가 아닐까 싶네요 ㅎㅎ
여기서 블랙, 화이트 둘 중 하나 선택해서 다운로드 받을 수 있으니 참고하세요~
순서
1. 위 사이트에서 공유 이미지를 다운 받습니다. (다운 받은 이미지는 안드로이드 프로젝트 파일 drawable 폴더에 넣습니다.)
2. 카카오 개발자 페이지에 가입(혹은 로그인)을 합니다 (https://developers.kakao.com/)
3. 이후 아래 내용 참고 혹은 (https://developers.kakao.com/docs/android#카카오링크) 참고
카카오 개발자 페이지에도 상세히 잘 나와있습니다^^
위 카카오 개발자 페이지에 로그인 후 [앱 개발 시작하기]를 눌러줍니다.
그러면 위와 같은 화면이 나타나고 [앱 만들기]를 눌러줍니다.
그리고 개발할 애플리케이션 명을 입력합니다.
그러고 나면 위와 같이 여러 키 값이 생성되며, 저는 네이티브 앱을 만들었기 때문에 네이티브 앱 키를 메모장 등에 따로 복사해놓습니다.
그리고 위 '설정'을 누릅니다.
설정을 눌러 [플랫폼 추가]버튼을 누른 뒤 패키지명과 마켓URL을 입력합니다.
아직 앱이 없고 테스트용도로만 사용하실거면 아무렇게나 입력하셔도 무방합니다.
이제 안드로이드 스튜디오를 실행합니다.
안드로이드 프로젝트 생성 후 카카오 SDK를 설치해야합니다.
1. 우선 build.gradle(프로젝트 파일)에 다음 내용을 추가합니다.
subprojects {
repositories {
mavenCentral()
maven { url 'http://devrepo.kakao.com:8088/nexus/content/groups/public/' }
}
}2. build.gradle(APP 파일)에 다음 내용을 추가합니다.
//kakao sdk
compile group: 'com.kakao.sdk', name: 'kakaolink', version: project.KAKAO_SDK_VERSION저는 카카오 링크만 사용할 것이기 때문에 위 한 줄만 입력했습니다.
카카오링크, push 등을 사용하실분은 카카오 개발자 페이지를 참고하세용
3. gradle.properties 파일에 다음과 같이 입력합니다.
KAKAO_SDK_VERSION = 1.1.7
4. 안드로이드 프로젝트 폴더의 res>values 경로에 kakao_strings.xml 파일을 생성한 뒤 다음 소스를 입력합니다.
<resources> <string name="kakao_app_key">AAAAAAAAAAAAAAAAAAAAAA</string> <string name="kakao_scheme">kakaoAAAAAAAAAAAAAAAAAAAAAA</string> <string name="kakaolink_host">kakaolink</string> </resources>
여기서 [AAAAAA..]에 해당하는 부분은 아까 메모장에 복사해두었던 네이티브 키를 입력하시면 됩니다.
5. AndroidManifest.xml파일에는 다음과 같이 입력합니다.
<application> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="@string/kakao_scheme" android:host="@string/kakaolink_host" /> </intent-filter> </activity> <meta-data android:name="com.kakao.sdk.AppKey" android:value="@string/kakao_app_key" /> </application>
이제 카카오 API를 사용할 준비는 모두 마쳤습니다.
다음 소스를 입력해서 테스트 해보시면 됩니다^^
public void shareKakao()
{
try{
final KakaoLink kakaoLink = KakaoLink.getKakaoLink(this);
final KakaoTalkLinkMessageBuilder kakaoBuilder = kakaoLink.createKakaoTalkLinkMessageBuilder();
/*메시지 추가*/
kakaoBuilder.addText("카카오링크 테스트입니다.");
/*이미지 가로/세로 사이즈는 80px 보다 커야하며, 이미지 용량은 500kb 이하로 제한된다.*/
String url = "https://lh3.googleusercontent.com/4FMghyiNYU73ECn5bHOKG0X1Nv_A5J7z2eRjHGIGxtQtK7L-fyNVuqcvyq6C1vIUxgPP=w300-rw";
kakaoBuilder.addImage(url, 160, 160);
/*앱 실행버튼 추가*/
kakaoBuilder.addAppButton("앱 실행 혹은 다운로드");
/*메시지 발송*/
kakaoLink.sendMessage(kakaoBuilder, this);
}catch (Exception e)
{
e.printStackTrace();
}
}저는 메뉴에 공유 이미지를 넣어서 이벤트를 처리했습니다.
위 버튼을 누르니 잘 되네요 ㅎㅎ
[앱 실행 혹은 다운로드] 버튼을 누르게 되면 설치가 이미 되어 있을 경우 앱실행,
그렇지 않으면 다운로드 페이지(구글 플레이)로 넘어갑니다.
이상으로 카카오톡 링크 넣는 방법을 모두 알아보았습니다~!
다음 시간에는 페이스북, 트위터 등의 SNS 공유 기능도 소개하도록 하겠습니당
기대해 주세요~
앱 다운로드 : https://play.google.com/store/apps/details?id=com.handykim.nbit.everytimerfree
개발된 앱 정보 보기 : http://citynetc.tistory.com/146
2016/12/21 - [Programming/Android] - [Android]안드로이드 앱에 SNS공유 기능 넣기(with 페이스북 링크)
2016/12/22 - [Programming/Android] - [Android]안드로이드 앱에 SNS공유 기능 넣기(with 트위터 링크)
2016/12/23 - [Programming/Android] - [Android]안드로이드 앱에 SNS공유 기능 넣기(with 인스타그램 링크)
2016/12/23 - [Programming/Android] - [Android]안드로이드 앱에 SNS공유 기능 넣기(with 라인)
반응형'Development > Android' 카테고리의 다른 글
[안드로이드]커스텀 다이얼로그 해상도 비율에 맞게 크기 조절하기 (0) 2017.09.29 [Android]안드로이드 - 앱을 설치할 수 없음 505에러 뜨는 원인 (0) 2016.12.24 [Android]안드로이드 앱에 SNS공유 기능 넣기(with 라인) (0) 2016.12.23 [Android]안드로이드 앱에 SNS공유 기능 넣기(with 인스타그램 링크) (9) 2016.12.23 [Android]안드로이드 앱에 SNS공유 기능 넣기(with 트위터 링크) (1) 2016.12.22 [Android]안드로이드 앱에 SNS공유 기능 넣기(with 페이스북 링크) (6) 2016.12.21 [Android]SQLite db에 이미지(비트맵,Drawable) 저장(읽기,쓰기) 하는 법 (3) 2016.11.03 [Android]안드로이드 버전에 따른 AlarmManager 사용법 (6) 2016.09.29 [Android]디바이스 화면 켜기 (0) 2016.09.29 [Android]ViewPager 내부 Fragment와 ListView, Item 갱신하기 (17) 2016.06.10