Hi Jonas, I appreciate your cooperation. Your comment has become very helpful for me.
I will look at the process of app launching by reference to your comment. Thanks for your cooperation. Yusuke On 2012/11/09 17:43 Subject: Jonas Sicking wrote ; > On Wed, Nov 7, 2012 at 6:09 PM, Yusuke YAMAMOTO > <[email protected]> wrote: >> Hi all, >> >> We want to know "all" about of how to launch "other" apps. >> We know that there are four types of launch method as below. >> So if our recognition are wrong( or not enough) could you point out of that. >> >> 1.WebActivities API, SystemMessage API >> 2.<a href=…> >> 3.document.location.href >> 4.window.open() > > The following ways are the ways that an app can be launched: > > 1. App.launch() > 2. WebActivities > 3. System messages > 4.<iframe mozapp> > > However there are important limitations on all of them. I'll take them > in reverse order. > > First off, 4 is only available to the "system app". I.e. basically > only Firefox OS itself can use this method for launching apps. This is > basically the low-level primitive that is used any time an app is > launched. > > For 3, system messages is generally not something that a normal app > can initiate to launch another app. System messages are generally only > fired in response to things like incoming SMS messages or phone calls, > alarms that the app itself has scheduled, etc. We will surely add more > system messages in the future (such as Push API, a system message for > when the user gets data connection or mobile connection). > > Technically all different types of system messages should likely be > enumerated in the table above. In fact, WebActivities use system > messages to launch the app which was selected by the user. > > So number 2, WebActivities, is basically just a special case of number > 3. However since you were asking about apps launching each other it > seems important enough to point out separately. WebActivities can be > used by one app to launch another app. However the restriction is that > the app doesn't have direct control over choosing which app is > launched. If there are several apps installed which implements a given > activity the user is in charge of choosing which one is launched and > the app has no control over this. > > And finally, App.launch() can only be used to launch applications > which an app can get a reference to. I.e. app A can only use > app.launch() to launch app B if app A can get a reference to the App > object for app B. This only happens in three cases: > 1. A and B are coming from the same origin. This isn't possible in > Firefox OS v1 since we have a one-app-per-origin restriction. Though > this might change in the future. > 2. App B was installed from app A. Most commonly app A is an appstore > which the user used to install app B. > 3. App A has a special privilege which allows it to enumerate all > installed apps. So far we're only permitting this for built-in apps. > > I hope that answers your question. > > / Jonas > -- Yusuke YAMAMOTO _______________________________________________ dev-b2g mailing list [email protected] https://lists.mozilla.org/listinfo/dev-b2g
