오역의 가능성이 잇음. 코드랩 참고, 정확하지 않음 Gradle 설정 Entity 설정 (테이블을 정의하는 클래스, 작성될 테이블과 동일한 구성을 가져야한다) DAO 설정 Data Access Object: 내가 쓴 Sql을 컴파일 시 validate한다. 메소드와 연관짓는다. Room DAO에서는 annotation을 사용하게 된다( like @Insert) DAO는 interface이거나 abstract class이어야만 한다 @Annotation으로 Room에게 클래스들을 정의?알려준다. LiveData: 메서드에서 리턴 값을 LiveData로 하면, Room이 DB 업뎃 시 LiveData 업데이트에 필요한 모든 코드를 생성해준다. Room은요... SQLite 데이터베이스의 최상위 레이어 SQL..
링크는 구글 코드랩 스레드 앱에서 코드를 실행하는 단일 경로 -> 개발자가 작성하는 각 코드 줄은 동일한 스레드에서 순서대로 실행될 명령어 안드로이드 앱에는 기본스레드가 있음 -> UI 스레드(기본 스레드) 기본 스레드 외의 스레드에서 백그라운드 작업: 동시 실행 코드/ 동시 실행 (Concurrency) 동시실행 여러 코드 단위를 뒤죽박죽, 또는 병렬 실행 가능 -> 리소스 사용 효율성이 높아진다. 단일 실행 경로 동시실행(Concurrency) 동시 실행을 올바르게 구현하지 않으면 앱이 사용자에게 응답하지 않는 것으로 보일 수 있다. 스레드를 코드에서 직접 사용하면 여러 문제가 발생할 수 있다. 1. 많은 리소스가 필요한 스레드 - 작업 완료까지 스레드를 차단해 앱이 응답하지 않는 원인이 된다. 2...
액티비티와 프래그먼트에서 할 수 있음 viewBinding을 그래들에 추가하면 xml마다 뒤에 binding 이름을 붙여서 뷰바인딩할 때 사용할 수 있다. 예) activity_main.xml : ActivityMainBinding, text_fragment.xml : TextFragmentBinding in Activity private lateinit var binding: ActivityMainBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) binding = ActivityMainBinding.inflate(layoutInflater) setContentView(binding...
requireActicity: 있음을 보장한다.. 뭐가 있는데? activity!! activity와 requireActivity() 둘 다 getActivity()를 언급invoke한다. 둘 다 Activity가 null일 때 예외를 throw한다. 오직 차이점은 예외를 반환하는 타입과 메시지. requireActivity()는 더 분명한 exception을 던짐. 예외를 던지거나 프래그먼트 non-null Activity를 fragment 대신 반환하는 메소드이다.. Return the FragmentActivity this fragment is currently associated with. 이 조각이 현재 연결되어 있는 FragmentActivity 를 반환한다... 출처 https://stack..
안드로이드에서 이미지를 표현하기 위해 사용되는 객체. 사실 비트맵은 컴퓨터 분야에서 디지털 그래픽 이미지를 저장하는데 쓰이는 이미지 파일 포맷 또는 메모리 저장방식 형태라고 한다. 각 픽셀에 저장된 비트 정보의 집합, JPEG, PNG, GIF 모두 비트맵 확장자에 속한다. BItmapFactory 클래스 public static Bitmap decodeFile(String pathName) //파일 경로의 이미지 파일을 읽어 비트맵 객체로 리턴 public static Bitmap decodeResource(Resources res, int Id) // 리로스의 이미지 파일을 읽어 비트맵 객체로 리턴 public static Bitmap decodeByteArray(byte[] data, int off..
권한을 확인할 권한 목록은 아래와 같이 작성한다. var permission_list = arrayOf( Manifest.permission.CAMERA, Manifest.permission.READ_PHONE_STATE // 기타 등등 ) 권한을 확인할 때는 메소드 하나 만들자. fun checkPermission(){ //버전 확인 if(Build.VERSION.SDK_INT < Build.VERSION_CODES.M){ return } //버전 마시멜로우 이상일 때 for(permission in permission_list){ //권한 중 없는 게 있는 지 확인한다. var chk = checkSelfPermission(Manifest.permission.CAMERA) //없는 게 있으면 팝업으로..
더보기 1차.. www.youtube.com/watch?v=MHRt52NNzh0 영상을 보면서 정리합니다. 액티비티에서 액티비티 실행은 기존에 쓰던대로 해도 된대.. 내비게이션은 fragment 에서 fragment 이동하는 경우 쓰는 것이 좀 더 좋다.. 액티비티 안에서 프래그 두 개 만들어 이동이동 Fragment( 이하 frag) factory method: frag를 코드로 생성할 때 어떤 파라미터 값을 전달할 때 전달받기 위함..(?) callback: 외부 액티비티의 결과를 받을 때 설정 내비게이션을 쓰게 되면 factory method는 특히 사용하지 않음 + 다른블로그 내용을 추가 출처 : two22.tistory.com/7 Navigation은 transaction을 보다 쉽게 구현하기 ..