1. 현재까지 나온 Beacon framework apple - iBeacon Google - Eddystone 2. Beacon 통신 최소 사양 Android 4.3+ (API 18 : Jelly Bean) bluetooth 4.0 ( 갤럭시로 치면 S3 이상 ) 3. API 구글에서 Eddystone API와 Demo app 소스를 제공하고 있음, (Android studio기반 5.1(Lollipop)이상) https://github.com/google/beacon-platform/tree/master/samples/android https://developers.google.com/apis-explorer/?hl=en_US#p/proximitybeacon/v1beta1/ 4. Beacon에서 주는..
Beacon을 이용한 대형마트 monitoring system : Beacon이라는 IoT기기를 사용하여 대형마트 고객들의 동선을 파악하고, 축적된 data들을 기반으로 고객 집단의 추이를 파악한다. BLE(Bluetooth Low Energy) 기반 블루투스 통신을 이용하게 되고, 주된 기능은 크게 2가지이다. 1. Couponing : 앱을 다운받은 고객이 각 코너를 지나가면 beacon이 이를 인식하여 count한다. 이때 해당 코너에 머물고 있는 시간과 weight값을 줘서 값을 메긴다. 그리고 해당 고객이 일정 시간이상 매장에 머물거나, 매장을 빠져나갈때 가장 많이 머문 곳에 대한 쿠폰을 mobile device로 뿌려준다. 일종의 앱을 받아야 하는 동기부여로 작용할 수 있다. 2. Monito..
1. Problem 위와같이 코드를 짰는데 뭔가 이상했다. 일반적인(?), 내 의도대로라면, Log가 log 1~8까지 차례대로 찍혀나가야 했는데 결과를 보니 그렇지 않았다. 아래처럼 onResponse()/onFailure() callback이 가장 나중에 call 되더라.생각해보면 Callback method를 이용한 asynchronous한 처리이기 때문에 당연한 일이다. 한마디로 main thread는 결과를 기다리지 않고 제 갈길을 계속 가는 거다. 그런데 나는 server로부터 return되는 response값에 따라 다른 처리가 필요했기에완전히 synchronous하게 처리해야 했다. 2. Solution : 찾아보니까 retrofit은 동기/비동기 처리를 모두 지원한다고 한다.(참고: re..
SQLite로 생성한 local db 파일을 보기 위해선 DDMS를 실행한 후 data/data/[해당 package 명]/database/.db로 찾아들어가라고들 말하죠. 하지만 문제는! 안드로이드 폰을 USB로 연결해서 테스트해보면 'data폴더가 텅 비어있는 것'을 발견할 수 있습니다 !! 하지만 그건 사실 비어있는게 아니라 해당 디렉토리에 접근하지 못하는겁니다. 안드로이드 디바이스는 자체적으로 'data'디렉토리에 접근 할 수 없도록 막혀 있는데요, 해당 디렉토리에 접근하기 위해서는 '접근 권한'이 필요합니다. 지금부터 차근차근 따라오시면 금방 해결하실 수 있어요! (해당 문제는 adb로 테스트하면 발생하지 않습니다만, 앞으로 db파일을 까보는 일이 잦아질테..
: 이제 setting은 다 끝났으니 코드만 집어넣으시면 됩니다. 로그인 버튼 넣기 : 로그인 버튼은 커스텀으로 제작하셔도 상관없는데, 저는 카톡에서 제공해주는 버튼이 이뻐서 그대로 사용해 보겠습니다! 아래 코드를 activity_main.xml 에 추가해 주세요. 12345678 cs 위 코드를 넣으면 이렇게 버튼이 나올겁니다. 확인해 주시고~ 추가해야할 class들 한눈에 보기 : 로그인 기능만해도 들어가야할 클래스들이 꽤 됩니다. 카카오톡 SDK를 Gradle로 붙여주는 class, Session연결 해주는 class 등 class마다 역할이 있는데요. 일단 연동 자체에 중점을 맞추고 진행해 보겠습니다. 위에 보이는 4개의 class들이 로그인을 위해 사용할 class들입니다. AndroidMani..
이번에는 카카오톡 SDK를 Android Studio Gradle환경으로 가져올 수 있도록 하는 작업을 해주겠습니다. 쉽게 따라하실수 있어요! Gradle 설정 1) 먼저 build.gradle(Project) 에 아래와 같이 빨간색 부분을 추가해 주세요. 1234567allprojects { repositories { jcenter() mavenCentral() maven { url 'http://devrepo.kakao.com:8088/nexus/content/groups/public/' } }}Colored by Color Scriptercs 2) 그리고 build.gradle(Moduel:app) 에는 이렇게 추가해줍니다. (역시 빨간부분만 추가해주시면 됩니다.) 12345678dependenci..
https://developers.kakao.com/docs/android 사실 카카오톡 연동에 대한 공식적인 설명은 위 페이지에 설명 되어 있고 그대로 따라하시면 무리없이 진행하실수 있습니다. 하.지.만. 저는 처음 할때 쉽지 않더라구요.. 그래서 제가 겪은 시행착오를 줄여드리고자, 이렇게 post를 남깁니다!그만큼 초보자의 눈으로 포스팅을 차근차근 진행해나가도록 하겠습니다. 1. app 등록 : 앱에 카카오톡을 연동하기 위해서는 카카오톡 사이트에 app등록을 해줘야 합니다. 테스트용 앱이라도 여러개 등록할수 있으니 마음놓고 등록하세요. 1) 먼저 계정을 만드시고, [내 애플리케이션] - [앱 만들기]에서 앱을 만들어주시면, 이렇게 기본정보에 '앱 키'라는게 주어지게 되는데, 이중에 우리가 필요한건 네..
1) 프로세스를 따라가 봅시다 : Server에서는 새로운 사용자가 접속해서 Socket이 반환되면, 바로 ServerReceiver라는 thread를 돌리게 됩니다. 해당 thread에서 하는 일은 여러가지가 있습니다. 1) InputStream으로부터 name과 msg를 받습니다. 2) HashMap에 (name, OutputStream) 정보를 담아 놓습니다. -> Q) 왜 하필 OutputStream정보를 담아 놓는걸까요? : sendToAll()를 보시면 알수 있는데, 현재 접속된 사용자들을 한번씩 다 조회하면서 각각의 OutputStream으로 msg를 뿌려주기 위함입니다. 2) 코드 JavaMultiChatServer.java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ..
지금부터는 정신 바짝 차리고 집중하셔야 합니다 ! 코드에도 주석을 자세히 달아 놓을테니 차근차근 따라오세요 ! 1) 먼저 어떻게 돌아가는지 설명해 드리겠습니다. : 제일 처음에 보여드렸던 전체 그림을 보시면서 따라오세요! -> Java에서와 다르게 Android에서는 Network를 사용할때 무조건 thread안에서 처리하도록 되어 있습니다. ( cf) 네트워크는 병목현상을 일으킬 가능성이 있기때문에 진저브레드 버젼(2.3v)부터 자체적으로 strict mode라는 규제를 걸었습니다.) 앞에서도 언급되었듯이 client에는 총 2개의 thread가 돌아갑니다! ( + Network를 위한 thread 1개 더! ) 1) ConnectThread - 네트워크 연결을 위한 thread입니다. 2) Clien..
1) 가장 먼저 Client UI를 구현해 보겠습니다 : 이렇게 Simple하게 구성해 봤습니다. 위에 TextView를 두고, 아래에는 EditText와 Button을 뒀습니다. 원래 안드로이드에서는 채팅기능을 구현할때 ListView로 구현하는게 가장 일반적인데요, '네트워크'에 집중하기 위해 최대한 간소화해서 TextView로 진행해 볼겁니다. ( 더 채팅같이 보이려면 'ListView'와 '나인패치'를 적용하시면 됩니다! ) 2) 코드는 이렇습니다 따로 어려운 포인트는 없고, MainActivity에서는 '키패드 처리'를 해줬습니다. container layout을 터치하면 hideSoftInputWindow()를 콜했죠. activity_main.java 1 2 3 4 5 6 7 8 9 10 1..
- Total
- Today
- Yesterday
- call back
- 연동
- 안드로이드
- 수업교재
- fragment 겹침
- 비콘
- kakao oven
- startService
- stopService
- 카카오톡 연동
- 책 집필
- server ip
- 카카오톡
- wegith
- tabLayout
- Retrofit
- kakaotalk
- Android
- 행복의 상대성
- nodejs
- SQLPro
- layout_weight
- ranging
- call back 뺏아오기
- Beacon
- KAKAO
- monitoring
- eddystone
- 카톡
- RECO beacon
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |