본문 바로가기
반응형

안드로이드51

Gson과 JSON의 toString 회사에서 Json을 Gson으로 변경하는 작업을 시작한다고 합니다. 그래서 아무 생각 없이 JSONObject를 JsonObject로 바꾸는데 기본적으로 Json과 Gson에 대한 이해도가 부족하다는 것을 깨닫게 되었습니다. 솔직히 두 개의 차이점을 모르고 그냥 변경하고 있었을 때는 몰랐습니다. 이 두 개의 차이가 현저하다는 사실을요! 그러나 문제는 아래 부분의 코드에서 발생했습니다. nurl += "$t=${URLEncoder.encode(u.toString(), "utf-8")}&" 이 코드에서 u는 현재 JsonElement입니다. 하지만 원래 JSONObject를 사용할 때에는 아무런 문제도 없었죠. 하지만 이것을 Gson을 쓰기 위해 변경한 후에 자세히 보니 타입이 JsonElement로 변경되.. 2021. 1. 23.
디버깅과 릴리즈, 그리고 proguard 요즘 회사에서 코틀린으로 어플을 만들고 있는데(정확히 말하면 수정이지만), 디버깅 모드로 테스트하던 어플이 릴리즈 모드를 통해 다른 회사 사람들에게 테스트용으로 전달했더니 여러가지 기능들이 먹히지 않는 문제를 발견했습니다. 기본적으로 이것저것 검색해본 결과로는 디버그 모드가 릴리즈 모드보다 디버깅 관련 데이터를 포함하면서 실행이 되기 때문에 속도 차이가 현저하다는 얘기들이 있습니다. 실제로 제가 안드로이드 apk 파일을 만들었을 때, 디버깅 모드는 11Mb, 릴리즈 모드는 8Mb 정도로 데이터 크기부터 차이가 나는 것을 확인했습니다. 속도나 다른 부분에서는 큰 용량의 데이터를 주고 받지 않는다면 크게 체감할 수 없지만, 휴대폰의 사양을 낮췄을 때는 휴대폰이 데이터를 받지 못해 프로그램을 꺼버리는 등의 문.. 2020. 9. 3.
안드로이드 권한 체크 액티비티의 구성(구버전) 안드로이드 스튜디오를 통한 애플리케이션 제작을 위해서는 여러 가지 기능을 이용해야 합니다. 그중, 권한 설정과 관련된 내용을 일반화해볼까 합니다. 제일 먼저 해야 할 일은 Manifests에 권한들을 추가해주어야 하는 것인데, 그것은 맨 마지막으로 떼고 먼저 자바 코드 먼저 작성해보겠습니다. if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { //퍼미션 상태 확인 if (!hasPermissions(PERMISSIONS)) { //퍼미션 허가 안되어있다면 사용자에게 요청 requestPermissions(PERMISSIONS, PERMISSIONS_REQUEST_CODE); }else{ Intent intent = new Intent(this, RunningA.. 2020. 6. 9.
728x90