일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 오토바이
- QTcpServer
- 고속도로
- 알람프로그램
- Java
- 스타2
- 디자이어HD
- c언어
- qt 설치
- Qt 소켓프로그래밍
- android SAF
- 자료구조
- 마영전
- FFI
- 윈도우7
- 잡담
- 스타크래프트2
- vuejs
- 엑티브엑스
- HTML
- Qt4
- QT
- 재귀함수
- Qt OpenGL
- 자바
- 양평역
- 바이크
- 안드로이드
- 정성하
- 이륜차
- Today
- Total
목록프로그래밍 (174)
프로그래밍과 잡담
화면꺼지는 이벤트를 잡을 려면 아래와 같이 해야한다. val receiver = MyReceiver() val filter = IntentFilter() filter.addAction(Intent.ACTION_SCREEN_OFF)// 화면 꺼짐 filter.addAction(Intent.ACTION_SCREEN_ON)// 화면 켜짐 registerReceiver(receiver) 근데 문제는 이렇게 해서 문제가 없으면 다행인데, 화면이 꺼지고 나면 onPause(), onStop() 순으로 호출이 되는데 onStop() 후에 onSaveInstanceState () 가 호출되는게 문제라는거지. 이게 왜 문제냐? 여기서 저장하는 정보가 특정 크기는 넘어서 버리면 앱이 뻗어버린다는 큰 문제가 있음. 그러니 ..
망할 구글이 앱 폴더가 아닌 외부 폴더에 접근 할려면 Storage Access Framework 를 강제 하고 있다. 그러니 그거 쓸려면 DocumentFile 이란 걸 사용해야하는데 문제는 특히 파일 목록을 가져오는 기능이 느리다는거다. MediaStore를 쓰면 속도가 좀 더 빠를려나 근데 난 MediaStore를 쓸데가 없으니 문제지.. 폴더 내의 파일이 대충 100개도 안되지만, 그냥 가지고 오는건 어찌어찌 가지고 오는데, 이걸 가지고 정렬까지 하면 졸라게 느려진다. 근데 문제는 이걸 더 개선하려고 해도 내부로직이라 그럴 방법 없다는거지. 소스까봐도 이상한 DocumentProvider 같은거 가지고 지지 복는데 봐도 잘 모르겠으니.. 다른 방법은 데이터베이스에 넣어서 처리하던가 아니면 파일로 ..
Vue.js 연습하면서 기존의 만들었던 뷰단을 Vue.js로 변환해보고 있는데, TypeScript 까지 같이 사용할려니까 더 어렵네. 오늘 알아낸거 적어놔야지. 타입스크립트를 이용해서 컴퍼넌트 작성 관련 사이트: https://blog.logrocket.com/vue-typescript-tutorial-examples/#usingvuejswithtypescript 프로퍼티 작성 시 no initializer and is not definitely assigned in the constructor 와 같은 오류가 나면 아래와 같이 했는지 확인!! @Prop() 프로퍼티이름 !: 타입; 아 시바 이것때문에 몇시간을 삽질했네. 저 오류 난걸 초기화 해주는 걸로 고치면 부모쪽에서 데이터가 안넘어오고 막 그랬음..
왜 거지같냐면 gradle 버전을 업데이트 할 때마다, 거지같은 오류가 항상 발생하냐? 그리고 오류 메시지도 정확하지도 않음. 오류난거대로 고치면 안됨 ㅋ 이상한 dex 오류가 나는데, 구글 검색해도 현상이 죄다 제각각임. 망할 gradle 은 항상 이랬어. 한방에 되는걸 본 적이 없는거 같네. 존나 이상하게 만드는거 같아 이 미친 구글새끼들. 전 버전에서는 잘되던게 업데이트만 하면 종속성 오류가 나질않나 오류가 날꺼면 제대로나 알려주던가 이상한 오류만 보여주고 말이야
안드로이드가 21년 11월부터는 TARGET API를 30 이상으로 강제한다 고 한다. Play Console에 들어가서 메시지함에 들어가면 나오는건데 이게 무슨 소리냐 하면 11월 부터는 저장소에 직접 접근이 불가능하다는 소리지. 그 전에 Storage Access Framework 나 아니면 MediaStore 방식으로 바꾸라는거지. 무조건 그 개떡같은 방식을 쓰라는거지. 개같은 구글 아예 처음부터 이렇게 하던가 하지. 왜 갑자기 저 지랄이야. 관련 정보 : https://android-developers.googleblog.com/2020/11/new-android-app-bundle-and-target-api.html
잊어먹을 경우를 대비해서 적어 놓음. Spring boot jpa 에서 PostgreSQL 함수를 호출하는 방법을 적어놓음. 이노무 DB는 jpa 사용법을 찾기도 어렵네. 비슷한 질문들이 있긴 한데, 답변들이 동작안하는 경우도 많고 해서 일단 동작하는 거 찾았으니 적어놔야지. @Repository @EnableJpaRepositories public interface BoardRepository extends JpaRepository { public List findById(String id); public BoardVO findByIdxBoard(int idx); // 이 부분이 함수 호출 부분임 :size 와 :start 는 파라미터이다. 페이징 처리를 위해서 사용함 // boardlist() 가 내..
개삽질을 해서 적어 놓음. JWT를 이용해서 로그인 처리하고 JWT 토큰을 이용해서 글 쓰기를 할려고 하는데 자꾸 아래와 같은 오류가 발생하였음.. CORS Preflight Did Not Succeed 인터넷 뒤져보니 여러가지 있긴한데 뭘 잘못했는지 계속 안됐음. 그래서 하다보니 아래 한줄 추가하니 해결됨.. 젠장할.. @Configuration public class WebSecuriyConfig extends WebSecurityConfigurerAdapter{ @Override protected void configure(HttpSecurity httpSecurity) throws Exception { httpSecurity.csrf().disable() // don't authenticate t..
좆같은 구글이 폴더에 접근방식을 개같이 만들어 버렸다. 아마 애플이 이딴 방식으로 되어 있겠지 안써봐서 모르겠지만. 타겟버전을 무조건 29 이상으로 안하면 스토어 앱을 못 올린다. 아직 29까지는 manifests 에 예외 기능을 넣어서 기존 처럼 사용이 가능하지만 언제 타겟 버전을 30으로 올릴지 모른다. 여하튼 여태까지 접근 하던 방식인 File 클래스를 통한 접근은 더 이상 동작하지 않는다. File("/sdcard/").listFiles() // 이렇게 하면 null 떨어짐 구글 새끼들이 쓰라고 하는 방식은 공용 폴더는 MediaStore 인가 뭔가 써서 접근 하라고 하고 일반 폴더는 SAF(Storage Access Framework) 를 쓰라고 한다. 사실 이거 나왔을 때 잘 안썼다. 쓰기가 ..
초창기의 개방형 OS가 아닌 점점 애플 iOS 처럼 폐쇄적으로 가는거 같다. 왜 그러냐 하면은 점점 저장소에 대해서 iOS 처럼 바뀌고 있다. 최근 타겟 버전을 29버전 이상으로 강제하고 있다. 이 버전부터는 앱이 내부 폴더 이외의 장소에는 접근을 할 수 없게 된다. 즉, 안드로이드 앱의 앱 내부 저장소는 /data/data/앱이름 으로 되어 있는데 이 아래의 정보만 접근이 가능하다. 그외에 공용 폴더는 접근이 가능하다. 그림, 동영상 이딴거 말이야. 예전에는 폰의 내부저장소(/sdcard), 외부저장소( /storage/123-123) 에 바로 접근을 할 수 있다. 근데 지금은 접근을 할려면 Storage Access Framework 를 써야한다. 그리고 안드로이드 11버전에선 저장소의 루트 폴더에 ..
까먹기 전에 글을 써둬야지.. Spring 에서 외부파일을 이용해서 JDBC 셋팅하는 방법 일단 지금 내가한 방법은 1. src/main/resources 아래에 property 폴더를 생성 2. 폴더 내에 db.properties 파일을 생성 3. 아래와 같이 셋팅 db.driverClassName=oracle.jdbc.driver.OracleDriver -- db에 맞춰서 셋팅 db.url=jdbc:log4jdbc:oracle:thin:@{DBURL}:{DBssid} -- 오라클일 때는 이렇게 하고 다른 db면 그거에 맞게 db.username={LoginID} db.password={LOGIN PASSWORD} 4. root-context.xml에 아래와 같이 셋팅 5. 끗