목록분류 전체보기 (199)
일모도원(日暮途遠) 개발자
카메라 기능을 구현하기 위하여 공부하던중, 아래에 있는 코드는 Kotlin으로 되어 있어, 사진 찍고 이미지 파일을 저장하는 부분까지만 자바로 구현해보았다. (자바 11 사용중) https://developer.android.com/codelabs/camerax-getting-started?hl=ko#0 CameraX 시작하기 | Android Developers 이 Codelab에서는 CameraX를 사용하여 뷰파인더를 표시하고, 사진을 찍고, 카메라에서 이미지 스트림을 분석하는 카메라 앱을 만드는 방법을 소개합니다. developer.android.com 먼저 Empty Views Activity를 선택하자. 이름은 적당히주자. 난 package이름을 com.android.example.cameraj..
지금 열어서 보고 있는 파일 (예. dict_db.dart)를 왼쪽 Project Panel에서 어디에 있는지 보고 싶을때가 있다. 열려있는 탭에 마우스를 가져가면 이렇게 전체 경로가 보인다. 이걸 이용해서 Project Panel에서 일일히 찾아서 열어봐도 되지만 무척 귀찮다. 이럴때는 Project Panel에 있는 세팅 모양의 Show Options Menu 아이콘을 눌러서 보면 "Always Select Opened file"이라는 메뉴가 있는데 이걸 활성화(活性化) 시키면 된다. 그러면 열려있는 소스코드의 탭을 누를때마다 해당되는 파일을 Project Panel에서도 선택해서 보여준다.
Duplicate class 오류가 쏟아져 나온다. 이경우는 전부 kotlin-stdlib-1.8.20 모듈에 있는 클래스들이다. 로그를 보면 kotlin-stdlib-1.8.20모듈에 있는 일부 클래스들이 kotlin-stdlib-jdk7-1.6.21 또는 kotlin-stdlib-jdk8-1.6.21 모듈에 있는 클래스와 중복(重複)된다. (이상한게 난 프로젝트 생성할때 자바를 선택했는데도 코틀린 관련 에러가 나오네...) Duplicate class kotlin.collections.jdk8.CollectionsJDK8Kt found in modules kotlin-stdlib-1.8.20 (org.jetbrains.kotlin:kotlin-stdlib:1.8.20) and kotlin-stdlib..
자바 11을 설치해서 사용중인데, 새로운 프로젝트를 생성후 실행을 하니 자바 17을 지원하지 않는다고 나온다. 11을 그냥 쓰고 싶어서 방법을 알아봤다. Android Gradle plugin requires Java 17 to run. You are currently using Java 11. 에러난 위치는 app 모듈의 build.gradle의 id 'com.android.application'이지만, 여기에는 버전이 명기되어 있지 않다. 프로젝트 수준의 build.gradle파일을 보면 안드로이드 플러그인이 8.0.2가 선택(選擇)되어 있다. id 'com.android.application' version '8.0.2' apply false (버전 8부터는 자바 17이 필요하다고 한다.) 자바 1..
Java 11을 쓰고 있는데, 안드로이드 스튜디오에서 새로 프로젝트를 만들때 아래와 같은 오류를 만났다. > Could not resolve all files for configuration ':classpath'. > Could not resolve com.android.tools.build:gradle:8.0.2. Required by: project : > com.android.application:com.android.application.gradle.plugin:8.0.2 project : > com.android.library:com.android.library.gradle.plugin:8.0.2 > No matching variant of com.android.tools.build:gradl..
아주 간만에 새로운 프로젝트를 처음부터 만들어 보았는데, 쉽게 될줄 알았는데 뜻하지 않게 여러가지 에러들이 나온다. 나는 맥에서 오라클의 자바 11을 설치해둔 상태고, Android Studio Flamingo | 2022.2.1 Patch 2를 사용하고 있다. 자바 버전은 아래로 확인할수 있다. 참고로 LTS는 Long-Term Support, SE는 Standard Edition, HotSpot이란 글자가 있으면 오라클에서 만든 Java Virtual Machine (JVM)이란걸 말해준다. > java --version java 11.0.5 2019-10-15 LTS Java(TM) SE Runtime Environment 18.9 (build 11.0.5+10-LTS) Java HotSpot(TM..
이북 뷰어에서 현재 페이지 표시 기능을 구현하다가 잘 안되어서 공부중인데, spine이라는 용어가 나와서 파악중이다. 예전에도 이름만 들어봤지, 오픈소스를 사용하다보니 깊이 알 필요가 없었는데... 일단 Spine에 대한 정의를 보면 다음과 같다. Spine : 등뼈, 척추(脊椎, 등마루 척, 쇠몽치 추/등골 추) "등마루"라는 한글이 더 어렵다. "등골뼈가 있는 두두룩하게 줄진 곳"을 등마루라고 한다는데, "마루"는 집에서 거실을 말할때 쓰기도 하는 그 마루인가? In an EPUB file, the spine is an XML element that specifies the order in which the book's pages or other content should be displayed. E..
async가 있는 함수내에서 "context"를 쓰면, 아래처럼 경고가 나온다. Don't use 'BuildContext's across async gaps. onTap: (value) async { Navigator.push( context, MaterialPageRoute( builder: (_) { return EpubScreen.fromPath(filePath: file.path); }, ), ); 해결책은 아래처럼 "if (context.mount)" 구문으로 감싸면 된다. onTap: (value) async { if (context.mounted) { Navigator.push( context, MaterialPageRoute( builder: (_) { return EpubScreen.f..