일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 포너블
- 확장 유클리드 알고리즘
- 개인정보안전성
- 한국정보보호산업협회기자단
- function scope
- 모듈러 연산
- 백엔드입문
- 유클리드_알고리즘
- 호이스팅
- package.json
- package-lock.json
- 백엔드
- 덧셈 암호
- 개인정보보호
- 무료교육
- 마감임박
- 가명정보처리
- 동적타이핑
- 개인정보보호위원회
- Writeup
- pwnable.tw
- 디오판투스 알고리즘
- 개인정보보호교육
- 웹 프레임워크
- node.js
- 곱셈 암호
- 한국산업인력공단
- 한국정보보호산업협회
- 국가인적자원개발컨소시엄
- arrow function
- Today
- Total
짱짱해커가 되고 싶은 나

안드로이드 보안상 앱에서 사용하는 데이터를 외부에서 접근할 수 없다. 그래서 파일이나 데이터페이스를 외부 앱에서 사용하게 하려면 콘텐트 프로바이더(CP)를 만들어서 외부로 제공해야한다. 콘텐트 프로바이더는 주로 URI를 이용해 데이터를 주고 받는다. 안드로이드에서는 자체적으로 몇가지 콘텐트 프로바이더를 제공한다. ex) 연락처 전화번호, 통화 기록, 주소록, 브라우저의 북마크 ex) 안드로이드에서 통화 기록 가져오기 우선, mainfest에 CALL_LOG 읽기 권한을 줘야한다. package com.example.project14_2; import androidx.appcompat.app.AppCompatActivity; import androidx.core.app.ActivityCompat; impo..

* 브로드캐스트 리시버(BR) BR을 활용하면 안드로이드에서 발생하는 많은 이벤트를 감지하고 이를 처리하는 앱을 작성할 수 있다. ex) 문자 메시지, 배터리 방전, 날짜 변경 등 안드로이드는 문자 메시지 도착, 배터리 방전, SD 카드 탈부착, 네트워크 환경 변화 등이 발생하면 broadcast 신호를 보낸다. 이런 신호를 받아서 처리하는 것이 브로드캐스트 리시버다. 프로젝트1: 배터리 상태 표시 앱 배터리의 상태가 변할 때마다 충전 상태 이미지와 배터리 상태 출력 + 명령 프롬프트에서 AVD 의 배터리 상태 강제 변경 가능 (Q에서는 잘 작동 안해서 9.0 AVD 사용) package com.example.project14; import androidx.appcompat.app.AppCompatAct..

* 서비스 일반적으로 화면 없이 동작하는 프로그램을 의미 ( == 데몬, 백그라운드 프로세스) 액티비티 응용 프로그램은 액티비티(화면)이 종료되면 동작하지 않지만 서비스는 백그라운드에서 실행되므로 화면과 상관없이 계속 동작한다. 서비스의 생명주기는 액티비티의 생명주기보다 단순한다. getStartService() -> 시작 -> onCreate() -> onStartCommand() -> 동작 -> onStopService() -> onDestroy() -> 종료 프로젝트1: 음악 서비스 Button 2개 - 음악 서비스 시작, 음악 서비스 중지 package com.example.project14; import android.app.Service; import android.content.Intent;..

* 구글 지도(구글 맵) : 구글에서 오픈 API로 제공하는 전자 지도 구글 지도를 안드로이드 앱에 포함하기 위해서는 개발에 사용할 PC별로 구글에서 제공하는 API 키를 얻어야한다. 안드로이드 스튜디도의 SDK Manager에서 Google Play Services를 설치한다. 구글 지도 서비스를 사용하기 위해서는 별도의 인증 코드가 필요하다. jdk가 깔려있어야하는데 나는 안 깔려있어서 설치했다. keytool -list -v –keystore ~/.android/debug.keystore 이 명령어를 치면 비밀번호를 물어보는데 android를 치면 된다. 그리고 결과값 중에 SHA1 의 코드를 복사해둔다. 구글 지도 서비스는 응용 프로그램마다 인증을 받아야한다. console.developers.g..

* 프로그레스바 & 시크바 프로그레스바 : 작업의 진행 상태 확인용으로 자주 사용 시크바 : 음악/동영상 재생의 위치 지정용으로 자주 사용 package com.example.project13_1; import androidx.appcompat.app.AppCompatActivity; import androidx.core.app.ActivityCompat; import android.Manifest; import android.media.MediaPlayer; import android.os.Bundle; import android.os.Environment; import android.view.View; import android.widget.AdapterView; import android.widge..

* MediaPlayer 클래스 : 멀티미디어를 동작하기 위해 제공되는 클래스로 음악과 동영상 재생 기능이 있다. 이를 사용하기 위해서는 우선 raw 폴더에 mp3 파일을 넣어야한다. raw 파일에는 mp3, mp4, txt와 같은 파일이 들어간다. (음악, 동영상, 텍스트 파일) package com.example.project13_1; import androidx.appcompat.app.AppCompatActivity; import android.media.MediaPlayer; import android.os.Bundle; import android.view.View; import android.widget.Switch; public class MainActivity extends AppCompa..

프로젝트1: SQLite 연습 package com.example.project12; import androidx.appcompat.app.AppCompatActivity; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import android.graphics.Canvas; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditT..

SQLite : 모바일 환경에 최적화된 데이터베이스로 기본적인 개념과 동작은 PC용 데이터베이스와 거의 동일하다. DBMS는 계층형, 망형, 관계형, 객체지향형, 객체관계형 등의 유형이 있고 SQLite는 관계형에 해당한다. (RDBMS) 안드로이드 스튜디오는 SQLite가 내장되어 있다. (명령 프롬프트에서 SQLite를 실행하려면 AVD 1대만 가동되고있어야함) + RDBMS의 장점 ( 데이터에 동시에 접근하는 응용 프로그램 적합) 1. 변화에 쉽게 순응 2. 유지/보수 편리 3. 대용량 데이터 관리/무결성 보장 - RDBMS의 단점 1. 시스템 자원을 많이 차지하기 때문에 시스템의 전반적인 속도 저하 (하드웨어가 발전하면서 보완되는 중) SQLite는 관계형 DBMS의 단점을 극복하기 위해 동시 접..