본문 바로가기

프로그래밍/Kotlin52

[Kotlin] 안드로이드 자동로그인 코드 자동로그인 정보가 저장되는 경로 : /data/data/{packageName}/shared_prefs/{keyName}.xml -> Device file explore에서 찾는다. binding.checkboxSaveLoginInfo는 체크박스, userid와 password는 edittext이다 private lateinit var sharedPreferences : SharedPreferences private lateinit var editor : SharedPreferences.Editor override fun onCreate(savedInstanceState: Bundle?) { .. sharedPreferences = getSharedPreferences("loginInfo", MODE_P.. 2021. 12. 9.
Json데이터 생성 및 Gson 사용 build.gradle implementation 'com.google.code.gson:gson:2.8.6' // gson 사용을 위한 라이브러리 예제 코드 val gsonObj = Gson() val jsonobj = JsonObject() jsonobj.addProperty("컬럼", "Value") // jsonobj에 json 형식으로 저장된다. val jsonData = gsonObj.toJson(jsonobj) // jsonData에 String 형식으로 저장된다. Log.d("Json 확인",jsonData) 2021. 12. 7.
[RetroFit] HTTP, Android -> Spring 데이터 통신 androidManifest.xml Unit // 성공했을때 실행할 함수(이벤트) ){ // 호출하는 곳에서 매개변수를 HashMap 형태로 보내는 방식 // 서버에서 보낸 JSON의 Key값을 가져옴 RetrofitInstance.SERVER.connectRequest(path, param).enqueue(object : Callback{ override fun onResponse(call: Call?, response: Response?) { Log.d("Retrofit", "$path 요청성공") if(response!!.isSuccessful) { resultString = response.body()?.returnValue.toString() onSuccess() } else { Toast.ma.. 2021. 12. 7.
중첩클래스 사용이유 중첩클래스(NestedClass)는 외부에 선언하는 일반 클래스와 다를바없다. 하지만 중첩클래스를 사용하는 이유는 class의 private에 별다른 제약없이 접근할수있기때문에 사용한다. class OuterClass{ companion object{ private val a = 1 private val d = 2 } private val b = 2 class NestedClass{ private val c = 3 companion object{ private val d = 4 fun getA1() = a fun getA2() = OuterClass.a fun getA3() = OuterClass.Companion.a // 에러 : Unresolved reference: b fun getB() = b /.. 2021. 11. 26.