Presentation Term 3

advertisement
Buhle Bongco
Supervisor : Prof Venter
Co-Supervisor: Prof Tucker
1.
2.
3.
4.
5.
6.
7.
8.
9.
Recap
Implementation
Progress
Challenges
Future work
Tools
Project Plan
Demo
Q&A
• The aim of the project is to help improve
medicine compliance of Deaf people.
• This application serves as an add on feature on
SignSupport where the pharmacist has the
option to set a date and time for the patient to
consumer their medication with the instructions.
Term3
Term4
• Stand alone video
“reminder”
• Used App Inventor.
• Unable to notify the
deaf patient when it’s
the right time and
instruct at the same time
• Integrated the reminder
onto Sign Support.
• Used Android.
• Notifies the deaf
patient when it is the
right time and it comes
with a set of instructions
to follow
• Allow the pharmacist freedom to change and
add more or other instructions.
• Getting the notification to still notify even when
the phone is off.
• Aligning the application to run using the time
and date of Google calendar.
Google calendar does not allow for videos, only
text and audio based.
• Get the application aligned with Google
calendar
• Get the application to notify even if it is off
• Getting the notification to also produce a
flashing light
• Getting the notification to repeat again if the
deaf patient did not open notification the first
time around
• Eclipse Juno for developers
• Java Development Kit (JDK) and Java Runtime
Environment (JRE)
• Android Developer Tools (ADT)
 Android Virtual Device (AVD)
 Android Real Device(ARD- Samsung S2
in my case)
 Android SDK
Week1
Usability
testing
Performance
testing
Acceptance
test
Multi-user
testing
Install/uninst
all test
Alpha
testing
Beta
testing
Week2
Week3
Week4
Week5
Week6
• The pharmacist logs-in on SignSupport
• Checks the patient details if they are correct
• Dispenses medication and the instructions the
patient should follow.
• The Pharmacist then sets the exact time and
date the patient should take the medication.
• At the appropriate time the deaf user receives
a notification with the instructions to follow
Question
&
Answers
• public class DateAndTimeSelector extends Activity{
• DatePicker pickerDate;// This is the date picker used to select the date for our
notification
• TimePicker pickerTime;// This is the time picker used to select the time for our
notification
• Button buttonSetAlarm;// The set button once clicked sets the time and date so that a
notification is called up
• TextView info;// Variable for displaying pieces of information
• ImageButton next;// Button for moving to the next page.
• final static int RQS_1 = 1;
• /** Called when the activity is first created. */
• @Override
• protected void onCreate(Bundle savedInstanceState) {
• super.onCreate(savedInstanceState);
• setContentView(R.layout.activity_main);// this will pull the xml file named activity
• next =(ImageButton)findViewById(R.id.imageButton1);//imageButton1 id is pulled and
will be accessible when the next button is pressed.
• info = (TextView)findViewById(R.id.info);//text is stored as id info and accessible
through the name info
• pickerDate = (DatePicker)findViewById(R.id.pickerdate);// id pickerdate
• pickerTime = (TimePicker)findViewById(R.id.pickertime);// id pickertime
• /** The button next is pressed it goes to a method that performs an action when pressed */
• next.setOnClickListener(new View.OnClickListener(){
•
public void onClick(View v) {
•
//myVib.vibrate(100);
•
goNext(); // method goNext() is called
•
}
•
});
• public class AlarmReceiver2 extends BroadcastReceiver {
• private static final int MY_NOTIFICATION_ID2 =2;
• Notification myNotification2;
• NotificationManager notificationManager2;
• @Override
•
•
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, "Alarm received!", Toast.LENGTH_LONG).show();
•
•
Vibrator vibrator = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
vibrator.vibrate(5000);
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Intent myIntent = new Intent(context, RefresherViewInstructions.class);
PendingIntent pendingIntent = PendingIntent.getActivity(
context,
0,
myIntent,
Intent.FLAG_ACTIVITY_NEW_TASK);
myNotification2 = new NotificationCompat.Builder(context)
.setContentTitle("Notification2!")
.setContentText("Follow this instructions to take the correct medication")
.setTicker("Notification!")
.setWhen(System.currentTimeMillis())
.setContentIntent(pendingIntent)
.setDefaults(Notification.DEFAULT_SOUND)
.setAutoCancel(true)
.setSmallIcon(R.drawable.ic_launcher)
.build();
•
• notificationManager2 =
•
(NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE);
•
notificationManager2.notify(MY_NOTIFICATION_ID2, myNotification2);
•
• }
•
•
•
•
•
•
•
•
https://github.com/benbahrenburg/benCoding.AlarmManager
http://www.appsrox.com/android/tutorials/remindme/3/#8
http://blog.blundell-apps.com/notification-for-a-user-chosen-time/
http://stackoverflow.com/questions/3226495/android-exit-applicationcode
http://stackoverflow.com/questions/6898770/android-multiple-alarms-wpending-intents-how-to-determine-which-intent-is-b
http://gitorious.org/0xdroid/packages_apps_alarmclock/source/185d179
74729a98cf48a71ab9f16adaab9d1e1e0:src/com/android/alarmclock/Al
armClock.java
http://android-er.blogspot.com/2012/05/to-schedule-repeating-alarmcall.html
www.cs.uwc.ac.za/~mmotlhabi
Download