weijiang8410 / mathdoku

Automatically exported from code.google.com/p/mathdoku
0 stars 0 forks source link

Alternative to Google Analytics for Mobile Apps #114

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
As described in issue23 it would be nice to have a better insight in how our 
users are using MathDoku. However Google Analytics requires the internet 
permission which might scare our users.

As an alternative, the following has been implemented:
 * Gather data in a local log file
 * As certain conditions have been met, the user is requested to send the logfile. If the user does not agree, the log data will be destroyed and no data will be collected anymore.
 * Users who agreed to sent the log file, will be asked to leave their email address and name if we are allowed to send them a survey with additional questions.

Original issue reported on code.google.com by paul.din...@gmail.com on 30 Mar 2013 at 8:30

GoogleCodeExporter commented 9 years ago
This issue was closed by revision r175.

Original comment by paul.din...@gmail.com on 30 Mar 2013 at 8:50

GoogleCodeExporter commented 9 years ago
Following parameters needs fine tuning before releasing to Google Play:
 * Date on which the logging periode expires
 * The number of games after which we request the user to send the log files. Currently  this will be asked after 3, 5, 20 and 50 games have been started (i.e. at least one move is made).

Original comment by paul.din...@gmail.com on 30 Mar 2013 at 8:53

GoogleCodeExporter commented 9 years ago
Tested Revision 251:

- It seems slightly strange that it asks for name / email address and then 
opens my email application (which will send you my name/email address as 
"From:").
...later... I've redone this step a number of times, but never actually read 
what it said (or the full issue text above) - I assumed it was just asking for 
a sender name/email address. After editing the wiki and redoing this step, I 
finally read the text and realised this was about a separate survey.

Combining two questions (sending log data and signing up for a survey) could 
confuse users, as it did me :-)

Would it be better for the time-being to remove the step about the survey until 
we know what (if) we want to send?

- Suggest changing the dialog text to:
Dear user

The MathDoku developers would be grateful to receive anonymous usage data to 
help understand which features are most popular and hence guide future 
development. For more information visit our website at: 
https://code.google.com/p/mathdoku/wiki/UsageLogging

I agree / I do not agree
(or)
Send usage data / Do not send any data

- Tested on 20 May 2013 (by manually setting date) - it still prompted me to 
send the log, which I wasn't expecting - have I misunderstood something? How 
exactly does the logging period expire and what is meant to happen after the 
logging period? I'm confused - help :-)

- The Dialog is not "modal", which was unexpected. If I click anywhere outside 
the dialog (accidentally or otherwise), the dialog disappears, never to return. 
Should it not be modal?

Original comment by em...@srlee.com on 17 Apr 2013 at 5:48

GoogleCodeExporter commented 9 years ago
I will change the text about sending the usage log later.

I do understand that combining the logfile and the survey can be confusing. 
Maybe it is better to change this into following question: 
"Do you allow the MathDoku developers to use your email address to contact you 
about MathDoku?"

The current implementation is that after the closing date (may 19th) the user 
is asked to send the log regardless of how many games are played at that moment.

Both dialogs will be made modal.

Original comment by paul.din...@gmail.com on 17 Apr 2013 at 7:29

GoogleCodeExporter commented 9 years ago
Hmmm.... I just remember why I ask to fill in the email address. In this way I 
can include the email-address in the logfile itself. Else I have to read the 
log file and save the sender email-address manually if the user allows us to 
contact him/her.

Original comment by paul.din...@gmail.com on 17 Apr 2013 at 7:55

GoogleCodeExporter commented 9 years ago
This issue was closed by revision r254.

Original comment by paul.din...@gmail.com on 17 Apr 2013 at 7:56

GoogleCodeExporter commented 9 years ago
Tested Revision 258:
- Survey: Another suggestion - what about just putting a checkbox (default 
unticked) on the first dialog with some text like "I permit the MathDoku 
developers to contact me if they require additional details". That wouldn't 
solve your problem of having to manually enter the email address, but would 
solve the issue of having two separate dialogs with different questions.
- New text: Good & URL works
- Modal dialogs: OK

One final issue: I still can't see a difference in behaviour after 19 May 2013. 
I started with a clean install on 18 April, played 1 game. Then stopped 
MathDoku, changed system date to 18 June 2013 and restarted MathDoku. It didn't 
immediately ask to send the log, but only after I had played another two games 
(so as normal, after 3 games). Am I testing an incorrect scenario?

Original comment by em...@srlee.com on 18 Apr 2013 at 10:52

GoogleCodeExporter commented 9 years ago
Additional info: Retested by setting the date to 18 April 2017 and IT DOES 
request to send the log immediately, but not if I set it to 18 June 2013.

Original comment by em...@srlee.com on 18 Apr 2013 at 10:57

GoogleCodeExporter commented 9 years ago
Quite interesting problem. On my device (Samsung Galaxay S2) something "funny" 
happens when I change the year to a value greater than 2013. 1 second after 
saving the new system data with a future year (and optionally another value for 
month and day) it just changes the date back to the current date. But this does 
not happen in case I change the date to May 19th, 2013.

Your problem is probably caused by other (wrong) behavior in the code. The date 
check is only performed when the usagelog is first created. I will change this 
so that it is checked each time a message is written to the log. Also I will 
add an aditional test that after Jun 15th no logs are sent anymore.

Original comment by paul.din...@gmail.com on 18 Apr 2013 at 12:27

GoogleCodeExporter commented 9 years ago
I had a look at the code. The problem is here:
mDateEndLogging.set(2013, 5, 19);

The month is a zero-based index, so 5 = June :-)

Better to use Calendar.MAY

Your mention of the June 15th cut-off got me thinking about those new users who 
install the app for the first time after 19th May. Presumably they will get 
prompted immediately (after the first game) to send the log. I haven't actually 
tested that case, but probably not great behaviour if it does that.

Would it be better just to have a single cut-off date? After that date, it 
sends whatever log it has (if not empty), but no longer logs anything new.

Original comment by em...@srlee.com on 18 Apr 2013 at 12:46

GoogleCodeExporter commented 9 years ago
This issue was closed by revision r259.

Original comment by paul.din...@gmail.com on 18 Apr 2013 at 3:22

GoogleCodeExporter commented 9 years ago
LOL, I just read your comment and already found the problem myself. Also solved 
the issue with clean install after the closing date. Code is now changed 
(revision 259) as follows:

Logging will be enabled as follows:
 * App installed before start of close down period (May 19th, 2013) => logging will be enabled. 
 * App installed after start of close down periode (May 19th, 2013) ==> logging will not be enabled.

When will message for sending logfiles be shown:
 * Before the end date of the close down periode (Jun 19th, 2013) the message will be shown as soon as the user has started 3, 10, 30 and 60 games. The message at game 10, 30 and 60 will only be shown if the user has not opted out previous time the message was shown.
 * In the close down period (May 19th till Jun 19th 2013): the message will be shown as soon as a logmessage is written unless the user already has opted out before.
 * After the end date of the close down periode (Jun 19th, 2013) the message will *not* be shown.

Original comment by paul.din...@gmail.com on 18 Apr 2013 at 3:24

GoogleCodeExporter commented 9 years ago
Released without being verified explicitly.

Original comment by paul.din...@gmail.com on 27 Apr 2013 at 3:55