서버에서 데이터 수신시 특수기호(+ , *,공백)에 대한 처리가 필요할 경우 아래 함수를 적용한다.
fun encodeUrlPart(originalUrl: String): String {
val url = URL(originalUrl)
val path = url.path.split("/").joinToString("/") {
URLEncoder.encode(it, StandardCharsets.UTF_8.toString())
.replace("%2F", "/")
.replace("+", "%20")
.replace(" ", "%2B")
}
val query = url.query?.split("&")?.joinToString("&") {
it.split("=").joinToString("=") {
URLEncoder.encode(it, StandardCharsets.UTF_8.toString())
.replace("%2F", "/")
.replace("+", "%20")
.replace(" ", "%2B")
}
}
return url.protocol + "://" + url.host + path + (if (query != null) "?$query" else "")
}'안드로이드 개발 > 개발팁' 카테고리의 다른 글
| 계속 잊어버리는 onActivityResult 사용법 (0) | 2024.07.10 |
|---|---|
| 헷갈리는 토글 코드 (0) | 2024.06.30 |
| (가변)mutableList 타입으로 초기화 할때 반드시 val 변수에 담자 (0) | 2024.05.28 |
| 이미지를 내부 저장소에 저장하는 함수 (0) | 2024.05.01 |
| LiveData 의 변수는 언제 posVaue 와 value 을 골라서 써야될까? (0) | 2024.04.19 |