728x90
반응형
안드로이드에서 카카오톡 로그인을 구현 중
디바이스에서 켜지지도 않고 오류로 꺼지는 경우가 있다.
카카오톡 개발자 페이지에서 제공하는 샘플 소스를 사용한다고 가정 하였을 때
가장 큰 이유는 세션 초기화이다.
대부분 Login Activity의
Session.getCurrentSession().addCallback(callback)
에서 오류가 발생하게 된다.
또한 로그를 확인해보면 오류 내용은 다음과 같다.
1 2 3 | java.lang.RuntimeException: Unable to start activity ComponentInfo{com.xxxx.xxxx.xxxx/com.xxxx.xxxx.xxxx.LoginActivity}: java.lang.IllegalStateException: Session is not initialized. Call KakaoSDK#init first. | cs |
보시다시피 세션이 초기화 되지 않았다는 것이다.
왜 이런 오류가 발생할까.
1 2 3 4 5 6 7 8 | @Override public void onCreate() { super.onCreate(); instance = this; KakaoSDK.init(new KakaoSDKAdapter()); } | cs |
다음은 샘플소스 중 GlobalApplication의 onCreate 메소드이다.
하단에 있는 KakaoSDK.init(new KakaoSDKAdapter())가 세션을 초기화한다.
해당 코드가 onCreate 내부에 있음에도 불구하고 다음과 같은 오류가 발생하였다는것은
GlobalApplication이 메니페스트에 제대로 등록되지 않았을 가능성이있다.
AndroidMenifest.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.anew.kakao"> <uses-permission android:name="android.permission.INTERNET" /> <application android:name=".GlobalApplication" android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".LoginActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <meta-data android:name="com.kakao.sdk.AppKey" android:value="@string/kakao_app_key" /> <activity android:name=".KakaoSignupActivity"/> <activity android:name=".MainActivity"/> </application> </manifest> | cs |
매니페스트를 통째로 옮겨 보았다.
8번째 줄에 GlobalApplication이 등록된 것을 확인할 수 있다.
카카오톡 개발자 페이지에서도 같은 증상에 다음과 같은 답변이다.
따라서 세션의 초기화가 원인일 확률이 크며, 다른 이유가 있을 수 있으니 샘플 코드를 확인해보기 바란다.
참고 소스 :
http://blog.naver.com/aufcl4858/220783021359
반응형
'개발' 카테고리의 다른 글
[Android] tools:context란? (0) | 2017.04.18 |
---|---|
[Android] Firebase gradle 빌드 오류 (0) | 2017.04.18 |
[AWS] 외부에서 서버 IP로 연결이 되지 않을 때 (8) | 2017.04.18 |
[android] HttpClient/Post META INF DEPENDENCIES 오류 (0) | 2017.04.18 |
[JSP] 톰캣의 기본포트가 이미 사용중 일 때 (0) | 2017.04.18 |
댓글