|개요 과제 개발을 하던 중에 겪은 일이다. MVVM(Model-View-ViewModel) 구조로 프로젝트를 구성해서 개발을 진행하고 있었는데, 일부 Activity가 코틀린으로 개발이 되어있었다. 코틀린은 문법 공부를 잠깐 하긴 했지만, 프로젝트를 진행해본 적은 없어서 잘 모르고 있었는데, Java에서 ViewModel을 사용하는 것 처럼 아래와 같이 해줬는데 this에 자꾸 빨간 줄이 뜨는 것!!🤔 ViewModel viewmodel = ViewModelProviders(this).get(ViewModel.class)//java ViewModel viewmodel = ViewModelProviders(this).get(ViewModel::class.java)//kotlin 이 부분의 원인이 이해가 ..
DataBinding 을 하다가 생겼던 에러. 먼저 아래의 두 글을 gradle.properties 에 추가하고 클린 후 다시 빌드 해본다. android.useAndroidX=true android.enableJetifier=true 그래도 안된다면 패키지명이 대문자일 경우 발생 할 수 있다. 나의 경우 패키지명을 소문자로 고치니 해결 되었다.
동적으로 태그의 내용이 변경되는 경우, 변경 이후에는 기존에 바인딩된 이벤트가 동작하지 않게 된다. 나의 경우에는 ajax 통신으로 값을 받아와 태그 속의 내용을 변경 했을 때 그러한 상황을 경험했다. 그 이유는 동적 태그의 경우 document.ready()의 동작이 작용하지 않기 때문이다. document.ready는 페이지가 로드 되면서 이벤트를 할당해주는데 로드 되기 전에 존재 하지 않던 부분이라 이벤트 할당이 되지 않기 때문이다. 그를 위해서 동적 태그는 아래와 같이 .on을 사용해 주면 된다. $(document).on('click','.selectBox_Branch .box .list', function(e){ that.listSelectBranch($(e.target)); });
|삽질 기록 모바일 웹에서 동영상 스트리밍 기능을 테스트 하던 중 아이폰에서 영상의 video가 재생이 되지 않는 문제를 발견했다. 처음에는 뭐가 문제인지 아예 감을 못잡아서 디버깅 해보려고 맥북에서 부트캠프로 맥과 윈도우를 왔다 갔다 하다가 피시가 아예 터져버렸다..😢 그 뒤로는 무한 복구 모드.. 결국 다행히 오늘치의 작업분은 백업을 해둬서 큰 맘먹고 윈도우를 아예 초기화를 하고 디버깅 환경을 내 피시말고 다른 맥북에 세팅했다. 하지만 결국 별다른 문제를 찾지 못하며 이틀째 삽질하다가 원인을 찾아냈다. |해결방법 및 원인 if(videoSrc != '') { if (video.canPlayType('application/vnd.apple.mpegurl')) { video.src = videoSrc; ..
html 리스트 요소의 인덱스를 받아와서 css를 변경해야 할때가 있다. 예를 들어 나열되어있는 리스트를 클릭 했을때 색상을 변경해주는 등의 이벤트를 할 때 선택 요소의 css 변경이 필요하다. 그럴때는 eq() 함수를 이용하면 된다. |사용 예시 function listClick(e){ $(".mylist").find('li').eq($(e).index()).css('background-color','#f2f2f2'); } mylist 클래스의 li 태그 중에서 클릭한 인덱스의 css를 변경하는 예제이다. 위의 예제에서는 선택한 리스트의 배경 색상을 #f2f2f2로 변경해주는 코드이다. eq(인덱스) eq안에는 인덱스가 들어가는데, 클릭이벤트가 실행될때 클릭이벤트가 실행된 객체를 입력 받고, 입력받은 ..
|Uncaught TypeError: Failed to execute 'putImageData' on 'CanvasRenderingContext2D': parameter 1 is not of type 'ImageData'. html 캔버스를 사용 할 때 캔버스의 내용을 저장 하던 중 발생한 에러이다. imageData 타입이 아니다라는 뜻 나의 경우 json으로 저장햇었어서 json 데이터를 인식을 못한 것. 그냥 imageData로 저장하고 바로 함. |메시지 Handler dispatch failed; nested exception is java.lang.Error: Unresolved compilation problems: → 프로젝트 클린하기 |Uncaught SyntaxError : Unexpe..
지난 프로젝트를 진행하던 중 한 객체에서 클릭 이벤트와 롱클릭 이벤트를 구현할 일이 있었다. 구현을 마치고 실제로 어플을 동작 시켜 테스트를 해보았더니 롱클릭 이벤트가 실행 되고 나서 원하지 않는 클릭 이벤트가 실행된다는 사실을 알게 되었다. 왜 그런가 찾아보니 나의 onLongClick() 함수의 반환값 때문이었다. |예시와 해결방안 기본적으로 onLongClick이벤트를 오버라이딩 하면 onClick과는 다르게 반환 값이 있는 것을 알 수 있다. 이 반환 값은 Click이벤트와의 동시 실행을 설정 하기 위한 반환 값이다. 각 설정은 다음과 같다 -return 기본값 false. true로 하면 onClick 동시 실행안됨 -false : 다음 이벤트 계속 진행, true는 이벤트 완료 기본값은 fal..
- Total
- Today
- Yesterday
- 에러
- 모바일리버싱
- 포너블.kr
- 리버싱.kr
- exception
- 동적분석
- Spring
- 코드로 배우는 스프링 부트
- 리버싱기초
- androidstudio
- pwnable.kr
- 스프링부트
- 자바
- CTF
- Android
- writeup
- reversing.kr
- reversing.kr풀이
- 펌웨어 분석
- 정보보안
- MVVM
- Java
- DataBinding
- 안드로이드
- NumberFormatException
- 앱분석
- AndroidX
- 뷰모델
- 칼리리눅스
- 웹 MVC
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |