MIF Library 활용 예제

Retired DISLab
Swpark (토론 | 기여) 사용자의 2014년 1월 28일 (화) 10:07 버전
(비교) ← 이전 판 | 현재 판 (비교) | 다음 판 → (비교)
이동: 둘러보기, 찾기

3.2.0 버전에 맞도록 작성되었습니다. (13-08-14)

MIF Library 활용 어플리케이션 작성 순서

  • 1) Blackboard APK를 설치합니다.
  • 2) Agent 작성 Library를 import 합니다.
  • 3) BlackboardMonitorApplication을 상속받아 새로운 클래스를 만듭니다.
    • 이 때 onCreateAgents() 내에서 새로운 에이전트 생성을 해주시고, onPostCreateAgents()에서 생성 후 해야할 일을 적어줍니다.
    • 주의하실 점은 어플리케이션 실행 시 자동으로 바로 동작해야 하는 부분은 onPostCreateAgents()에 적어주셔야 한다는 점 입니다. 또는 버튼 클릭 시 동작하도록 하셔도 됩니다.
  • 4) AndroidManifest에 3번에서 생성한 클래스와 브로드캐스트 리시버를 등록합니다.
    • application 내에 android:name 을 통해 3번에서 생성한 클래스를 적어줍니다. 예를들어 저는 'MyApplication'이라는 이름으로 만들었습니다. 그리고 <receiver> ~ </receiver> 부분 2개를 넣어주셔야 합니다.
    <application
        ...
        android:name=".MyApplication" >
 
        <receiver android:name="mif.blackboard.monitor.OnCreateCardListener" >
            <intent-filter>
                <action android:name="mif.create.card" />
            </intent-filter>
 
        </receiver>
 
        <receiver android:name="mif.blackboard.monitor.OnBlackboardListener">
            <intent-filter>
                <action android:name="mif.blackboard.change" />
            </intent-filter>
        </receiver>
        ...
  • 5) 이제부터 BlackboardMonitor를 얻어와서 (BlackboardMonitor.getInstance()) 블랙보드를 사용할 수 있습니다.
  • 6) 에이전트를 생성하실 필요가 있으실 경우 Agent를 상속받아 새로운 클래스를 만듭니다. (subscribe, unsubscribe와 카드생성 요청을 받는 것은 Agent를 만드셔야만 가능합니다.)
    • 주의하실 점은 카드 생성 요청에 대한 응답을 하는 onRequestCard 함수의 경우 생성 후 sendResult 함수를 직접 불러주셔야 카드 프로그램에게 결과를 보낼 수 있습니다.
    • onRequestCard로 받은 Context는 상태를 나타낼 수 있는 문자열로 기존에 사용하지 않았을 경우 별다른 의미는 없습니다. 필요할 경우 Agent 제작자가 적절히 사용해주시면 됩니다.
    • 에이전트의 생성은 3번에서 만든 클래스의 onCreateAgents()에서 해주셔야 합니다.

MIF Library 활용 예제

  • 테스트 프로그램으로 사용 가능합니다. (이 때, 로그캣에 태그로 'mif'를 등록해 두시면 진행상황을 보시는 데 편리합니다.)
  • 위의 'MIF Library 활용 어플리케이션 작성 순서'에 따라 제작되었습니다.
  • 소스코드 전체도 올려두었으니 참고해주시길 바랍니다.
  • 오브젝트 명, 필드 명, 데이터 입력이 가능한 3 개의 EditText가 존재합니다. 적절히 세팅하신 후 아래의 8개의 버튼을 활용하여 블랙보드의 기능을 이용하실 수 있습니다. 버튼 아래의 연한 색 부분을 통해 몇 가지 함수에 대한 결과를 알 수 있습니다.
  • MIF Library 예제 Workspace
  • MIF Library 예제 apk
개인 도구
이름공간
변수
행위
둘러보기
구성원
연구
연구실
기타
도구모음
인쇄/내보내기