aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/research/ResearchLogger.java (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* | Avoid NPE by fixing ResearchLogger initializationKurt Partridge2013-05-091-93/+62
|/ | | | | | | | | | | | | | | | | | Previously, mMainResearchLog and mMainLogBuffer were set up when the user moved to a new TextView, and set to null when the user left the TextView. This change causes mMainResearchLog, mMainLogBuffer, mFeedbackLog, and mFeedbackLogBuffer to be non-null forever after init() is called. start() no longer sets up these fields; instead they are cleared and reset every time stop() is called. Checks for null values are now removed. The earlier code just didn't initialize these variables if the user disabled logging, but since the new version invariantly keeps these variables valid, we add a check for whether the user has enabled logging in publishLogUnits(). Change-Id: Ifde3517f1cf924cfa33cda95fec24529b52b3c08
* Allow LogUnits to hold >1 wordKurt Partridge2013-04-191-18/+21
| | | | | | | | | | | | | | LogUnits have been annotated with the autocorrected words, but until now this was assumed to be a single word without spaces. But spaceless typing can result in spaces in the LogUnit label. With this change, the LogUnit inspects the autocorrected text to determine how many words were inserted, and counts them accurately. This change corrects a privacy problem, which was that if the word sampling algorithm chose a LogUnit that actually contained multiple words, then more than two successive words would be included in the log. Change-Id: I7c01c3dd3ac33d7e96c00836256bae9c14b124ed
* Merge "Label logUnits after LatinImeOnEndBatchInput"Kurt Partridge2013-04-171-0/+3
|\
| * Label logUnits after LatinImeOnEndBatchInputKurt Partridge2013-04-171-0/+3
| | | | | | | | | | | | | | | | | | | | | | Previously only a commitText would cause a LogUnit to be labeled with the word that the data generates. In the case of gestured text, this information is available when LatinIME#onEndBatchInput is called. Labeling the LogUnit at this time means that the Log will have labeled words even if stop() is called before commit. Change-Id: Idb2f99a9c159a1b1aa00448a2ecddeca6c351c3e
* | Merge "Fix NPE"Kurt Partridge2013-04-171-1/+1
|\ \
| * | Fix NPEKurt Partridge2013-04-161-1/+1
| |/ | | | | | | Change-Id: I8a091fb63dab12a0d2ba69e2fe393249bc68d103
* | Merge "Fix logic error"Kurt Partridge2013-04-171-1/+1
|\ \
| * | Fix logic errorKurt Partridge2013-04-161-1/+1
| |/ | | | | | | Change-Id: Ia36660c66504ba2fbb7f125704926a08726df87a
* | Merge "Small dot in corner was not visible"Kurt Partridge2013-04-171-1/+1
|\ \
| * | Small dot in corner was not visibleKurt Partridge2013-04-161-1/+1
| |/ | | | | | | | | | | Framework change perhaps? Even if not, this makes it more visible Change-Id: Ib6d36b5a30136c4516adac666bdff36d1cd9b337
* / Include nanoTime in filenameKurt Partridge2013-04-161-3/+3
|/ | | | | | | System is fast enough that sometimes SystemClock.currentTimeMillis() is duplicated when used to make a unique filename. Change-Id: I9454fbb5e10265d36b8e17cba183a1591d52cc7b
* Merge "Avoid NPE"Kurt Partridge2013-04-121-3/+3
|\
| * Avoid NPEKurt Partridge2013-03-261-3/+3
| | | | | | | | | | | | Initialize FeedbackLog earlier to avoid NPE Change-Id: I646944c68a7d092345def16060b2a4edd8c7dbef
* | Restart suggestions when the cursor moves.Jean Chalard2013-04-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | This uses the old suggestions. It does not try to recompute new suggestions if there are no old suggestions yet: this is coming in a later change. If there are no suggestions, this shows the word itself as a suggestion. Bug: 8084810 Change-Id: I4c2e25df0ff3673be1825f57a0c19a9d23d47a48
* | Better isolate ResearchLogging dataKurt Partridge2013-04-101-0/+3
| | | | | | | | | | | | | | | | | | | | Calls to LatinIME#onStartInputViewInternal log important information about the context in which an IME is used. This is reported as a single LogStatement. Previously, this was not placed into a separate LogUnit, and was mixed in with general word data. This change wraps this LogStatement in its own LogUnit. Change-Id: I0fecd41c8a1de622a764cc4b5d6902336697046c
* | Better release build reportingKurt Partridge2013-04-101-4/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | The ResearchLogger reports whether a build is a release build or not to avoid polluting data with IME debugging work by developers. Previously this was done by checking a constant flag, which was also serving the dual purpose of masking out debug code in release builds. This change introduces a heuristic to determine whether a build was created by a developer (using the package versionName), and annotating the data sent to the server appropriately. Change-Id: Icbad17c66b703cabf6d23d05e2c7c41bcceaae45
* | Merge "[FileEncap18] Clean up uploading scheduling"Kurt Partridge2013-04-091-29/+2
|\ \
| * | [FileEncap18] Clean up uploading schedulingKurt Partridge2013-03-251-29/+2
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Move scheduling logic from ResearchLogger.java to UploaderService.java - Switch to a one-shot timer. Previously the uploader was scheduled on an inexact repeating schedule. It's better to reschedule the next upload after the current one is finished to reduce the chances of multiple uploads happening at the same time. - Avoid double-execution - Previously a scheduled upload might run right after an explicit one if they occured at the same time. This change reduces the chances of this. - Some method extraction and naming Change-Id: I9efda11be77d334c7f61bd40a36d65f0421ebde4
* | Merge "Allow logging while replaying"Kurt Partridge2013-04-091-2/+1
|\ \
| * | Allow logging while replayingKurt Partridge2013-04-011-2/+1
| | | | | | | | | | | | | | | | | | | | | Previously logging was disabled during replay. This makes it impossible to use logged data as a regression test, since the new log was unavailable. This change corrects this problem. Change-Id: I19dc31def2f2f87fd219dc561c739d18e4ab9c9c
* | | Merge "Split LogUnits differently."Kurt Partridge2013-04-011-2/+1
|\ \ \ | |/ / |/| |
| * | Split LogUnits differently.Kurt Partridge2013-03-261-2/+1
| |/ | | | | | | | | | | | | | | | | Previously an autocorrection caused a new LogUnit to be started, splitting off the previous LogUnit right at the autocorrection method time. This change causes the split to happen before the MotionEvents that led to the autocorrection being called. Change-Id: I2504df8eb47ee77e5f46bac34a8450636c03fd9f
* / Close ResearchLogger upon onFinishInputViewKurt Partridge2013-03-251-12/+14
|/ | | | | | | | | | | | Previously, ResearchLogger#stop() was called both in LatinIME#onFinishInputView() and in LatinIME#onWindowHidden(). This resulted in multiple logs being written. Since onFinishInputView is the more reliable of the two (it is called in InputMethodService#onDestroy; onWindowHidden is not), the code now uses onFinishInputView as a stopping signal. Change-Id: Iae4b8c3bdab226027624eeab19b3737367e4a108
* resolved conflicts for merge of 5b048292 to masterTadashi G. Takaoka2013-03-191-9/+11
|\ | | | | | | Change-Id: I67ebab46954cd7b8e3e79e7fed523bafb15f8835
| * Rename ProductionFlag.IS_EXPERIMENTAL to USES_DEVELOPMENT_ONLY_DIAGNOSTICSKen Wakasa2013-03-181-9/+11
| | | | | | | | | | bug: 8393568 Change-Id: Ie5edf44a3627aca9416145aff56bf05bbf2a05f3
* | [FileEncap9] Extract ResearchLogDirectory classKurt Partridge2013-03-141-68/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously used a monotonically increasing int. Now uses uuid and nanoseconds. squashed in: [FileEncap11] Read preference from ResearchSettings Change-Id: Ic779e0a69db6b16e92c6f4b63dbe7b7add566ab6 [FileEncap12] Simplify directory cleanup invocation Change-Id: I688047409c0343d32b11447fb625dfb726c731ec [FileEncap14] Change log filename syntax Change-Id: I9243b20b2eb392f81ab8c5c3d19315211240e0bc Change-Id: I5c9d70e0cb7b0965158e17dd71dfab796bd9a440
* | [Lazy1] Switch to blocking log closuresJean Chalard2013-03-121-27/+13
| | | | | | | | Change-Id: I4daec20b7b47b0d71c5aab6e17cd660015e19e71
* | Little cleanupsKurt Partridge2013-03-051-7/+4
| | | | | | | | Change-Id: I2ded3d0a29610941fac27c9b26168dd6c06ceccc
* | Clean up initialization orderingKurt Partridge2013-03-051-29/+24
| | | | | | | | | | | | This change is based on an earlier one that got stuck in Gerrit: Iab77504b Change-Id: I27ad9dfb1bbb2300bd1e61d881a6ea0e116db066
* | Clean up logic in onUserLoggingConsentKurt Partridge2013-03-041-17/+6
| | | | | | | | | | | | | | | | - Make ResearchSetting for whether the user has seen the splash screen - Inline #setLoggingAllowed, which is short and is now only called by onUserLoggingConsent Change-Id: Icdf4592777b80643807b6ccf1d3896459c503e02
* | Clean up PREF_USABILITY_STUDY_MODEKurt Partridge2013-03-041-14/+4
| | | | | | | | | | | | | | | | | | | | - Refer to a common default value in DebugSettings - Make PREF_USABILITY_STUDY_MODE independent of the ResearchLogger - ResearchLogger uses its own preference through ResearchSettings multi-project commit with Ie0df836c9d779eba484b522666ec357f4e234823 Change-Id: I88547a2f619db6e7364abbbec12f9f76855dd11a
* | Merge "Remove MainLogBuffer#setSuggest()"Kurt Partridge2013-03-041-5/+10
|\ \
| * | Remove MainLogBuffer#setSuggest()Kurt Partridge2013-03-011-5/+10
| | | | | | | | | | | | | | | | | | multi-project commit with Ia98b1406fc2ee11a96893c77ea58d800fece7624 Change-Id: I8bc3d07b83dbe7d8fc56a618de07dade7f510b13
* | | Merge "Move UUID preference reading to ResearchSettings.java"Kurt Partridge2013-03-021-19/+6
|\ \ \ | |/ / |/| |
| * | Move UUID preference reading to ResearchSettings.javaKurt Partridge2013-02-281-19/+6
| | | | | | | | | | | | Change-Id: I8157249259cf8c3218c5c82a5729f4cbc1fb4eeb
* | | [TestPrep22] Make variable package-private for testingKurt Partridge2013-02-281-1/+1
|/ / | | | | | | Change-Id: I902a6a40df1c672c611672f34d2f3237b0d1821b
* / Ensure Preference listener is unregisteredKurt Partridge2013-02-261-0/+6
|/ | | | Change-Id: I1a4d1e7bc45fc30cb1b63ea6020f0eee6e804333
* [TestPrep5] Parameterize MainLogBufferKurt Partridge2013-02-201-4/+14
| | | | Change-Id: I6d84f490922cd1f40e44ca4f95c9d950fba38290
* [TestPrep1] Move MotionEvent.Action strings to LoggingUtilsKurt Partridge2013-02-201-11/+1
| | | | Change-Id: I7b9ed800552f2fd546ed21e9dc06ea1ff5798337
* Merge "Add batchMode field to PickSuggestionManually"Kurt Partridge2013-02-121-2/+2
|\
| * Add batchMode field to PickSuggestionManuallyKurt Partridge2013-02-081-2/+2
| | | | | | | | Change-Id: Iaaffc71378154240538bf90f0b85c3f17f3f78b3
* | Close file properlyKurt Partridge2013-02-081-4/+12
|/ | | | Change-Id: Ied55b6a6f1e64bbca558316d8d3d207d7655cf91
* Refactor LogStatement publishing methodKurt Partridge2013-02-051-3/+11
| | | | | | | | | The method in LogUnit for publishing a LogStatement to a JsonWriter doesn't depend on anything in the LogUnit. multi-project commit with Id1d6ff4851148bba0e6b5a1ec6eec2b842d9c707 Change-Id: I323cec239d6ea1cee602c2ecf9b13713791e9283
* Merge "[Rlog79b] Save channel name during internal use"Kurt Partridge2013-02-041-4/+31
|\
| * [Rlog79b] Save channel name during internal useKurt Partridge2013-02-041-4/+31
| | | | | | | | | | | | | | The feedback string is used as a channel name in internal builds. Add a flag that lets it be saved between calls to make it easier to generate test data. Change-Id: I5c6149b1e68239cd968b6852d03cc240ddde99ca
* | [Rlog48b] Better visual indicator for logging stateKurt Partridge2013-02-011-3/+19
| | | | | | | | | | | | Now applies yellow bars if recording, green bars if replaying. Change-Id: I39d39de6254fd57107ea5355c43b154244520985
* | Merge "[Rlog48a] Update and make logging strings consistent"Kurt Partridge2013-02-011-2/+3
|\ \
| * | [Rlog48a] Update and make logging strings consistentKurt Partridge2013-01-311-2/+3
| | | | | | | | | | | | Change-Id: Iae04115921aaf6bbc3c6ad6e7d2d0e7401af41f8
* | | Merge "[Rlog47] Replayer service, inspect-researchLog.py"Kurt Partridge2013-02-011-2/+2
|\| |
| * | [Rlog47] Replayer service, inspect-researchLog.pyKurt Partridge2013-01-311-2/+2
| |/ | | | | | | | | | | multi-project commit with Ia2dd81afb4ea124094a20a39e31ffd193edff3d2 Change-Id: I80fe8f2ce137fedf48038955d5f3d9deed04f763