본문 바로가기

프로그래밍/안드로이드[Android]

(34)
[Android]네아로, 네이버로 로그인 서비스 구현 [1/2] 오늘은 네이버 아이디로 로그인 서비스인 일명 네아로를 안드로이드 앱(App)에 구현을 해보도록 하겠습니다. 요구사항 우선 네아로를 사용하기 위해선 다음과 같은 요구 사항이 충족되어야 합니다. 애플리케이션 등록 네이버 Developers에 어플을 등록합니다 아래 사이트로 접속합니다. 애플리케이션 - NAVER Developers developers.naver.com 해당 정보를 입력합니다, 저는 테스트 용으로 진행하기 때문에 다음과 같이 입력했습니다. 본인의 환경에 맞게 설정하여 다음 정보를 입력합니다. 안드로이드 AndroidManifest.xml에서 package 명을 복사합니다. 우선 테스트로 진행하기 때문에 다음과 같이 입력하였습니다. 자 그럼 등록 단계는 끝입니다 다음으로 넘어가겠습니다. 개발 환..
[Android] 안드로이드 Logger 사용하기 안녕하세요 오늘은 안드로이드에서 Logger를 사용하는 방법에 대해 알려드리고자 합니다. 제가 소개하는 로거를 사용하면 안드로이드 스튜디오에서 지저분하게, 잘 읽히지 않는 내용을 깔끔하게 볼 수 있습니다. 사용방법은 다음과 같습니다. build.gradle(Module:app) 파일에 다음과 같이 추가합니다. dependencies { //로거 implementation 'com.orhanobut:logger:2.2.0' //현재 최신버전 } Sync Now 를 진행하시고 사용하고자 하는 부분에 아래의 코드를 추가합니다. Logger.addLogAdapter(new AndroidLogAdapter()); 그러고 나서 로그를 출력할 때 다음과 같이 사용합니다. Logger.d("debug"); 추가적으로 ..
KakaoSDK$AlreadyInitializedException 에러 해결 방법 [카카오 로그인 서비스] 안드로이드 개발 시 카카오 로그인 서비스를 구현할 때 로그아웃을 하거나 앱 연결 해제를 할 때 다음과 같은 에러가 발생하는 경우가 있습니다. java.lang.RuntimeException:Unable to start activity ComponentInfo{test.com.login/test.com.login.LoginActivity}: com.kakao.auth.KakaoSDK$AlreadyInitializedException 원인은 다음과 같았습니다. KakaoSDK.init을 앱 시작 시 한 번만 호출해야 하는데 중복으로 호출하는 경우 다음과 같은 에러가 발생한 경우였습니다. 해결방법은 간단합니다. 기존에 KakaoSDK.init() 부분을 찾습니다. KakaoSDK.init(new KakaoSD..
[안드로이드] 해시키 Hash Key 가져오기 안녕하세요 오늘은 안드로이드에서 해시키를 구하는 방법을 알려드리고자 합니다. 우선 해시키는 앱마다 가지고 있는 고유키로 카카오톡, 페이스북 등의 SDK와 연동하기 위해서는 해시키(Hash Key)를 가지고 각각의 앱을 구분하기 때문에 해시키(Hash Key)를 등록해야 합니다. 또한 해시키(Hash Key)는 개발용과 릴리즈 용으로 나뉘어 있기 때문에 배포하기 전 반드시 릴리즈용 키를 등록해야 되는 점 참고하시기 바랍니다. 자 우선 본인이 확인하고자 하는 액티비티에 다음과 같이 코드를 작성합니다. private void getHashKey(){ PackageInfo packageInfo = null; try { packageInfo = getPackageManager().getPackageInfo(get..
[안드로이드] error: package R does not exist 해결방법 안드로이드에서 다음과 같은 에러를 볼 수 있습니다. error: package R does not exist 원인은 manifests 파일에 액티비티를 선언하지 않은 경우 발생합니다. 다음과 같이 AndroidManifest.xml 파일 안에 액티비티를 적어 주시면 해결이 가능합니다. ... 위 방법으로도 해결이 안되거나 액티비티를 정상적으로 추가를 해도 해결이 되지 않은경우 다음과 같이 진행해 주세요. Build - Rebuild Project 를 클릭하여 다시 컴파일 해보시기 바랍니다. 감사합니다.
[안드로이드] ERR_CLEARTEXT_NOT_PERMITTED 해결방법 안드로이드 개발 중 다음과 같은 에러를 확인할 수 있습니다. ERR_CLEARTEXT_NOT_PERMITTED 수정 이후 에러는 로그에 안 찍히는데 Webview에서 ERR_CLEARTEXT_NOT_PERMITTED 나 인터넷 통신이 안된다 하시면 다음 태그를 추가합니다. 마찬가지로 application 속성에 다음과 같은 코드를 추가합니다. android:usesCleartextTraffic="true" 그리고 다시 실행해보시면 잘 실행되는 것을 볼 수 있습니다. 원인으로는 다음과 같습니다. Android OS 9 Pie 버전부터는 WebView에 일반적인 텍스트로 "http://" URL 접근이 막혔습니다. (tagetSdkVersion 28 이상일 경우) 증상 : WebView에서 Webpage n..
[안드로이드] apache http 에러 해결 방법[Android 9 버전] 저도 핸드폰 기종을 변경하게 되면서 Android 9 이상을 사용하게 되면서 기존에 작동하는 앱이 다음과 같은 에러를 발생시켰습니다. 일단 원인으로는 다음과 같습니다. 최신 버전에서는 Apache HTTP 클라이언트가 지원 중단되었기 때문에 별도로 설정해줘야 한다고 하네요. 아래의 사이트를 들어가 보시면 자세히 나와있습니다. Android 6.0 변경 사항 | Android Developers Along with new features and capabilities, Android 6.0 (API level 23) includes a variety of system changes and API behavior changes. This document highlights some of the key cha..
[Firebase] 안드로이드 백그라운드 포그라운드 동시 처리 방법. 웹서버에서 FIrebase를 이용하여 안드로이드로 푸시 메시지를 보낼 때 백그라운드와 포그라운드가 각각 별도로 핸들링을 해야 합니다. 우선 클라우드 메시징이 안되신 분들은 아래의 글을 참고해주세요. [Firebase] 스프링 웹서버에서 안드로이드에 푸시 메시지 보내기[FCM를 이용] 스프링 웹서버에서 Firebase를 이용하여 안드로이드로 푸시 메시지를 보내는 방법에 대해 알려드리고자 합니다. 위와 같이 웹서버에서 원하는 내용을 안드로이드에 푸시를 보내는 방법을 소개해 드리겠습니다. 또.. baessi.tistory.com 자 그리고 앱 실행 중에도 푸시 알림을 받기 위해 MyFirebaseMessagingService를 구현하셨을 겁니다. ​이를 구현하면서 백그라운드는 별도로 동작하고 포그라운드 상태에..