전체글 61

SwitfUI) 버튼이 Text 레이블 외의 영역에서도 클릭되게 하기

Button(action: {print("Customer clicked")}) { NavigationLink(destination: CustomerMainView()) { Text("주문하기\n\nᐅ") .bold() .foregroundColor(Color.white) .background(Color(hex: "#80B3FF")) .frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .center) } }.background(Color.blue) 스위프트 UI에서 버튼을 만들고 클릭을 해보면 텍스트 부분밖에 액션이 잡히지 않는 현상을 볼 수 있다 분명 frame 으로 영역을 크게 잡아줘도 전혀 액션이 잡히지 않는데 이때 버튼이 아닌 내부 레이블의 ..

ios(SwiftUI) 2022.09.06

인터넷 연결 여부 확인하기

인터넷 연결을 필수로 하는 서비스의 경우 인터넷이 계속 연결되어있는지 검사할 필요가 있다 그 때 사용하도록 하자 private void CheckInternetConnection() { NetworkRequest.Builder builder = new NetworkRequest.Builder(); ConnectivityManager manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); manager.registerNetworkCallback(builder.build(), new ConnectivityManager.NetworkCallback(){ @Override public void onUnavailable() {..

Android(Java) 2022.07.05

디바이스 마이크에서 녹음하기

기본 라이브러리인 MediaRecorder를 사용한다 먼저 MediaRecorder 변수를 초기화 해준다 recorder = new MediaRecorder(); recorder.setAudioSource(MediaRecorder.AudioSource.MIC); recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP); recorder.setOutputFile(getCacheDir() + "/audio.3gp"); recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC); 오디오 소스는 마이크 포맷과 인코딩 형식은 여러가지 있으니 편한거로 OutputFile 은 Path String으로 선언해주었다 try..

Android(Java) 2022.06.24

안드로이드 Retrofit2 Response 오류 해결 법

Expected BEGIN_OBJECT but was STRING 업무상 Rest API를 이용해야 하는 일이 생겼는데 Response가 계속 onFailure로 들어가더라 오류를 확인해보니 객체가 아니라 문자열로 떨어진다는데.. 리턴값은 json으로 받는데 이상하다 싶었다 잘 보니 [ {....}, {....} ] 인 리스트 형식으로 떨어지고 있어서 생긴 문제였다 json object 로 시작하지 않는 경우에는 Retrofit retrofit = new Retrofit.Builder() .baseUrl(url) .addConverterFactory(ScalarsConverterFactory.create()) .client(client) .build(); GsonConverterFactory 대신 Sca..

Android(Java) 2022.05.03

안드로이드 날짜간의 차이 계산 알고리즘

작업 도중 날짜 간 차이를 계산해야하는 일이 생겼는데 두 날짜간에 며칠인지 정도밖에 구할수 없길래 이참에 직접 만들어봤다 "yyyy-MM-dd" 형식의 날짜 두개를 넣으면 몇년 몇개월 몇일 차이인지 리턴하는 클래스다 나와 같은 사람에게 도움이 되기를 바란다! https://github.com/eitu-jerry/Android-CalculateDateDiff GitHub - eitu-jerry/Android-CalculateDateDiff: Insert Two Date and Get Year, Month, Day difference Insert Two Date and Get Year, Month, Day difference - GitHub - eitu-jerry/Android-CalculateDateDif..

Android(Java) 2022.04.08

Android 11 이상 버전에서 외부 저장소 이미지 삭제하기

Android R(API 30) 이상 버전부터는 WRITE_EXTERNAL_STORAGE 권한을 받을 수 없게되었다. 이에 따라 기존의 파일 저장 방식이나 삭제 방식을 사용할 수 없게 되었는데 이번 포스트에서는 그 해결법을 공유하고자 한다. https://codechacha.com/ko/android11-storage-updates/ Android11 - Storage(저장소) 정책 변경사항 정리 Android11(R)의 Preview에서 Storage(저장소) 변경사항을 정리하였습니다. 이번 업데이트는 Android10의 Scoped storage를 보완한 것들이 대부분입니다. All Files Access이 추가되고, 퍼미션들의 정책도 조금 변경 codechacha.com 이제는 MediaStore ..

Android(Java) 2022.04.06