프로젝트 수준의 gradle의 dependencies에 다음과 같이 추가 모듈 수준의 gradle 상단에 다음 코드 추가 Todo 모델 클래스 작성 생존코딩 399, 400페이지 참조
Month: 2020 4월
사운드 재생하기
MediaPlayer 클래스와 SoundPool 클래스를 이용할 수 있으며, MediaPlayer 클래스의 경우 소리를 한 번만 재생하는 경우 또는 노래나 배경음 등의 경우 유용하다.악기와 같이 연속으로 소리를 재생하는 경우에는 SoundPool 클래스가 더 유용하다. 버전별 분기
PagerAdapter 설명
ViewPager에 표시할 내용을 정의하려면 어댑터가 필요하다. 어댑터는 아이템의 목록 정보를 가진 객체이다. 프래그먼트를 아이템으로 가지면서 ViewPager에 설정하는 어댑터는 다음 두 가지가 있다. FragmentPagerAdapter : 페이지 내용이 영구적일 때 적합. 한 번 로딩한 페이지는 메모리에 보관하기 때문에 빠르다. 그래서 페이지가 많으면 많은 메모리를 사용한다. FragmentStatePagerAdapter : 많은 수의 페이지가 있을 때 적합하다. 보이지 않는 페이지를 메모리에서 …
GLIDE Library 이미지리소스 사용 편의성
setImageURI 메서드로 이미지를 이미지뷰에 표시할 수도 있지만 Glide 라이브러리를 이용하는 것이 더 편리하고 효율적이다.미사용 리소스를 자동으로 해제하고 메모리를 효율적으로 관리해주기 때문이다.또한 이미지를 비동기로 로딩하므로 UI의 끊김이 없다.app수준의 gradle의 dependencies에 다음과 같이 추가해준다. File – Project Structure를 클릭하여 추가해도 된다.
권한 확인 및 요청
사용자가 권한을 요청하면 시스템은 onRequestPermissionsResult() 메서드를 호출하고 사용자의 응답을 전달한다. 따라서 권한이 부여되었는지 확인하려면 이 메서드를 오버라이드 해야한다. 위의 예제는 하나의 권한만 요청하였으므로 grantResults의 [0]번째 인덱스 값만 확인한다.여러 권한을 요청시 해당 갯수만큼의 인덱스를 확인할 수 있으며, 권한이 승인되면 PERMISSION_GRANTED를거부되면 PERMISSION_DENIED를 반환한다.
안드로이드 주요 위험권한
Storage관련 READ_EXTERNAL_STORAGE WRITE_EXTERNAL_STORAGE LOCATION 관련 ACCESS_FILE_LOCATION ACCESS_COARSE_LOCATION SMS 관련 SEND_SMS RECEIVE_SMS CAMERA CAMERA
Android에서 모든 사진정보 가져오기
사진정보 가져오기는 위험 권한이라 manifest에 권한추가 외에 실행 시점에 사용자에게 권한 요청을 해야한다. 사진에 접근하기 전 사용자에게 권한을 요청해야한다.아래 링크 참조!
Anko Library 적용
프로젝트 gradle 모듈 gradle Sync Now!!
View 의 사이즈 구하기
View 를 상속받은 클래스 내부에서onSizeChanged() 메소드를 override한다. 위의 인자값은 각각 다음을 의미한다 w : 변경된 가로길이 h : 변경된 세로길이 oldw : 변경 전 가로 길이 oldh : 변경 전 세로 길이
tar.gz 최대로 압축하는 방법
env GZIP=-9 tar zcvf zipped_file.tgz original/file/path 환경변수로 지정된 GZIP=-9 가 최대값으로 압축하라는 의미그것을 제외하면 tar 로 압축하는 명령어와 같다.