전체 글

Front Engineer / Mobile Developer
앱을 수정하기위해 svn을 통해 소스코드를 받았다. 열어보면 처음부터 경고창이 뜨는데 보면 sdk경로가 저절로 바꿔주겠다는 내용이다. 실제 local.properties에 들어가 확인해보면 sdk.dir경로가 내 sdk로 바꿔준다. 뭐 저절로 바꿔준다고 하면 나야 땡큐이긴한데 내가 소스코드를 수정하고 커밋하고 업데이트를 하면 나중에 남이 코드를받고 또 sdk가 바뀌지 않나? sdk뿐만아니라 svn을 통한 커밋을 하려고보면 v초록색 체크표시가아닌 x빨간색 표시의 파일들이 무수히 존재한다. 무엇때문인건지 이유를 모르겠다.. SVN은 원래이런가..? 보통 어떻게 설정해서 코드를 옮기는지 알고싶다.. x빨간색 표시들이 상당히 거슬린다. 그래서 찾아본게 sdk에 대한 정의다.sdk를 찾다보니 api도 같이 설명되..
이전에 만들었던 웹앱에 보안검토 내용을 바탕으로 습득한 지식을 정리했다. 앞으로 프로젝트를 해가면서 참고될 수 있었으면 좋겠다. 크게 3가지 정도로 뽑았다. 1. 루팅된 기기를 감지/탐지 해서 사용하지 못하도록 해야한다. * 안드로이드 루팅이란 - 루팅은 모바일 기기에서 구동되는 안드로이드 운영체제 상에서 최상위 권한(루트권한)을 얻음으로 해당기기의 생산자 또는 판매자 측에서 걸어놓은 제약을 해제하는 행위이다. - 안드로이드에서 루팅을 감지하는 방법은 여러가지가 있다. - 일반적으로 su파일이나 superuser.apk등 루팅시 생성되는 파일 이름을 기반으로 탐지한다. - su명령어를 직접 실행시켜 Exception이 발생 여부에 따라 디바이스의 루팅을 감지 감지 한후 다이얼로그를 통해 앱을 종료시킬것 ..
데이터 베이스 데이터를 저장하기 위함 데이터 저장 방식 - RDB (Relational Database) - 관계형 데이터 베이스 - 엑셀 처럼 생겼다 - key-Value - 쌍으로 저장하는 방식(키,벨류) Intent - RDBMS - Relational Database Management system - RDB를 관리하기 위한 툴 - mySQL - Oracle - PostgreSQL -SQL -RDBMS 를 위한 언어이다 -NoSQL -SQL말고 다르게 해보자 안드로이드 데이터베이스 -SQLiteDatabase -SharedPreference -key - value 방식 -목적 : 공유된 사용자의 기호 방식 -하드하게 데이터베이스 시스템이 구축할 수 없다! 사용방법 xml activity packa..
Tablayout tab을 담당하는 역할 Pager 종이 넘기듯이 화면을 넘기는 역할 Adapter tablayout 과 pager 를 연결해주는 역할 사용방법 tablayout을 만들기 위해 build.gradle 에 implementation 추가 implementation 'com.google.android.material:material:1.1.0' xml에 tablayout과 viewpager 만들기 어댑터 생성 class ThreePageAdpater( val layoutInflater: LayoutInflater ) : PagerAdapter() { override fun isViewFromObject(view: View, `object`: Any): Boolean { return view ..
일단 이해하는데 시간이 좀 걸렸다. 어렵다.. 리스트뷰 = 유사하게 반복되는 뷰를 그리기 위한 도구이다. 공부순서 AddView -> ListView -> RecyclerView addview -> 실제로 리스트뷰를 그리기위해서 잘 사용되지 않는다 -> Item을 담을 xml을 만들어준다. -> 그 xml에 내용을 채워준다 -> Container view에 더해준다 -> 반복한다 listview -> 예전에 많이 사용되었다 recyclerview -> 최근에 가장 많이 사용이 되고 있고 가장 효율이 높다 ListView ListView에서는 모든 데이터에 대한 View를 만들고, View가 사라졌다가 나타날 때마다 리소스를 불러와야 한다. 예를 들어, 화면을 아래로 스크롤 했다가 다시 위로 올릴 때마다 ..
Framework - 안드로이드 스튜디오 - 개발을 하기위해 지켜야하는 틀 Library (외부의 도움) - 개발을 하기 위해 필요한 도구들이 미리 구현되어 있는 것 - 함수나, 클래스로 구현이 되어있다. - 프레임워크에 없다. 특징 프레임워크에서 하기 힘든 것들을 쉽게 사용할 수 있도록 만들어 놨다! 프레임워크에서 제공 하지 않는 기능을 사용할 수 있도록 만들어 놨다! Glide Glide 라이브러리. 깃허브주소. 구글에 glide 검색. https://github.com/bumptech/glide bumptech/glide An image loading and caching library for Android focused on smooth scrolling - bumptech/glide github..
context 안드로이드는 이미 많은 부분들이 만들어져 있다. ex) 버튼, 에디트텍스트, 뷰컴포넌트, 리스너 등등 사용하기 위해서 context가 필요한 경우가 많다. context 역할 ActivityMangerService(개발하기 편하도록 미리 구현해놓은 기능)에 접근 하도록 해주는 역할. 주변 정보라고 뜻한다. context 종류 activity의 context - 액티비티의 주변정보 application의 context - 어플리케이션의 주변정보 ApplicationContext > ActivityContext Thread 작업 흐름 앱 실행 -> launcher activity -> 작업 흐름(사용자 인풋에 대한 뭐 여러가지 처리) Main Thread *할일 = 더하기, 빼기, 곱하기, 나..
안드로이드 디바이스 기종이 너무 다양하기때문에 그에 맞는 UI를 생각해야 한다. 화면 크기 - px,dpi, dp 단위 - 픽셀 -> 가장 작은 단위 - dpi -> dot per inch 1인치 안에 픽셀이 얼만큼 들어가냐 - ldpi -> 120 (1인치에 120px) - mdpi -> 160 - hdpi -> 240 - xhdpi -> 320 - xxhdpi -> 480 - xxxhdpi -> 640 - dp -> Density Inndependent Pixcel - 픽셀 독립적인 단위 - 동일하게 사용하기 위해서 보통 사용
shy1008
hrso'log