전체 글: 247개의 글
안드로이드에서 gradle에 라이브러리를 추가해서 사용을 하다보면 경우에따라 최신버전을 사용해야하는 경우가 있습니다. 일일히 github에서 라이브러리 버전을 체크한다던지 안드로이드 스튜디오에 있는 library dependency를 검색해서 확인하는 방법이 있지만 검색어에 따라 결과가 너무 많이 뿌려지기 때문에 불편함이 있었습니다. 그러다 VersionChecker 플러그인을 발견하게되었고 소개해드리고자합니다. Seetings -> Plugins으로 이동하여 version checker라고 입력을 합니다. 검색결과에는 나타나지 않습니다. search in repositories를 눌러봅니다. 검색결과가 하나 나타납니다. install을 눌러 설치합니다. 그리고 안드로이드 스튜디오를 restart 해주세..
우리는 흔히 디버깅을 위해서 Log를 쓰곤 합니다.Log는 디버깅을 하는데에 있어서 치유제가 되지만 때론 독이되기도 합니다.로그를 비활성화 시키지 않으면 배포된 어플리케이션에서도 다양한 Log를 통하여 뜻하지 않은 정보를 유출시킬 수 있습니다.그리고 필자가 이제까지 로그설정에 대해 심각한 오류를 가지고 있었고 바로잡았습니다.보통 우리는 gradle에 각종 설정값들을 입력합니다. buildTypes { release { debuggable false } debug { debuggable true } } buildTypes에 realese와 debug 모드로 나누어 사용하는 모습입니다. 필자는 debuggable이 디버그의 활성화 유무를 설정하는 것이라는 오해를 하였습니다.실제 debuggable의 기능은 ..
This app is using a lightweight version of the Google Mobile Ads SDK that requires the latest Google Play services to be installed, but Google Play services is either missing or out of date. 안드로이드 4+에서 애드몹과 관련해 안보이는 현상이 일어나서 구글링을 해보니 일종의버그라고 한다. 참고페이지http://stackoverflow.com/questions/37330290/no-admobs-displayed-on-2-3-but-displayed-with-android-4-with-google-play-servic 해결방법이 없는가 싶었는데 해당어플의 캐시..
No acceptable module found. Local version is 0 and remote version is 0. this problem has due to there is no playstore in phone of user when you using firebase libraryif you guiding to install playstore to user. it is would be solved.if already installed playstore, have to version update 해당 폰에 플레이스토어가 없어서 생기는 문제다.firebase를 적용하면서 오류가 발생했는데 이전의 구형폰들은 안드로이드 마켓이 깔려있기 때문이다.플레이스토어를 설치하도록 유도하여 플레이스토어가 설..
RxJava Delay Observable myObservable = Observable.create( new Observable.OnSubscribe() { @Override public void call(Subscriber
앱을 개발했으면 수익을 창출해 볼 시간입니다.수익을 창출하는 방법은 여러가지가 있겠지만 가장 접근하기 쉬운것이 광고가 아닐까 합니다.이번 시간에는 facebook의 광고플랫폼인 audience-network에 대해 포스팅하겠습니다. https://developers.facebook.com/ 로 이동합니다. 개발자페이지에 가입을 하고 프로젝트를 만듭니다. 만드는 자세한 사항은 다큐먼트를 참조하여도 좋습니다. 프로젝트를 만든 후 프로젝트를 클릭하여 이동하면 좌측 상단에 여러가지 메뉴늘 볼 수 있습니다.앱 이름 우측의 화살표를 클릭하면 테스트를 만들 수 있는 기능도 제공합니다. 우리가 필요한것은 audience-network 이기 때문에 audience-network 를 선택합니다.페이스북 광고플랫폼을 붙이기..
이번에 급식앱을 만들면서 버전관리를 해야할 필요성을 느꼈는데요. 기존의 버전관리는 단순히 playstore에 등록이 되면 그 정보를 가져다 파싱하여 업데이트 비교를 하곤했습니다. 여기서 문제가 캐시때문에 실제 서버에 반영되어 가져온 정보와 사용자가 보는 정보가 다르다는 것입니다. 즉, 플레이스토어에는 업데이트버전이 올라가있지만 사용자는 캐시때문에 구버전이 보여 업데이트가 이루어지지 않는다는 점입니다. 그래서 서버에서 버전정보를 받아와 업데이트를 해주는게 더 낫다고 판단하여 구현을 생각하게 되었는데 단지 버전관리만을 위해서 서버를 임대한다는 건 500원이라도 낭비라고 생각했습니다. 그래서 알아보던 중 Firebase의 Realtime Database를 써보기로 했습니다. Firebase는 이전에 통계를 붙..
우리는 앱을 만들고 그것을 지속적으로 유지, 관리해야합니다.유지, 관리가 없는 앱은 인기가 없어지며 새로운 앱에게 밀리게됩니다.우리는 지속적인 유지를 위해 통계를 이용해 분석하고 더 나은 방향으로 modify합니다. 우리는 지금까지 앱 분석도구를 사용해왔습니다. google analytics, Flurry등이 대표적이죠.제일 많이 사용하는 도구가 google analytics이고 이는 웹 분석 전용 도구입니다.하지만 구글에서 모바일 전용 플랫폼을 내세웠는데 바로 firebase입니다.firebase안에는 realtime database, analytics등이 포함되어있습니다.애드몹도 이번에 새롭게 firebase안에 추가가 되었습니다. 하지만 세분화된 분석은 google analytics가 나아보였습니다..
프로그램 개발시 디버깅은 필수입니다. 개발시에는 개발자가 디버깅을 하지만 앱을 출시한 후에는 어떤 에러가 났는지 알기가 쉽지 않습니다. 그래서 어떤 에러가 발생했는지 자동으로 리포팅해주는 이슈트래커는 필수입니다. 여러가지 이슈트래커가 있지만, 야후에서 제공하는 페브릭만큼 간편하고 강력한 이슈트래커는 아직까지 못봤습니다. 정확히는 Fabric의 crashlytics입니다. 우선 ctrl + alt + s 를 눌러서 settings 창을 띄운 후 plugins으로 이동합니다. fabric이란 키워드를 입력하고 Browse를 클릭합니다. Fabric이 검색되면 install하고 재시작을 해줍니다. 재시작 후, 오른쪽에 Fabric아이콘이 생긴 것을 볼 수 있습니다. 아이콘을 클릭하여 실행버튼을 누르면 다음과 ..
신나게 코딩하다 빌드하려하면 with non-zero exit value 가 포함된 에러가 나올 때가 있다. Full Exception은 다음과 같다. Error:Execution failed for task ':app:transformClassesWithDexForDebug'. > com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.8.0_65\bin\java.exe'' finished with non-zero exit ..