On Tue, May 25, 2010 at 8:01 AM, Anoop Pant <[email protected]> wrote:
> .It means the application is a daemon and will sit below the app framework > layer in Android architecture above the Linux Kernel. > The Android system does not "support" individual running processes that are not started through Zygote (the main application launcher) or the "init" program which supervises system services. This really means there is no guarantee that such a daemon process would run properly and not be killed by the system immediately on after some time under various circumstances. You could write something like that, don't expect stuff to work reliably on all Android devices and platforms. > > What you mean by " This is not exposed by the NDK, so there is no official > way to do that from applications" > The NDK is the official Native Development Kit that allows you to add native code to your Android applications. It exposes a restricted set of APIs / ABIs that will be supported by the platform. What this means is that exposed ABIs are guaranteed to "just work" for the next 10 years on all future Android devices (at least those passing the compatibility tests). There are many system libraries on Android that are written in C and/or C++ which are not exposed, intentionally. Mainly because the system team wants to be free to modify / rename / remove these libraries at will to improve the system in the future. Applications should not assume that these libraries are available on all devices. Besides, OEM that customize Android can also modify them liberally to suit their needs, while keeping their systems technically compatible with the NDK (as long as they don't modify the exposed ABIs). The C++ Binder interface is part of un-exposed / un-stable system libraries. As such, there is no guarantee that an application compiled to link to them dynamically will work in the future (or even on previous releases of the system). Hope this helps > > On 5/25/10, David Turner <[email protected]> wrote: > >> This is not exposed by the NDK, so there is no official way to do that >> from applications. >> >> >> What does "sit on the same layer as Bionic Libc layer" means anyway ? >> >> On Mon, May 24, 2010 at 1:40 AM, Anoop Pant <[email protected]>wrote: >> >>> Hi, >>> I want to understand if i want to user the Binder in my C >>> application(daemon). What is the API layer to use Binder in C >>> application(daemon).Both the daemon sits on the same layer as Bionic >>> Libc layer >>> >>> Can somebody help me by giving a sample example in which two >>> process(daemon) written in C can use binder interface for transferring >>> the data in between. >>> >>> Does i need AIDL in this layer too? >>> >>> Scenario is below: >>> >>> || >>> || >>> || Daemon 1 Implemented in C >>> || >>> ================== >>> Binder >>> ================== >>> || >>> || Daemon 2 Implemented in C >>> || >>> || >>> >>> Thanks >>> Anoop >>> >>> -- >>> 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%[email protected]> >>> For more options, visit this group at >>> http://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]<android-developers%[email protected]> >> For more options, visit this group at >> http://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]<android-developers%[email protected]> > For more options, visit this group at > http://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

