해결 class 앞에 public이 없어 접근이 불가능해서 생기는 오류 참고 json8.tistory.com/81 [안드로이드] java.lang.IllegalAccessException: java.lang.Class Android Activity 실행시 AndroidManifest에 Activity 선언되어 있는데도 아래와 같은 에러가 발생함. java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.json.example/com.json.ui... json8.tistory.com
에러 @Field parameters can only be used with form encoding. (parameter #1) for method dbnAPI.postTest 해결 이렇게 써있던 포스트 메소드 위에 @POST("log") fun postTest(@Field("data") param: String): Observable @FormUrlEncoded 한줄 추가해주면 된다. @FormUrlEncoded @POST("log") fun postTest(@Field("data") param: String): Observable 참고 dwenn.tistory.com/45 [Android] Retrofit, POST parameters Retrofit, POST parameters 1 2 3 4 5..
에러 retrofit Expected a string but was BEGIN_OBJECT at line 1 column 2 path $ 원인 result를 스트링 바디로 받게 설정해놨더니 이런 에러가 났다. 해결 그래들 파일(app레벨)에 implement하고 implementation "com.squareup.retrofit2:converter-scalars:2.1.0" ScalarsConverterFactory를 추가해주면 된다. 반드시 GsonConverterFactory위에 써줘야함! val retrofit = Retrofit.Builder() .addCallAdapterFactory(RxJava2CallAdapterFactory.create()) .addConverterFactory(Scala..
에러 CLEARTEXT communication to x.x.x not permitted by network security policy 해결방법 Manifest 파일 application에 이 코드를 추가해주면 된다. android:usesCleartextTraffic="true" 공식 문서를 읽어보니 http의 접근을 허용하지 않는 문제라고 한다. API 레벨 27 이하는 디폴트값이 true로 설정되어있지만, 28부터는 false로 되어있다. 참고 developer.android.com/guide/topics/manifest/application-element#usesCleartextTraffic | Android 개발자 | Android Developers 애플리케이션의 선언입니다. 이 요소는 애..
네이버 아이디로 로그인 안드로이드 개발가이드 네이버아이디로로그인 안드로이드 개발가이드 NAVER Developers - 네이버아이디로로그인 안드로이드 개발가이드 developers.naver.com [오픈 API 이용 신청] 에서 신청한 후 클라이언트 아이디값과 시크릿 값을 얻어주기 build.gradle(Module.app)에 추가해주고 dependencies { // 네이버 아이디로 로그인 implementation 'com.naver.nid:naveridlogin-android-sdk:4.2.6' ... } activity_login.xml 원하는 위치에 로그인 버튼을 추가해준다. Login.kt naver_client_id : 위에서 얻은 클라이언트 아이디 값 naver_client_secret ..
페어(Pair) 리스트를 사용하다가 정렬하는 법을 찾아봤다. sortedBy() 원본 리스트를 바꾸지 않고 소팅된 리스트를 리턴한다. selector을 지정하면 소팅 기준을 정할 수 있다. 페어를 사용할때도 하나의 기준을 두고 정렬하고싶을때 사용하면 된다. pair에 접근할땐 it.first it.second 이런식으로 하면 된다 var sorted = planedit.sortedBy{it.first} 내림차순으로 정렬할땐 sortedByDescending()을 사용하면 된다. sortedWith() 역시 원본 리스트를 바꾸지 않고 소팅된 리스트를 리턴한다. sortedBy()와 다른점은 comparator을 지정해서 다중 기준을 둘 수 있다는 점이다. 첫번째꺼로 먼저 소팅한 후, 두번째꺼로도 소팅을 할..
사용자의 비밀번호를 암호화하지 않고 스트링 그대로 저장하는것은 위험하다. 졸업프로젝트를 진행할때는 MD5 방법을 사용했었는데, 안전한 비밀번호 저장에 대해 알아보다가 단방향 암호화 방법의 문제점을 알게되었다. 먼저, 동일한 메시지가 언제나 동일한 다이제스트를 갖기때문에, brute force방법으로 모든 문자열을 암호화한 후 비교해보면 바로 기존 비밀번호가 뭔지 알게 된다. 또한, 짧은 시간대에 데이터를 검색하기 위해 설계된 해시 함수를 사용하기 때문에 처리 속도가 아주 빠르다. 이는 유저뿐만 아니라 해커에게도 좋은 점인데 비밀번호를 알아내기 위해 일치 여부를 확인해볼때, 한번의 시도에 걸리는 시간이 적으니 많은 시도를 해볼 수 있다. 위의 문제점을 해결하기 위한 방법은 솔팅(salting)과 키 스트레..
옛날에 프래그먼트를 교체하는 방법으로 탭 구조를 구현하는 포스팅을 했었는데 [Android][Kotlin] Fragment 설정, Fragment to Activity 화면 전환 - fragment 적용 탭(tab)형식 UI를 사용하려하는데 fragment가 가장 적합해서 적용해봤다 fragment 2개 먼저 생성 후 import android.content.Context import android.content.Intent import android.os.Bundle i.. yuuj.tistory.com 두번째 탭을 누른 후, 물리 뒤로가기키를 누르면 탭과 하단 프래그먼트 짝이 맞지 않는다는점, 첫번째 탭에서 물리 뒤로가기를 누를 경우 하단 프래그먼트가 공백으로 비워진다는 문제가 생겨서 새로운 방법을 ..
- Total
- Today
- Yesterday
- 프로그래머스
- TextFormField keyboard
- 시뮬레이터 키보드
- 투포인터 알고리즘 파이썬
- 소수 구하기 파이썬
- 백준 1644
- kotlin fragment
- 안드로이드
- 전화번호목록 파이썬
- 코틀린
- 카카오톡으로 로그인 오류
- 백준 1806
- Kotlin
- 백준
- 코틀린 뷰페이저
- 카카오 기출
- 코틀린 바텀네비게이션
- 코틀린 데이터바인딩
- counting sort
- 투포인터 알고리즘
- 백준알고리즘
- 안드로이드 키해시
- 코틀린 리스트뷰
- 백준 2003
- 안드로이드 카카오톡으로 로그인
- flutter simultor
- 카카오 키해시
- 코틀린 뷰바인딩
- 데이터바인딩 뷰바인딩 차이
- 파이썬 최대공약수
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |