분류 전체보기 411

[Android] 카메라 촬영 Android10이상과 그 이하

안드로이드 카메라 촬영 Android10과 그 이하 1)Android 10 이상은 외부저장소 경로를 가져올수가 없다. 그래서 MediaStore를 이용하여 Media저장을 해야한다. 권한은 카메라만 있어도 저장됨. 2)Android 10 미만은 외부저장소를 사용 할 수 있으니 외부저장소에 생성하여 저장. 권한은 카메라, 외부저장소(Read, Write)필요. -문제: 처음에 1)방법으로 해보았는데 Andrid9(갤럭시8)에서 사진촬영 후 uri에 값이 null임, intent.data에 uri들어있음 사진 촬영된 것도 조그만한 이미지로 잡혀서 실제 사용을 못할 정도(섬네일 사진을 가져오는듯) -찾은방법: 2)방법을 사용하면서 FileProvider를 이용해 파일공유를 해주어 원본을 가져오는 법 2-1)..

[Android] WorkManager

# 공부하게된 이유 FCM 알림을 받던 도중 포그라운드 서비스를 시작하는 이슈가 발생! Android 12 이상을 타겟팅하는 앱은 특별한 사례 몇 가지를 제외하고 백그라운드에서 실행되는 동안 포그라운드 서비스를 시작할 수 없습니다. 앱이 백그라운드에서 실행되는 동안 WorkManager를 사용하여 신속 처리 작업을 예약하고 시작해 보세요. 신속히 처리해야 하는 사용자 요청 작업을 완료하려면 정확한 알람 내에서 포그라운드 서비스를 시작하세요. 앱 성능과 UX를 개선하기 위해 Android 12 이상을 타겟팅하는 앱은 알림 트램펄린으로 사용되는 서비스나 broadcast receiver에서 활동을 시작할 수 없습니다. 즉, 사용자가 알림을 탭하거나 알림 내에서 작업 버튼을 탭한 후, 앱은 서비스나 broad..

안드로이드 2024.03.18

푸시 알림 처리를 위한 PendingIntent 및 onNewIntent 사용하기

푸시 작업을하면서 푸시 클릭했을 때 onNewIntent를 타게 해야했고, 계속 화면의 onCreate만 타게 되어 고민하던 상황에 알게된 점입니다! PendingIntent를 사용하여 푸시 알림을 탭할 때 앱의 동작을 제어하는 방법과 함께, onNewIntent() 메서드를 사용하여 알림을 처리하는 방법에 대해 알아보겠습니다. PendingIntent란? PendingIntent는 다른 애플리케이션이 특정한 인텐트를 나중에 실행할 수 있는 권한을 부여하는 메커니즘입니다. 이를 통해 다른 애플리케이션이 사용자의 액션에 대응하여 원하는 동작을 수행할 수 있습니다. 푸시 알림 처리를 위한 PendingIntent 및 onNewIntent 사용하기 푸시 알림을 받았을 때 사용자가 알림을 탭했을 때 앱의 동작을..

안드로이드 2024.03.14

startActivityForResult 및 ActivityResultLauncher에 대한 명확한 이해

startActivityForResult() 및 ActivityResultLauncher 이해 개발중에 MainActivity를 다시 호출되면서 onNewIntent에서 처리해야할 작업이 있었는데 제대로 호출이 되지 않는 상황이 발생하였습니다! startActivityForResult() 및 ActivityResultLauncher에 대해 이야기하려고 합니다. startActivityForResult와 onNewIntent 안드로이드 앱을 개발하다보면 다른 액티비티를 실행하고 해당 액티비티로부터 결과를 받아야 하는 경우가 있습니다. 이 때 우리는 주로 startActivityForResult() 메서드를 사용합니다. 이 메서드를 사용하면 호출한 액티비티가 실행 중인 동안 다른 액티비티를 실행하고, 그 결..

안드로이드 2024.03.14

알뜰폰 요금제 추천

알뜰폰 요금제란? 국가에서 통신비 절감을 위해 시행된 요금제로 기존 이 동통신 3사(SKT, KT, LG U+)의 통신망을 임차하여 제공하기 때문에 이동통신 3사의 동일 요금제 기준 평균 50% 저렴하게 이용할 수 있어요. 장점 1. 사용중인 번호, 통신망 그대로 가입 가능 2. 사용중인 휴대폰 그대로 이용 가능 3. 통화품질 그대로, 데이터속도 그대로 4. 알뜰폰은 별도의 1,2년 약정 없이 가입이 가능하기에 위약금 없이 언제든지 다른 요금제로 바꾸거나 해지가 가능해요. 5. 온라인으로 쉽게 접수하고 개통이 가능해요. 유심비와 배송비도 무료예요. 알뜰폰 요금제 추천 모요라는 알뜰폰 요금제 비교하는 사이트가 있는데요 Link 알뜰폰 요금제 | 모요, 모두의요금제 월간 TOP20, 데이터 무제한, 통화 무..

생활 2024.03.13

싱가포르 창이 공항 -> 센토사섬 가는 방법 (더 아웃포스트 호텔)

싱가포르 센토사섬 가는 방법 예행 일정 : 인천 공항 -> 싱가포르 창이 국제공항 -> 센토사섬 3박4일 -> 몰디브 5박6일 싱가포르 창이 국제공항 -> 더 아웃포스트 호텔 센토사 여행할 예정입니다! 코로나19 예방접종 여부와 관계없이 방문 가능 출발전 준비물 가방 : 여권 (여권사본), 환전, 카드, 항공권 티켓, 보조배터리, 셀카봉, 아이패드, 닌텐도 캐리어 : 칫솔, 치약, 폼클렌징, 클렌징 오일, 면도용품, 선크림, 선스프레이, 토너, 로션, 크림, 속옷, 양말, 잠옷, 얇은 겉옷, 8박9일 입을옷, 소주, 휴대폰 충전기, 비상약, 멀미약, 소화제, 감기약, 여행용 가방, 샌들, 슬리퍼, 비상식량, 맛김치, 우산, 우비, 물놀이 용품, 방수팩 싱가포르 eSim 마이리얼트립 SG카드(입국필수서류)..

여행 2024.02.15

SingleLiveEvent에 대해 알아보자 (사용법)

SingleLiveEvent란? LiveData를 사용하던 도중 화면에 진입했을 때 observe가 되면서 재호출이 되는 경우가 있다. 예) 휴대폰 설정 후 화면 진입시 LifeCycle에 의해 다시 호출 등 View의 재활성화 (start나 resume 상태로 재진입)가 되면서 LiveData가 observe를 호출하여, 불필요한 Observer Event까지 일어나는 경우가 있습니다. 이를 방지하기 위해 기존 LiveData를 상속하여 만들어낸 것이 SingleLiveEvent입니다. 여러가지 소스 방법이 있는것 같다. (파일명만 다름. 원리는 다 같을겁니다) SingleLiveEvent class SingleLiveEvent : MutableLiveData() { private val pending..

안드로이드 2024.02.14

안드로이드 layout xml @+id와 @id의 의미

안드로이드 layout xml @+id와 @id의 의미 xml에서 id참조 할때에 혹은 제약조건 걸때 @+id 와 @id의 의미 @id: 이미 존재하는 ID를 참조할 때 사용합니다. 만약 해당 ID가 이미 정의되어 있다면 새로운 ID를 생성하지 않고 기존의 ID를 참조합니다. @+id: 새로운 ID를 생성하고 리소스로 등록할 때 사용합니다. 이것은 기존에 없는 ID를 참조할 때 사용됩니다. 이미 존재하는 ID를 참조하더라도 새로 생성되고 리소스로 등록됩니다. 두 가지 방식을 혼용하여 사용해도 코드는 동작합니다. 선택은 여러분의 코딩 스타일과 팀 내 규칙에 따라 달라질 수 있습니다. 위의 코드에서 @+id/button1은 “button1”의 ID를 생성하고, @id/button2은 “button1"의 ID..

안드로이드 2024.02.07

리얼포스 R2TKL 단축키

리얼포스 R2TKL 단축키 입니다. 1. 브라우저 열기 : Fn + F1 2. 메일 프로그램 시작 : Fn + F2 3. 계산기 시작 : Fn + F3 4. 미디어 플레이어 시작 : Fn + F4 5. 이전 미디어로 돌아가기 : Fn + F5 6. 재생/일시정지 : Fn + F6 7. 다음 미디어로 진행 : Fn + F7 8. 미디어 중지 : Fn + F8 9. 설정을 저장 : Fn + F9 10. 아무기능 없음 : Fn + F10 11. Ctrl Caps Lock 키 기능 교체 : Fn + F11 12. 키 잠금 설정 / 해제 : Fn + F12 ( 사전 소프트웨어에서 키 할당 필요 ) 13. LED 색상 변경 : Fn + Insert 14. LED 밝기를 3단계로 조절 : Fn + Delete F5 ..

카테고리 없음 2024.02.07

팰월드(palworld) 렉있을 때

팰월드 렉있을 때 구글클라우드 VM(리눅스) 서버로만 해서 그것밖에 모릅니다! 일단 실행중인 서버를 꺼줍니다. [SSH 스크린 실행중인거 끄기] 1. ssh 접속하여 2. screen -ls : 스크린 목록 확인 3. screen -r 스크린번호 : 들어감 4. 서버 구동중이면 ctrl + c ? 서버 종료 시킴 5. exit를 하여 스크린 종료 VM 중지 후 VM 수정을 해줍니다. C2 cpu8 memory32 사용 중이다가 비용이 너무쎄서 N2의 이것저것 해보았습니다. N2 cpu 4 memory 16 : 렉 있다고함 N2 cpu 4 memory 32 : 렉 있다고함 N2 cpu8 memory 32 : 렉 아직 없음 최소 cpu8은 되어야 하는것 같습니다. cpu가 중요한것 같은 느낌이 들긴하네요 다..

게임 팁, 정보 2024.02.06