I understand, and completely concur with, this decision. However, this leaves a major unfilled hole, that is limiting how developers can cooperate.
Basically -- an application cannot depend on a service, provider, or other component that it needs being present, unless it provides it itself. What's needed is a high-level equivalent. If I have a service used by several applications, I currently have to supply it in every application, and arrange to negotiate just which one actually provides the service. This is, to say the least, a pain. Prohibitive, in most cases! The alternative, of a separate APK is prohibitive because it depends on the user seeing the dependency, understanding what to do about it, and taking action. However, if we could declare in our manifest that a package *requires* package, and the Market handled this, most of our problems would be solved. If the Market did things right, we'd even be able to CHARGE for the underlying service, and the price presented for any package relying on that service would *include* that charge, and the revenues would be apportioned to each downloaded app accordingly. This would allows us to provide common services to our own applications, or to share a common functionality, either free or paid. Some functionality simply works better if handled by a single piece of code -- for example, enhanced volume control services is a current hot topic (elsewhere, not this list). I designed my application to be able to serve in that role, but there was really no way to leverage that, because of the above issues. This would also handle the case of add-on packages. If you download an add-on package without the underlying main package, it would seamlessly download the main package as well. (Note, I'm not talking about going behind the user's back here -- just not requiring the user's unguided intervention). This does have issues of version compatibility -- that aspect of DLL hell is still there. But only EXACTLY to the degree experienced currently with current facilities, because it builds on the current component model. On Apr 16, 3:28 pm, Dianne Hackborn <[email protected]> wrote: > We do not support third party shared libraries. Applications can interact > through high-level components like activities, services, content providers, > receivers, but not directly as shared libraries. This is done for security > reasons (shared libraries cross app sandboxes) and to avoid for now dealing > with the deep dependency issues shared libraries create knows as DLL Hell. > > On Thu, Apr 15, 2010 at 11:15 PM, Prashant Shelar <[email protected]>wrote: > > > > > > > Hello, > > > 1. We know that we can use a concept "Java Package" but I just wanted > > to > > know that whether Android has provided a DLL concept where I can write > > my > > most of the functionality for reuse purpose. > > > 2. Also there is doubt in mind: Can we use "Activity" for the purposes > > that DLL provides? > > > Is there any concept like DLL on Android? Can we develop a DLL for > > better modularization and other benefits on Android? > > > Thanks and Regards, > > Prashant. > > > -- > > You received this message because you are subscribed to the Google > > Groups "Android Developers" group. > > To post to this group, send email to [email protected] > > To unsubscribe from this group, send email to > > [email protected]<android-developers%2Bunsubs > > [email protected]> > > For more options, visit this group at > >http://groups.google.com/group/android-developers?hl=en > > -- > Dianne Hackborn > Android framework engineer > [email protected] > > Note: please don't send private questions to me, as I don't have time to > provide private support, and so won't reply to such e-mails. All such > questions should be posted on public forums, where I and others can see and > answer them. > > -- > You received this message because you are subscribed to the Google > Groups "Android Developers" group. > To post to this group, send email to [email protected] > To unsubscribe from this group, send email to > [email protected] > For more options, visit this group > athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en

