본문 바로가기

개발/Android 개발 주저리

[Android] Picasso 이미지로드 라이브러리 사용시 오류 디버깅 하기 정말 별거 아닌팁인데 모르시는분들이 응근 많은거 같아서 적어봅니다.Picasso 라이브러리를 사용할때 왜 이미지 로드가 되지 않는지 궁금하신적 있으시죠?디버깅을 쉽게할 수 있도록 라이브러리 자체에서 디버그모드를 지원합니다. 물론 성공/실패에 대한 기본적인 콜백개념도 지원하구요 Picasso picasso = new Picasso.Builder(this) .listener(new Picasso.Listener() { @Override public void onImageLoadFailed(Picasso picasso, Uri uri, Exception exception) { //Here your log exception.printStackTrace(); } }) .build(); picasso.load(pr.. 더보기
[Android] retrofit2 + gson 을 이용한 네트워크 처리하기 안드로이드에서 네트워크(API)를 처리할떄는 여러가지 방법이 있습니다.기본 지원하는 urlconnection 를 사용하는 방법이 있고 외부 서드파티 라이브러리를 사용하는 방법이 있습니다. 예전에는 httpClient를 사용했으나 현재는 안드로이드에서는 공식적으로 지원하지 않습니다.그래서 그 대용으로 사용하는 서드파티 라이브러리는 okHttp가 있습니다. 그중 오늘 소개할 retrofit(일명 레트로핏) 은 2.0부터는 okHttp를 사용하고 있습니다.( 뭐 둘다 같은 회사에서 개발한거죠, 스퀘어사 만세! ) 저같은 경우는 3가지 방식 모두 사용하는데 오늘은 레트로핏2 를 통해 간단하게 API통신하는걸 기록해봅니다. 1. 먼저 Gradle에 아래와 같은 dependencies 를 추가해줍니다compile .. 더보기
Android 핫스팟(테더링)을 스마트하게 쓰기위한 모와(Mowa) 개발기 모와(Mowa) 서비스 소개 보기 핫스팟 일명 테더링 이란 무엇일까요?사전적 의미로 딱딱하게 말하면 아래와 같습니다. 테더링(영어: tethering)은 인터넷 접속이 가능한 기기를 이용하여, 다른 기기에도 인터넷에 접속할 수 있게 해주는 기술이다. 블루투스 무선 기술이나 USB 케이블 등으로 두 기기를 연결하여 사용할 수 있으며, 이때 인터넷 접속이 가능한 기기가 다른 기기의 모뎀 역할을 하게 된다.- 위키피디아 한마디로 요약하면 3G/LTE가 되는 휴대폰의 데이터를 사용할 수 있게 하는 기능!즉, 휴대폰의 3G/LTE 데이터를 Wi-Fi로 바꿔주는 기능이며 다른 기기에서 인터넷을 할 수 있게 하는것이죠!근데 이게 응근 사용하기 불편합니다 이기능 자체를 모르시는 분들도 많구요! 그래서! 생각했습니다(지.. 더보기
[Android] 비인증 SSL인증서 사용시 Android Studio에서 무시하고 clone하기 Android Studio 에서 비인증 SSL 인증서를 사용하는 git저장소일경우 프젝트를 clone할 수 없는 문제가 있습니다.이럴떈 git 설정을 통해 무시할 수 있습니다 git이 설치된 경로로 가셔서(혹은 git을 class path로 잡은경우) 아래 명령어를 실행해주세요git config --global http.sslVerify falseGlobal 설정으로 sslVerify옵션을 false로 바꿔주시면 정상적으로 프로젝트를 받아오실 수 있습니다xcode 같은 경우네는 위 값이 true라고 해도 경고창을 한번 보여준뒤 프로젝트를 받아오지만 Android Studio는 아예 받아오질 못합니다. 더보기
[Android] 안드로이드 페이스북 로그인 10초만에 구현하기 ( Facebook Login ) 바로 직전에 카카오톡 로그인 구현을 다루었습니다.그렇다면 가장 많이 사용하는 페이스북은 어떨까요?? 권한 관련 이슈가 있긴하지만 카카오톡보다 훠~~얼씬더 간단합니다.하지만 페이스북 조금다른게 토큰요청후 그토큰을 이용하여 graph api 로 사용자 정보를 다시 조회해야합니다.물론 모든건 페이스북 개발자센터에 다~ 나와있습니다. 본 예제는 따로 샘플없이 다룹니다.본 예제는 로그인요청 버튼을 페이스북에서 제공하는게 아닌 커스텀하여 사용할 수 있도록 구현합니다. 카카오톡을 연동하고 싶으시면 아래 게시물을 참조하세요[Android] 안드로이드 카카오톡 로그인 10초만에 구현하기 ( Kakao Login ) 1. AndroidManifest.xml 2. 로그인요청 버튼 구현 * Arrays.asList 를 이용하.. 더보기
HttpURLConnection 사용시 참고사항 // HttpURLConnection 객체 생성.HttpURLConnection conn = null; // URL 연결 (웹페이지 URL 연결.)conn = (HttpURLConnection)url.openConnection(); // TimeOut 시간 (서버 접속시 연결 시간)conn.setConnectTimeout(CONN_TIMEOUT * 1000); // TimeOut 시간 (Read시 연결 시간)conn.setReadTimeout(READ_TIMEOUT * 1000); // 요청 방식 선택 (GET, POST)conn.setRequestMethod(GET); // Request Header값 셋팅 setRequestProperty(String key, String value)conn.setR.. 더보기
[Android] 안드로이드6.0 권한 처리하기 ( checkSelfPermission ) Android 6.0 Marshmallow 에서 checkSelfPermission 사용하기 안드로이드가 6.0 마시멜로로 업데이트 되면서 크게 바뀐게 하나 있습니다.바로 권한인데요, 기본적인 인터넷 같은 사용권한은 기본권한에 포함되어 따로 사용자에게 동의를 구하지 않아도 됩니다.하지만 기기를 제어할 수 있는( 파일읽기,카메라,블루투스,GPS제어 등등 ) 에 대한 권한은 동의를 받아야만 사용할 수 있습니다.또한 사용자는 언제든지 그 권한 사용을 취소할 수 있습니다. 앱개발시 가령 갤러리를 만들어서 사용한다고 할때 기기의 파일을 읽는 권한인 READ_EXTERNAL_STORAGE 가 필요로 합니다.마시멜로에서는 READ_EXTERNAL_STORAGE 권한에 대한 사용동의를 받지 않을경우 별다른 처리가 없으.. 더보기
[Android] 갤러리에서 랜덤으로 이미지 1장 가져오기 어쩌다보니.. 쓸일이 생겨서 사용한김에 작성해봅니다 위 코드는 갤러리에서 이미지를 랜덤으로 1장가져와서 uri 를 반환해주는 코드입니다 더보기