I think those are all great suggestions. And I agree that having both START/STOP for Stopwatch, plus INSERT for basically creating a time record without using the Stopwatch, would be good.
And though I can't think at the moment of a usecase for the triggers/conditions (Stopwatch started, etc.), it is conceivable to me that they'd be helpful for some folks.
Excellent points regarding useful data--does one really need to know that level of minutia? I can imagine though that some might find the data in aggregate to be useful (ie, total time spent this week on SMS). But definitely better to wait and see if there's truly demand for that.
And Stopwatch with Tasker support should be pretty powerful for folks (for those who use Tasker). I think the location element could potentially even be handled by Tasker as well (eg, within Tasker configure start/stop of Stopwatch based on location).
I suppose actually that folks could potentially use Tasker to start/stop the Stopwatch (and assign certain Tags) based on certain apps (eg, when I use am using SMS, start Stopwatch and assign Tag "Texting", and stop Stopwatch on end of app usage). Might need to enable Tasker to start multiple Stopwatches though so that you don't run into collisions (and in that case, perhaps give the ability within the Tasker plugin to configure whether a given Tasker initiated Stopwatch should appear in the Notification area, or be only in the background).
I agree (regarding a Tasker plugin)! That could be a brilliant move, and save ManicTime from having to code all sorts of extra things (because could just let Tasker handle a lot of it).
Okay, that's clarifying.
And I can understand regarding the tracking difficulties--it all works a lot different within Android versus in Windows (where I perceive it is a lot easier to tell when an application is actually active, being used). For those that want app tracking, perhaps exploring a selective app tracking (as was mentioned below by others) would be useful.
But I totally agree--start with the Stopwatch and go from there. People may not need total app tracking--the Stopwatch could be sufficient (you'll know more once folks start using it and giving feedback). I know that one of the downsides to tracking all apps is that is going to use more battery (it's impossible for it not to), which is another reason selective tracking and/or just using the Stopwatch is advantageous.
When you build the Stopwatch functionality, I highly recommend that the Stopwatch add an icon and listing to the Notification area/drawer, both to remind the user that the Stopwatch is running, and also to provide easy access. Perhaps there can be multiple icons as well: one icon for when the Stopwatch is running, another for when paused, and another for when stopped (but Stopwatch is still available in background and via Notification area).
Oh, so then does ManicTime Android only track Phone Calls (and not track time spent in apps)? For my purposes, the Stopwatch is what I'm most interested in anyway, so I can probably live without app tracking. But I had been assuming ManicTime Android would track app usage, similar to RescueTime, and it seems others were expecting that (or some version of that) as well.
Awesome! :) And sounds good regarding (1) and (2). Unfortunately I personally won't be able to do anything with the Android version until (2) gets implemented (due to my network setup, which is for security reasons). But I understand and agree with the order of events you're suggesting--they make sense from a development perspective.
You know, once you implement (2) for Android and the Server, you could then add that feature to the Desktop version as well, which would enable for more creative setups (eg, being remote, without access to the Server network). I personally don't need that at the moment, but I could see it being useful to folks.
One question and possible suggestion from looking at the thumbnails on Google Play: When it talks about "sending new calls to server", "call data", etc. is that referring to Phone Calls, or to "call" in the technical sense (as in, a way of describing sending data to the server)? I am guessing you may just be using it in the technical sense, and if so, you might want to change to differently terminology, as the average user is going to think you mean phone calls, which will cause unnecessary confusion. My assumption is that the ManicTime Android app tracks which Android apps are used and how much, similar to the Desktop version.
I'm excited that a version for Android is in development, but that the beta, or "testing", app is no longer available (I signed up to become a tester, but the link on that page no longer goes to the app).
Regardless, I wanted to suggest a few things:
1) Definitely include a Stopwatch (similar to Desktop).
2) It would be super-helpful if we could use things like Dropbox, SugarSync, OneDrive, etc. as an intermediary for sending data to (or from) ManicTime Server. In my particular case, ManicTime Server is not going to be accessible to mobile devices via wifi (for security reasons for the machine it is installed on). But if we could designate a folder within the syncing service of our choice to be used to transmit data then ManicTime Android could still send data to ManicTime Server, without having to be on the same network (obviously ManicTime Server would need to be configured to look in the proper synced folder on the local machine).
Thanks for considering everyone's ideas and suggestions! :)