Good news everyone!

It’s been a while and I come bearing nothing but good news! We managed to finish our thesis and deliver it on time, which wasn’t easy due to other projects. Something I haven’t shared yet is the poster, it’s nothing too fancy but it gets the job done ūüôā .

poster_vertAs mentioned in my previous blog post, we sent our paper to the workshop: From Mobile to Wearable and a couple of days ago we got confirmation that it has been accepted, hooray! Once the feedback from the peer review is processed, I think I’ll post it here as well, if that’s allowed at least?

My presentation will be on the 24th of June, so I’m currently working on preparing the slides and demo, which I will post here afterwards as well. Finally¬†I hope everybody did well on their last exams and good luck to all with your presentation!

Image

From Mobile to Wearable

The past few weeks I haven’t only been writing on my thesis text. I have also spent a lot of time (maybe even a bit too much) on writing the paper. The reason I have invested a lot of time into this is because we would like to submit it for one of the MobileHCI 2015 workshops, more specifically the workshop: “From Mobile to Wearable: Using Wearable Devices to Enrich Mobile Interaction”.

I think my thesis subject fits very well to the theme of this workshop, so it would be nice for our paper to get accepted!

(Source header)

Typing challenge

I’m presuming most of my fellow thesis students’ fingers are on fire by now due to all the typing everybody is doing, whether it’s on your paper or on your actual thesis text.

If you ever feel it’s going too slow, you can always try and improve your typing speed by playing this fun game: Z-type¬†(on expert mode obviously). Below is my score, can you beat it? ūüėČ

z-type

If only I could type 54.5 words every minute when writing on my thesis..

Easter update

During the Easter holiday the past two weeks, I have gotten a bit behind schedule unfortunately. I was supposed to have finished my literature study and concept chapter, but I was only able to do the first. So the next couple of weeks I will try to get on schedule again. For now I have set up the structure of my thesis as follows:

  1. Introduction
  2. Literature study
  3. Concept
    1. Explorative study
    2. Smartphone usage study
    3. Enhancing notification
  4. Implementation
  5. Evaluation
  6. Conclusion

Meanwhile I’m also lending out the smartwatch to perform the final evaluation. So far it has been tested by 4 people and they all seemed to like it and no major problems or bugs have popped up yet. The next 2 weeks 4 other people will also perform the evaluation. I’ll post some results once I get some time to process them!

Intermediate presentation 2

Yesterday all of the HCI thesis students had to do the second intermediate presentation regarding their thesis. It was very interesting to see how far everybody had come since the previous presentation in November.

I think my presentation went fairly well, even though I was a bit nervous and probably talked somewhat¬†fast. I barely got any questions afterwards, only by Joris, who asked why I chose WiFi networks as the context-aware reminders. Luckily I was prepared for this thanks to my previous blog post, but I’m still not sure if I was able to fully convince him..

Image

Context-aware reminders: why WiFi?

Since it seemed implementing Slack wasn’t the best option to include,¬†I wanted to implement context-aware reminders instead. I decided to do this by using WiFi connection and disconnection events instead of location for¬†the following¬†reasons:

  • GPS consumes a lot of battery and users tend to switch it off unless they really need it,
  • Location services provided by Google without the use of GPS could be somewhat inaccurate,
  • If WiFi is turned on, the location services use it to determine location anyway,
  • I presume most of the places you would want to set a reminder for, have a¬†WiFi network (home, work, university),
  • It requires the least amount of user input to set up, because you usually already have all of your WiFi¬†networks set up, you only need to select them from a drop-down list if you wish to add them.
    Actual location would require the user to be at the location to add it to his possible locations or he would need to pinpoint the location on e.g. Google Maps.

(Source header)

Third-party notifications 0.9 alpha

In my last post I explained why I couldn’t extend third party notifications with my app and at some point I say: “I can‚Äôt extract the basic information from the notification and recreate a basic version on the watch. There are certain ‚Äúhacks‚ÄĚ which do attempt to do this but they only work on some Android versions.”. This was true when using the NotificationListener, but my supervisor found out that when using a full AccessibilityService to detect new notifications, it is possible to get some¬†information from the Notification object.

So given this new option, I tried adapting¬†the Notification again. Several¬†apps already offer some smart watch actions and I didn’t really want to lose them in exchange for a reminder button. So I tried to add a reminder button without losing the original actions. First of all, when trying to implement this, it’s obvious Android did not intend for this to be possible, resulting in very inconsistent behavior. The only way to do this is create a new Notification and extend it using the original Notification object.

As a result I got somewhat of a copy of the original notification with my action added to it. Side effects include but are not limited to:

  • Actions from¬†the original notification might disappear,
  • Icons from the original notification get switched up or disappear,
  • Background image of the notification might be removed
  • Content of the notification is limited. Any long notification will get cut off,
  • If one app generates several notifications, the first copied notification will somehow lose it’s content when the next notification is posted.

But maybe the most important problem is that the only way to store the complete Notification object, to post it again later for the reminder, is in a static variable. Unfortunately Android does not guarantee the persistence of static objects during runtime. As I’ve mentioned the Notification object isn’t Serializable, meaning I can’t save it to persistent memory either.

I will keep the “functionality” as-is for now and do a quick evaluation on whether users would still like this option or if it would just be a nuisance.

Image

Notification Overload

Since my last post, I have successfully implemented SMS and GMail to work with my app. During my meeting with my supervisor yesterday, he came up with a¬†great idea: “hijack” every notification using an accessibility service on Android and adding a reminder and open on phone button. Two functions which wouldn’t need an API for the source application of the notification. So that’s what I tried doing today.

The first step, getting all the notifications, was relatively easy by using the NotificationListenerService. This gave me a Notification object each time any app creates one.

Problems:

  1. I can’t extend the third-party notification from the app on my phone, since it needs to embed an activity from the wearable app,
  2. I can’t pass the Notification object to the wearable app since it’s not Serializable,
  3. I can’t implement the NotificationListenerService in the wearable app since Android Wear doesn’t support accessibility services,
  4. I can’t extract the basic information from the notification and recreate a basic version on the watch. There are certain “hacks” which do attempt to do this but they only work on some Android versions.

So unless I missed something, I’m afraid the idea isn’t possible..

Alternatives

  • Implement Slack service, sure this means my app supports 3 different services, but barely any student uses Slack frequently.
  • Focus on adding context-aware reminder functionality, e.g.: Remind me when I’m home/Remind me at work/..
  • ??

(Source header)

Small update

Very short update, I’m currently programming the back-end for the app. The plan is to make it work with multiple services, this means having to create a nice back-end which will allow for easy integration of new services. I’m currently working on getting everything to work with SMS at first, afterwards I’ll try and include at least Slack and e-mail as well.

Image

Digital prototypes: evaluation results

In the past week I performed the evaluation of the digital prototypes with 5 users. The goal of these evaluations was to determine which prototype was preferred by users, to see if there were any major usability problems left and to get an idea of the perceived usefulness of the app.

The results are very conclusive, 5/5 users found the 3rd option of the first new method the best one. This means we will be using this to develop a fully functioning app which enhances your email/SMS/Whatsapp/ Slack/Whatever’s-possible notifications with our app!

The entire report can be found here, along with the Excel sheet used for the scenario: evaluatie3, Scenario.