본문 바로가기 메뉴 바로가기

개발 노트

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

개발 노트

검색하기 폼
  • 분류 전체보기 (65)
    • android (38)
    • linux (4)
    • React Native (8)
    • Mongo DB (2)
    • Mac (1)
    • javascript (1)
    • algorithm (1)
    • kotlin (7)
  • 방명록

분류 전체보기 (65)
함수를 호출한 부모 함수명 가져오기

Thread.currentThread().getStackTrace()[3].getMethodName() 뎁스에 따라 2~4가 될수도 있을 것 같다,

카테고리 없음 2023. 9. 11. 10:48
앱에서 사용중인 퍼미션 가져오기

String packageName = getPackageName(); try { // 패키지 정보 가져오기 PackageManager packageManager = getPackageManager(); // 패키지의 사용 퍼미션 목록 가져오기 String[] permissions = packageManager.getPackageInfo(packageName, PackageManager.GET_PERMISSIONS).requestedPermissions; if (permissions != null) { // 사용 중인 퍼미션 목록 출력 또는 다루기 for (String permission : permissions) { System.out.println("사용 중인 퍼미션: " + permission); }..

카테고리 없음 2023. 9. 6. 10:17
di 패턴, dagger, hilt

Dependency injection이란? 정의 : 의존성 주입의 줄임말 요약 : 필요로 하는 의존성을 외부(생성자, 파라미터 등)에서 전달받는것 안하면 안좋은 점 : 코드의 유연성과 확장성이 떨어짐 또한 기능 및 코드 변경 할 때 많은 코드를 수정해야 함 하면 좋은 점 : 안좋은점의 반대, + 테스트 코드 작성에 용이함 dagger 예제 1. @Component interface정의 2. 의존성 주입할 module 정의 3. 데이터 가져올 ApiService 정의 4. 의존성 주입 * DaggerAppComponent는 Dagger lib에서 자동으로 생성되며, 이름 규칙은 "{Dagger$@ComponentInterfaceName} --------------------------------------..

android 2023. 4. 4. 18:06
system screen rotate click listener

private val autoRotateObserver = AutoRotateObserver(this, listener) contentResolver.registerContentObserver( Settings.System.getUriFor(Settings.System.ACCELEROMETER_ROTATION), true, autoRotateObserver ) override fun onDestroy() { super.onDestroy() contentResolver.unregisterContentObserver(autoRotateObserver) } class AutoRotateObserver(context: Context, listener: RotateConfigEventListener) : Cont..

android 2023. 3. 7. 18:09
retrofit으로, rx and coroutine

class MainViewModel(val app: Application) : AndroidViewModel(app) { val tagtag = "tag@" val retrofit: RetrofitApi = RetrofitBuilder.getApiService("https://api.bithumb.com/") init { initCoinRx() initCoinCoroutine() } @SuppressLint("CheckResult") fun initCoinRx() { retrofit.getCoinInfoRx("BTC") .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe { coin -> Log.d(tagt..

android 2023. 2. 3. 15:23
android mvvm 예제

본 예제에 model 부분은 없습니다. data 관련 핸들링은 모두 model에서 해야하고, viewmodel에선 view에 로직만 담당합니다. databinding, kotlin을 사용합니다. 사용 파일들은 아래와 같습니다. * AActivity.kt * A1Viewmodel.kt * A2Viewmodel.kt * a_activity.xml * a1_viewmodel.xml * a2_viewmodel.xml 1. AActivity.kt class AActivity :AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) DataBindingUtil.setConte..

android 2023. 1. 30. 10:17
groupBy, Pair, collection.sort, reduce, fold

val group = intArrayOf(1,1,1,2,2,3).groupBy { it } group.apply { println("this : $this") // {1=[1, 1, 1], 2=[2, 2], 3=[3]} println("group.keys : $keys") // [1, 2, 3] println("group.values : $values") // [[1, 1, 1], [2, 2], [3]] println("group.values.sort 1 : ${values.sortedByDescending { it.size }}") // [[1, 1, 1], [2, 2], [3]] println("group.values.sort 2 : ${values.sortedBy { it.size }}") // [..

kotlin 2022. 11. 29. 17:45
Codility MissingInteger

fun MissingInteger(A: IntArray):Int { val set = HashSet() set.addAll(A.toList()) var value = 1 for (i in 1 .. 1000000) { if (!set.contains(i)) { value = i break; } } return value } 100%성공함ㅋㅋㅋㅋㅋㅋ 이건 아닐텐데 하면서 한건데 어이가 없네..

kotlin 2022. 11. 1. 20:56
kotlin with, also, apply, let, run

with 사용 규칙 Non-nullable (Null 이 될수 없는) 수신 객체 이고 결과가 필요하지 않은 경우에만 with 를 사용합니다. -> 리턴이 없을때 사용 also 사용 규칙 수신 객체 람다가 전달된 수신 객체를 전혀 사용 하지 않거나 수신 객체의 속성을 변경하지 않고 사용하는 경우 also 를 사용합니다. -> 객체 내부 값을 바꾸기 싫을 때 apply 사용 규칙 수신 객체 람다 내부에서 수신 객체의 함수를 사용하지 않고 수신 객체 자신을 다시 반환 하려는 경우에 apply 를 사용합니다. -> 객체의 내부 값을 바꾸고 싶을 때 let 사용 규칙 다음과 같은 경우에 let 을 사용합니다. 지정된 값이 null 이 아닌 경우에 코드를 실행해야 하는 경우. Nullable 객체를 다른 Nulla..

kotlin 2022. 9. 29. 10:30
kotlin 배열 선언 및 반복문 문법

배열 선언 하는 법 var intArr:Array = arrayOf(1, 2, 3, 4) var intArr2 = arrayOfNulls(5) var anyArr : Array = arrayOf(1, "awd", 3.2, 4) 반복문 쓰는 법 for(i: Int in 1..10) print("$i ") //output : 1, 2, 3, 4, 5 ... 10 val len: Int = 5 for(i in 1..len) print("$i ") //output : 1, 2, 3, 4, 5 for(i in 1 until len) print("$i ") //output : 1, 2, 3, 4 for(i: Int in 1..10 step(2)) print("$i ") //output : 1, 3, 5, 7, 9 ..

kotlin 2022. 9. 29. 10:25
이전 1 2 3 4 ··· 7 다음
이전 다음
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
  • insert
  • not found adb
  • mongo db
  • rn
  • https://hwan-shell.tistory.com/244
  • 자바
  • 명령어
  • nosql
  • spannableText
  • 함수형 코드
  • not working adb
  • 차번호 정규표현식
  • Android
  • 안드로이드
  • React Native
  • 귀찮아;;
  • adb 환경변수
  • 구글 맵 경로 그리기
  • not starting .bash_profile
  • 차번호 정규식
  • react native state
  • text 부분 색 칠하기
  • https://medium.com/@limgyumin/%EC%BD%94%ED%8B%80%EB%A6%B0-%EC%9D%98-apply-with-let-also-run-%EC%9D%80-%EC%96%B8%EC%A0%9C-%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94%EA%B0%80-4a517292df29
  • ubunut 설치 link
  • mac android
  • 구글 맵 선그리기
  • MongoDB
  • ubunut android
  • 클래스형 코드
  • 데이터베이스
more
«   2026/02   »
일 월 화 수 목 금 토
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
글 보관함

Blog is powered by Tistory / Designed by Tistory

티스토리툴바