[mythtv-users] MythTV on Android

Daniel Frey dmfrey at gmail.com
Mon Sep 10 01:24:43 UTC 2012

On Sep 9, 2012 8:51 PM, "Nick Rout" <nick.rout at gmail.com> wrote:
> On Mon, Sep 10, 2012 at 12:08 PM, Jay Ashworth <jra at baylink.com> wrote:
> > ----- Original Message -----
> >> From: "Daniel Frey" <dmfrey at gmail.com>
> >
> >> The reason for requiring the data is to provide a search function that
> >> globally search the program guide so that you can manage your
> >> much like you would from mythweb. Just because you may not use this
> >> functionality, does not mean someone else will not. Please keep in mind
> >> this app will be another front end, not just a viewer. Please bare
with us
> >> while we work out this loading issue.
> >
> > Please let me call your attention to "client-server application design",
> > the thing which SQL was,very roughly, invented to support.
> >
> > If you're yanking *the entire recorded programs directory* over the wire
> > to the client, you badly need to refactor that code.
> That was kinda the thought I had, but didn't want to appear rude or
> ignorant (not saying you did either!). Also they are using the
> services api to do as much as possible, not sure what search
> facilities that provides?
> Daniel, don't get us wrong, we appreciate what you are doing!
> >
> > My apologies if this seems peremptory; I rewrote it 3 or 4 times.
> _______________________________________________
> mythtv-users mailing list
> mythtv-users at mythtv.org
> http://www.mythtv.org/mailman/listinfo/mythtv-users

Thanks Nick.  You are correct, we are using the services api in Android. It
allows us to load the data in the background. Also, the design pattern we
use aims to minimize network activity (thus saving battery) by loading the
data locally to a database and most interactions with the data are through
the local database. It would be far too slow from a UI/UX standpoint to
always be loading data from the backend on demand, and it would drastically
affect battery. Loading the data to a local db allows us to provide a
faster user experience. Albeit, the db load does take a long time to load
and we are working on that.

Searching through programs, recordings, videos, etc will come later, once
we get the db load more efficient. In order to implement a global search
(like the YouTube app) we not only need to load the data to a database, but
provide access via a Content Provider. Android may relax this requirement
in the future, but for now, that is what we are stuck with.

Jay, we are not loading the entire db every time the app starts, it is only
done the first time, and then in day increments. We then check daily and
only add what's missing since your last mythfilldatabase run. Believe me, I
have refactored this code numerous times to try to get it. The reason I
block other activities is I don't want you trying to update other entries
(recorded or upcoming)  while the db is loading data.

I hope this gives a little more insight into our design and the reasons we
did what we did.

I am open to suggestions if anyone sees issue with this.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.mythtv.org/pipermail/mythtv-users/attachments/20120909/cfda5e5f/attachment.html>

More information about the mythtv-users mailing list