On May 26, 2012, at 6:38 PM, Anant Narayanan <[email protected]> wrote:
> 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. Ok, this needs to be clear in the spec (I.e., that this is not an implementation detail). Otherwise, others will wonder the same thing.
