프로젝트 하고 있는 앱에서 현재 단말기의 위치를 확인해야 하기 때문에 급하게 GPS 먼저 공부해버리기 GPS(Global Positioning System) 단말기와 네트워크망/위성 등을 모두 연결해 현재 위치를 측정할 수 있는 시스템 안드로이드 단말기 내부에서 가용한(사용이 가능한) 위치측정 수단을 모두 동원해 위치를 측정 -> 쓸 수 있는 모든 도구는 다 사용해 진심으로 위치측정을 하기 때문에 꽤 정확하다는 의미ㅎㅎ 애플리케이션에 측정된 위치값을 가져다가 사용이 가능 gps 센서는 이미 앱에서 돌아가고 있는 필요시 앱에서 그 측정값을 가져다 사용 (앱은 gps 사용 허용, 권한설정을 함) Provider 앱이 직접 위치를 측정하는게 아니라 시스템 내부에 있는 장치/센서들이 측정한 정보를 받아다가 쓰는..
분류 전체보기
졸작으로 만들고 있는 앱 서비스에 회원가입/로그인을 구현하기 위해서 Google OAuth2.0 을 사용해보기로 했다. 직접 회원가입/로그인 기능을 구현할 수도 있지만 직접 세션 관리나 DB 저장시 해시암호화 등의 보안 문제까지 생각하면 구글, 네이버, 카카오 등에서 제공하는 로그인 api를 사용하는 것이 편리할 것 같았다. 1단계 먼저 구글 클라우드에 들어가서 클라이언트 ID를 생성해준다. 방법은 아래 블로그를 참고하면 금방 할 수 있다. 난 안드로이드에서 디버그용으로만 테스트할 것이기 때문에 일단 안드로이드 유형 으로만 발급받아주었다. 💡 앱을 플레이스토어에 올려 테스트 하는 경우 릴리즈 따로 또 발급받아야 함 -> SHA-1 서명 인증서도 다름 (추후에 다룰 예정) 💡 따로 구축한 서버와 통신하여 ..
assets 하위 폴더들을 만들어 계층적으로 데이터 파일들을 관리하고 싶을 때 사용 (raw 폴더는 하위 폴더X) res 폴더 내부가 아니므로 리소스(R 클래스)로 관리 X assets 폴더에는 다양한 종류의 파일들을 담고 사용 가능 binding.button.setOnClickListener { val inputStream = assets.open("text/data1.txt") val isr = InputStreamReader(inputStream,"UTF-8") //스트림에서 문자열을 읽어오는 reader val br = BufferedReader(isr) // 스트림은 그냥 데이터의 흐름이고 버퍼는 그걸 일시적으로 저장하는 곳인가?... var str:String? = null val sb = S..
Raw 데이터 가공되지 않은 원천(순수) 데이터 사운드,동영상, 사진 등의 데이터를 줄이기 위해 압축한 데이터이므로 가공된 데이터 하지만 안드로이드에서는 몇가지 XML 파일과, 이미지를 제외한 모든 데이터를 raw 데이터(각종 데이터 파일이나 동영상, 사운드)라고 정의 xml, 이미지 파일은 res 폴더에 넣고 바로 사용, raw 데이터는 raw 폴더에 넣어 처리를 해서 사용 앱 내부에 포함되어 있기 때문에 읽기만 가능 (내부에 있어도 내부 저장소랑은 다른 곳에 있음) -> 넣고 싶으면 raw 폴더에 저장하면 됨 스트림을 통해 쉽게 추출 raw 폴더 안에 들어가는 파일은 무조건 소문자, 숫자로만 구성되어 있어야 함 텍스트 파일 출력하기 binding.button.setOnClickListener { //..