On 05/25/2012 08:04 AM, Marcos Caceres wrote:
On Sunday, May 13, 2012 at 5:47 PM, Anant Narayanan wrote:
This is also an asynchronous call, and will be used by apps to retrieve
their own AppObject. This is useful when an app wants to retrieve the
receipt for their app (that was set by the app store when install() was
called), and verify, for example, that the current user has paid for
their app.
I'm still not sure why these are asynchronous? Is what apps are installed retrieved from
a remote server or something? If you are just checking a small list of installed things
on the user's device, then I don't see why you would not just have an
"installed" attribute?
Like:
myApps = navigator.apps.installed;
Otherwise, it seems like a lot of work just to get a list of things that are
already installed on my system?
Getting the list of things installed on your system will involve disk
I/O and sometimes even network I/O (we do so sometimes with our "app
sync" implementation).
Even without considering network, disk I/O is still a big issue. Even if
there's a small list of 50 apps, it would still have to be stored
somewhere persistent and retrieved, which can take more than 100ms and
we don't want to block the UI thread.
-Anant