전체 글106 Firebase Auth 와 Realtime Database 이번에 급식앱을 만들면서 버전관리를 해야할 필요성을 느꼈는데요.기존의 버전관리는 단순히 playstore에 등록이 되면 그 정보를 가져다 파싱하여 업데이트 비교를 하곤했습니다.여기서 문제가 캐시때문에 실제 서버에 반영되어 가져온 정보와 사용자가 보는 정보가 다르다는 것입니다. 즉, 플레이스토어에는 업데이트버전이 올라가있지만 사용자는 캐시때문에 구버전이 보여 업데이트가 이루어지지 않는다는 점입니다.그래서 서버에서 버전정보를 받아와 업데이트를 해주는게 더 낫다고 판단하여 구현을 생각하게 되었는데 단지 버전관리만을 위해서 서버를 임대한다는 건 500원이라도 낭비라고 생각했습니다. 그래서 알아보던 중 Firebase의 Realtime Database를 써보기로 했습니다. Firebase는 이전에 통계를 붙이기 .. 2016. 6. 12. 모바일 통계 분석 툴 google Analytics에서 Firebase Analytics로.... 우리는 앱을 만들고 그것을 지속적으로 유지, 관리해야합니다.유지, 관리가 없는 앱은 인기가 없어지며 새로운 앱에게 밀리게됩니다.우리는 지속적인 유지를 위해 통계를 이용해 분석하고 더 나은 방향으로 modify합니다. 우리는 지금까지 앱 분석도구를 사용해왔습니다. google analytics, Flurry등이 대표적이죠.제일 많이 사용하는 도구가 google analytics이고 이는 웹 분석 전용 도구입니다.하지만 구글에서 모바일 전용 플랫폼을 내세웠는데 바로 firebase입니다.firebase안에는 realtime database, analytics등이 포함되어있습니다.애드몹도 이번에 새롭게 firebase안에 추가가 되었습니다. 하지만 세분화된 분석은 google analytics가 나아보였습니다.. 2016. 6. 6. Android Issue Tracker 디버깅을 쉽게 !! Fabric crashlytics 프로그램 개발시 디버깅은 필수입니다. 개발시에는 개발자가 디버깅을 하지만 앱을 출시한 후에는 어떤 에러가 났는지 알기가 쉽지 않습니다. 그래서 어떤 에러가 발생했는지 자동으로 리포팅해주는 이슈트래커는 필수입니다. 여러가지 이슈트래커가 있지만, 야후에서 제공하는 페브릭만큼 간편하고 강력한 이슈트래커는 아직까지 못봤습니다. 정확히는 Fabric의 crashlytics입니다. 우선 ctrl + alt + s 를 눌러서 settings 창을 띄운 후 plugins으로 이동합니다. fabric이란 키워드를 입력하고 Browse를 클릭합니다. Fabric이 검색되면 install하고 재시작을 해줍니다. 재시작 후, 오른쪽에 Fabric아이콘이 생긴 것을 볼 수 있습니다. 아이콘을 클릭하여 실행버튼을 누르면 다음과 .. 2016. 6. 4. split error 오늘 value object의 데이터를 구분자를 이용하여 String으로 묶고 푸는 작업을 하다 에러를 경험하였습니다. 문자를 구분해주는 구분자는 보통 컴마 (,) 를 사용합니다. 하지만 복잡한 구조의 경우 뎁스를 표현하기 위해서 구분자가 여러개 들어가는 경우도 있습니다. 오늘 에러가 난 이유는 구분자를 | 로 사용해서인데, 구글링해보니 정규식의 특수문자라는 사실을 알게되었습니다. 정규식의 Special Character는 다음과 같습니다. * + ? ^ $ . [] {} () | / \ 되도록 split 할 때에는 정규식의 Speical Character는 피해서 사용해야겠네요. split시 위의 정규식 예약어를 사용하는 방법도 있습니다. \를 붙여주면되는데요 가령 ?의 경우 \?를 사용하면 되겠습니다.. 2016. 3. 16. non-zero exit value Multidex Error 신나게 코딩하다 빌드하려하면 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 .. 2016. 3. 8. photoview library 우리가 흔히 사진에 줌 기능을 넣을 때 쓰는 라이브러리가 chrisbanes 의 PhotoView다. https://github.com/chrisbanes/PhotoView 사용을 위해 간편하게 디펜던시에 추가하면 끝 compile 'com.commit451:PhotoView:1.2.4' 사용법도 간편하다 ImageView iv = (ImageView) findViewById(R.id.imageView); Drawable bitmap = getResources().getDrawable(R.drawable.wallpaper); iv.setImageDrawable(bitmap); PhotoViewAttacher mAttacher = new PhotoViewAttacher(mImageView);ImageVie.. 2016. 3. 8. 구글맵 사용하기 이전에 구글맵은 LocationManager를 이용하여 gps와 network를 비교하며 사용했다.이 과정이 복잡하고 처리도 늦어 구글에서 대대적인 개혁을 했으니.바로 GoogleApiClient를 이용하여 서비스 한다. 이전의 처리방법LocationManager locationManager = (LocationManager) context.getSystemService(Activity.LOCATION_SERVICE); boolean isGpsEnabled = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER); boolean isNetworkEnabled = locationManager.isProviderEnabled(LocationMana.. 2016. 2. 24. Goolgle map api 설정 1. 구글 개발자 콘솔 접속https://console.developers.google.com/ 2. 로그인 후 우측 상단의 표시부분을 클릭 3. 새 프로젝트 생성 4. 생성 후 이동된 화면에서 api 사용설정 클릭 5. googlmap android api 클릭 6. api 사용 enable 클릭 7. 좌측메뉴의 사용자 인증정보 탭 클릭을 하면 아래의 화면이 보인다.Create credentials 클릭 후 api키 선택 8. Android 키 클릭 9. 이름에는 구분할 수 있는 이름으로 명시해주고 아래 패키지명과 SHA-1 인증서 지문을 적는다.이 때 두개를 입력해야 하는데, 하나는 디버그용 하나는 build용이다. - 인증서 지문 얻는 방법 http://akaisun.tistory.com/admin.. 2016. 2. 21. SHA-1 인증서 지문구하기 - The way getting the SHA1 우리가 흔히 구글맵 등의 api를 사용하기 위해서는 sha1 인증서 등을 구해야 할 경우가 종종 있다.- Sometimes we need sha1 when using google api debug키를 기준으로 설명하겠다.- i will explain based on debug key 우선 cmd창을 띄우자.- first, open the cmd window 윈도우의 시작버튼을 누르고 검색창에 cmd라 적는다.- press window key, input cmd into the search box 창의 띄워지면 인증서가 있는 해당폴더로 이동한다.- and then, move the folder that contains debugkey file. keytool -list -v -keystore debug.k.. 2016. 2. 21. 이전 1 ··· 7 8 9 10 11 12 다음