본문 바로가기

Programming/Tasker 프로필/프로젝트

목적지에 도착하면 깨워주는 알람

우선 프로젝트의 목적은 버스 및 지하철 등 본인이 운전하고 있지 않는 교통 편 내부에서 술에 취해 잠들어 있다거나, 게임을 하고 있다거나, 책을 읽고 있다가 목적지를 지나쳐버리는 것을 방지 하기 위함 입니다.(여담으로 예전에 시험삼아 이런 어플을 만든적이 있는데 디자인을 해 줄 사람이 없었어서 그냥 썪혀만 두고 있다는......ㅜㅜ)


기본적인 사용 방법및 작동 원리는 바탕화면에 위젯으로 '도착알림 토글' task를 두시고 클릭하여 나오는 메뉴에서 필요한 것을 터치하셔서 사용 하시면 됩니다.

우선 프로필탭에 있는 4개의 프로필이 각각의 목적지입니다.(시험삼아 4개의 목적지를 만들어 보았습니다.)

그 중 하나를 예로 들면 '우리집' 이라는 이름으로 된 프로필은 말그대로 context로 집 주변 반경 800m 이내를 가지고 있습니다.

즉, 자신의 집 주변 800m이내에 도착하게 되면 gps,또는 net을 이용해 이를 감지 한 후 진동으로 알려주는 기능 입니다. 






 프로필의 context를 클릭하면 위의 스샷처럼 지도가 나오고 지도에서 목적지를 선택하여 꾹 누르면 목적지가 설정됩니다. 

또 반경을 설정하면 그 반경이 노랗게 원으로 표시가 됩니다. 적당한 반경 내에서 일어나거나 도착을 알아 차려야 할 경우 이를 알맞게 수정 하시면 됩니다.



 

위의 스샷은 목적지 4개를 예를 들어 만들어놓은 화면 입니다.


목적지에 도착하게 될 경우 '도착알림' task가 작동하며 패턴이 있는 진동으로 3번정도 알려주고 scene을 띄워 이 프로필을 disable 시킬지 말지를 결정하게 합니다.(확인을 누르면 이 프로필을 disable 시키고 gps를 끕니다.)

(베터리 때문에 사용하지 않을때는 반드시 프로필이 disable 되어 있어야 좋습니다.)








******************************************************

**여기까지 대강의 설명이었습니다.

******************************************************





****이제 본격적인 사용 방법 입니다.


1. 목적지 도착알람 porject를 import 한다.


2. 프로필 탭에서 필요한 만큼의 목적지를 가진 프로필을 생성 하고 각각의 이름을 지정 해 줍니다.(여기서 지정 해 준 이름으로 위젯에서 프로필을 켜고 끄는 작업을 하므로 간단하면서 편한 이름으로 지정 해 주세요.

(프로필이 4개 필요하시면 import하신 그대로 context의 목적지만 수정 하시면 되며, 만약 4개보다 적게 필요하시면 몇가지 지우시면 됩니다. 혹시 5개 필요하시면 새로운 프로필을 하나 더 생성하여 context를 location으로 하여 목적지를 지정 한 후 task로 '도착알람' task를  지정 하시면 됩니다.)


3.   2번에서 만드신 프로필의 갯수만큼 xx설정 이라는 task를 만드셔서  task의 내용으로 perform task -> 도착알람 off task를 지정 해 주시고 두번째로 variable set을 이용 하여 %LOCALARM 을 각각의 프로필 이름으로 변경 되게 설정 해 주세요.


->task 탭을 보시면 '우리집설정', '학교설정', 'dmc설정', '일산동구청설정'  '장소1설정', '장소2설정', '장소3설정' task 가 있습니다. 이것들이 있는 이유는 %LOCALARM 이라는 변수를 각각 '우리집', 학교. dmc, 일산동구청  '장소1', '장소2', '장소3' 으로 설정 하기 위한 변수 입니다. 이 변수를 통해 맨위에서 설명했던 위젯으로 현재 토글 시킬 프로필을 정하는 겁니다. '도착알람 토글' 위젯을 클릭하시면 on, off, 설정 메뉴가 나오는데 이 중 설정을 클릭 하시면 밑의 스샷의 메뉴가 나옵니다.






여기서 보이는 task가 3번에서 계속 설명하고 있는 그것들 입니다. 위의 스샷의 제목을 보시면 현재 목적지가 '우리집' 으로 설정 되어 있는것을 보실 수 있습니다. 만약 위의 상황에서 '학교설정'  '장소1설정'을 클릭하시면 %LOCALARM변수가 '장소1' 로 설정되며 바탕화면의 위젯을 클릭하셔서 on, off로 토글 하실 수 있는 프로필이 '장소1' 프로필이 되는것 입니다.

다소 복잡해 보일 수 있지만 목적지가 하나인 경우만 생각하면 이렇게 복잡할 필요가 없는데 목적지가 여러개 지정 해 놓고 상황에 따라 이걸 켜고 할 필요가 있는 분을을 위해 이렇게 구현을 하였습니다.


단, 이것의 단점은 한번에 하나의 목적지만 사용하셔야 좋습니다. 우리집설정 을 하여 우리집프로필을 on 하고 학교설정 하여 학교 프로필을 on할경우 둘중 한곳에 도착하여 세번째 스샷의 scene이 떠서 확인을 누른경우 학교 프로필만 disable 되며 gps가 꺼집니다. 이런 경우가 생기기 때문에 목적지는 그때그때 하나씩만 설정하여 on하시고 사용 하시는 게 좋습니다.


'목적지설정' 에서 목적지를 변경하게 되면 자동으로 기존에 설정되어 있던 목적지 관련 프로필을 disable시키도록 하여 필요할때 하나씩 필요한 목적지에 관해서만 지정 가능하도록 하였습니다.


4.  task 탭의 '목적지설정' task를 보시면 메뉴에 perform task 로 '우리집설정', '장소1설정' 등이 뜨도록 설정 해 둔게 있는데 이메뉴를 본인에 맞게 수정하세요.(예를 들어 3번에서 우리집 설정, 회사설정 task를 만드셨다면 '목적지설정' 메뉴에서 perform task로 우리집설정, 회사설정을 지정하시면 바탕화면의 위젯을 클릭->설정을 클릭 하시면 나오는 메뉴에 우리집설정, 회사설정이 뜨게 됩니다.


5. 바탕화면에 도착알림 토글 task를 위젯으로 두시고 클릭하여 설정으로 가서 한번정도 목적지를 설정 해 주세요.(최초에 변수내용이 비어 있게 되는 경우를 방지 하기 위함)

 그 뒤 on을 하시면 위젯 아이콘이 변하며 방금 설정 하신 목적지 관련 프로필이 on되고 gps가 켜집니다. 또 위젯을 클릭하여 off시키면 설정 되어 있는 (%LOCALARM 변수) 프로필이 off되며 gps가 꺼지게 됩니다.













**************

후.... 제가 만들고 게시글 써놓고도 복잡하네요.......

tasker를 어느정도 다뤄 보셨고 메뉴 설정 하실줄 아신다면, 최초 한번만 약간 복잡하고 그 다음부턴 목적지를 자유롭게 더 추가 하시고 지우시고 하실 수 있으리라 봅니다..ㅜㅜ


조금 더 간단한 사용법은


목적지를 바꾸고싶다면 총 4개를 변경

예를들어서 '장소1'을 '신촌'으로 바꾸려면


1.프로필 이름 수정 - '장소1' 에서 '신촌'으로

2.Task 이름 수정 - '장소1설정' 에서 '신촌설정'으로

3.'신촌설정'task를 열어서 variable set의 '장소1'을 '신촌'으로 수정

4.'목적지설정'task의 menu action에서 메뉴아이템 중에서 '장소1설정' 부분의 perform task를 눌러서 '장소1설정'을 '신촌설정'으로 변경


목적지를 더 추가 하고 싶다면 

1. 프로필 생성(context로 location을 선택)

2. 프로필 이름 지정(예 : 장소5)

3. task 생성 - task의 이름은 2번에서 지정한 프로필의 이름 + 설정, (예 : 장소5설정)

- task내용은 perform task 로 '도착알람 off' task 지정, variable set으로 2번에서 지정한 프로필 명으로 설정

4. '목적지 설정' task의 menu action에서 메뉴 아이템에 +로 3번에서 생성 한 task추가(예 : 장소5설정 task 추가)


하시면 됩니다.



%%%%참고로 필요하시다면 도착알람 task에서 진동을 알맞게 수정하셔도 되고 노래가 재생되도록 하실 수도 있습니다.

목적지_도착_알림_v1.1.prj.xml