← Back to team overview

ubuntu-appstore-developers team mailing list archive

Offline application search

 

Thinking about how searching in the app scope should work if the user is
offline and it causes some interesting complications.

Here's what I assume is a minimum functionality we need to deliver:

1) If the user, offline, searches for "browser" we should locate all web
browsers he has installed.

2) If the user, offline, searches for "navegador" (browser in spanish) and
his phone's locale is spanish, he should find all the browsers he has
installed.

So, we will need some sort of app metadata cache we update on installation
and which we can query (sounds familiar? ;-)

Since "browser" is not in the app name, but in the description, that
database needs to include metadata, including localized versions of it.

We even have to query this database when the user is online, because if we
just rely on the server's results and then filter by installed/not
installed we will not find intalled apps which are very low matches on the
server (say, the 350th web browser).

So, who updates this metadata DB?

My guess is the click installer does, since the app scope has no way of
knowing if installation succeeded or not (there's no callback from the
installer).

Also, it needs to be pre-populated for pre-installed apps. If we put it in
the installer, then that can happen naturally.

This also gives a solution to the question of getting the version numbers
of installed apps: we just query this DB

Finally: preinstalled apps are system-wide (right?) so there are going to
be two DBs?

Follow ups