MIF Card Library 활용 예제
Retired DISLab
3.2.0 버전에 맞도록 작성되었습니다.
MIF Card Library 활용 어플리케이션 작성 순서
- 1) Blackboard APK와 카드 요청을 받을 Agent 프로그램이 필요합니다.
- 2) 안드로이드 시스템의 Application 클래스에서 작업하실 일이 있다면 AgentMonitorApplication을 상속받아 해주시면 됩니다.
- 3) AndroidManifest에 Application 클래스를 등록합니다.
- AgentMonitorApplication을 상속받아 새로운 클래스를 만드셨다면 application의 android:name에 그 이름을 적어주시면 되고, 그렇지 않다면 아래와 같이 적어주시면 됩니다.
<application ... android:name="mif.service.agent.monitor.AgentMonitorApplication" > ...
- 4) 카드 생성 요청에 대한 응답을 받기 위해서는 CardProgram을 상속받은 새로운 카드프로그램을 만드셔야 합니다.
- 이 때 이 카드프로그램은 생성이 되어야만 응답을 받을 수 있으므로 Activity의 onCreate 등에서 생성을 해주셔야 하며, 인자에는 카드 생성 요청을 보낼 에이전트와 같은 이름을 적어주셔야 합니다.
- 카드 생성 요청에 대한 결과는 onAgentReply를 통해 받으실 수 있습니다.
- 5) 이제부터 AgentMonitor를 얻어와서 (AgentMonitor.getInstance()) 카드 생성 요청을 보낼 수 있습니다.
- 기존의 함수에서 변경되어 callAgent를 통해 호출 가능합니다.
- context는 상태를 나타낼 수 있는 문자열로 기존에 사용하지 않았을 경우 별다른 의미는 없습니다. 필요할 경우 Agent 제작자가 적절히 처리를 해주어야 합니다.
MIF Library 활용 예제
- 테스트 프로그램으로 사용 가능합니다. (이 때, 로그캣에 태그로 'mif'를 등록해 두시면 진행상황을 보시는 데 편리합니다.)
- 위의 'MIF Card Library 활용 어플리케이션 작성 순서'에 따라 제작되었습니다.
- 소스코드 전체도 올려두었으니 참고해주시길 바랍니다.
- 카드생성 요청 발송을 위한 Agent명을 적는 곳과, context 그리고 데이터를 입력하는 부분이 있습니다. callAgent를 할 시 Agent명에 적힌 에이전트로 context와 데이터가 전달되며, 그에 따라 받은 응답을 아래의 result에 출력해줍니다. clearResult는 result에 출력된 텍스트를 삭제합니다.
- 이 때 callAgent 명령은 모든 에이전트를 깨워야 하므로 초기 한번은 동작이 느릴 수 있습니다.
- MIF Card Library 예제 Workspace
- MIF Card Library 예제 apk