Re: Accessing native service from an application

2009-04-20 Thread Yi Sun
Not me, it is Dianne :-) On Mon, 2009-04-20 at 15:39 -0700, Archer wrote: > Got it. That's very helpful. Thank you so much, Yi. > > Archer > > On Apr 20, 12:56 pm, Yi Sun wrote: > > Sorry, the path mentioned in the last e-mail is wrong. The correct path is > > development/samples/PlatformLibrar

Re: Accessing native service from an application

2009-04-20 Thread Archer
Got it. That's very helpful. Thank you so much, Yi. Archer On Apr 20, 12:56 pm, Yi Sun wrote: > Sorry, the path mentioned in the last e-mail is wrong. The correct path is > development/samples/PlatformLibrary/ > > On Mon, Apr 20, 2009 at 12:22 PM, Yi Sun wrote: > > See inline.., what I tell u

Re: Accessing native service from an application

2009-04-20 Thread Yi Sun
Sorry, the path mentioned in the last e-mail is wrong. The correct path is development/samples/PlatformLibrary/ On Mon, Apr 20, 2009 at 12:22 PM, Yi Sun wrote: > See inline.., what I tell u is only something works but may not be the > "good" way > > > > On Apr 20, 2009, at 12:07 PM, Archer wrot

Re: Accessing native service from an application

2009-04-20 Thread Yi Sun
See inline.., what I tell u is only something works but may not be the "good" way On Apr 20, 2009, at 12:07 PM, Archer wrote: > > Greetings, Dianne, Yi and others, > > I have a need to do something similar, that is to access a backend > native service from the application. > > Going through

Re: Accessing native service from an application

2009-04-20 Thread Archer
Greetings, Dianne, Yi and others, I have a need to do something similar, that is to access a backend native service from the application. Going through the messages here, there are several things that are unclear to me. I'd really appreciate if you can provide more information on them. (1) On

Re: Accessing native service from an application

2009-04-01 Thread Dianne Hackborn
On Wed, Apr 1, 2009 at 5:39 AM, iblues wrote: > With respect to performance, which approach is more better? Because > all the other modules in Android such as Camera or Media Recorder > module all use native binding and JNI layer for java access. It just depends how you want to structure things

Re: Accessing native service from an application

2009-04-01 Thread iblues
Hi Dave, With respect to performance, which approach is more better? Because all the other modules in Android such as Camera or Media Recorder module all use native binding and JNI layer for java access. Regards, iblues On Mar 31, 10:36 am, Dave Sparks wrote: > You can write AIDL to generate y

Re: Accessing native service from an application

2009-03-31 Thread Yi Sun
Ok,I will try to submit a review after I make everything working.I just don't want to dup the code On Mar 31, 2009, at 5:53 PM, Dianne Hackborn wrote: > Sorry I have never actually looked at that code; I have only dealt > with the C++ code. > > On Tue, Mar 31, 2009 at 5:11 PM, Yi Sun w

Re: Accessing native service from an application

2009-03-31 Thread Dianne Hackborn
Sorry I have never actually looked at that code; I have only dealt with the C++ code. On Tue, Mar 31, 2009 at 5:11 PM, Yi Sun wrote: > Dianne, > BTW--- should we make the binder.c in the service_manager directory into a > library? So that people who write native service by C can reuse the code.

Re: Accessing native service from an application

2009-03-31 Thread Yi Sun
Dianne, BTW--- should we make the binder.c in the service_manager directory into a library? So that people who write native service by C can reuse the code. What do you think? Yi On Tue, Mar 31, 2009 at 4:41 PM, Yi Sun wrote: > Dianne, > Thank you for the hint. I will try this out to see if I ca

Re: Accessing native service from an application

2009-03-31 Thread Yi Sun
Dianne, Thank you for the hint. I will try this out to see if I can make it work or not. Yi On Tue, Mar 31, 2009 at 4:24 PM, Dianne Hackborn wrote: > Okay so just do what I suggested, add your own shared library for accessing > it. You are going to need to do that anyway, since you will at least

Re: Accessing native service from an application

2009-03-31 Thread Dianne Hackborn
Okay so just do what I suggested, add your own shared library for accessing it. You are going to need to do that anyway, since you will at least need to have the binder interface somewhere for someone to link to, or if you weren't going to use the binder surely you would have something besides a r

Re: Accessing native service from an application

2009-03-31 Thread Yi Sun
I'm trying to relay some information (events) between Android application and a native application. The idea is to have a background native process running as a service that can be accessed by Android applications through binder interface. The native process is written by C and it will be a lot wor

Re: Accessing native service from an application

2009-03-31 Thread Dianne Hackborn
Could you please explain more what you are trying to do? If you are trying to add a service with a public API for applications to use, one approach you can take is to make a shared library that apps request with which has APIs to retrieving and calling the service. That shared library can use no

Re: Accessing native service from an application

2009-03-31 Thread Yi Sun
So it seems that I only have following choices: 1. write my own JNI to access my service. 2. hack the ApplicationContext to add my service into into getSystemService. I also need to build my own service class into android.app package. In my client, I will call getSystemService collect my service ha

Re: Accessing native service from an application

2009-03-31 Thread Dianne Hackborn
It is not in the SDK, and as a rule applications should not be directly accessing system services. You'll note that there are tons of system services in the standard android platform, and they all have appropriate SDK APIs for calling them (and the Context.getSystemService() API to allow apps to a

Re: Accessing native service from an application

2009-03-31 Thread Yi Sun
But, the ServiceManager is not an exported java API at all. Thanks Yi On Tue, Mar 31, 2009 at 12:48 AM, Dianne Hackborn wrote: > You are mixing two different things. You are creating a low-level core > system service, and then trying to connect to it as if it is a high-level > application servic

Re: Accessing native service from an application

2009-03-31 Thread Dianne Hackborn
You are mixing two different things. You are creating a low-level core system service, and then trying to connect to it as if it is a high-level application service. If you are using service manager to publish it, you need to use service manager (in Java ServiceManager) to access it. On Mon, Mar

Re: Accessing native service from an application

2009-03-30 Thread Yi Sun
Hi Dianne, Thanks for the reply. Actually here is what I want to do: On the service side (C code), reusing binder.c in the service_manager directory. So my code will call 1. binder_open, 2. bio stuff to build an io block for adding service, 3.binder_call to add service to service_manager. 4. binder

Re: Accessing native service from an application

2009-03-30 Thread Dianne Hackborn
If you are writing a low-level system service, the high-level Service API (onBind() etc) is irrelevant. The aidl stuff is part of the primitive Binder IPC stuff; Service is a much higher-level facility built on top of it. On Mon, Mar 30, 2009 at 7:21 PM, beyounn wrote: > > Ok, let me try out th

Re: Accessing native service from an application

2009-03-30 Thread beyounn
Ok, let me try out the AIDL part, it seems simpler. But I do have a question about it and hope you could give more hits. I took a look on the AIDL, it seems that on the service(server) side, we have to implement onBind and other methods. For my case, does it mean that I don't need to care about th

Re: Accessing native service from an application

2009-03-30 Thread Dave Sparks
You can write AIDL to generate your Java binding, or you can write your own native binding and put a JNI layer on top of that. If you don't plan on calling your service from native code, AIDL is much easier. On Mar 30, 6:08 pm, beyounn wrote: > Hello, > I'm writing a service by C. My code calls

Accessing native service from an application

2009-03-30 Thread beyounn
Hello, I'm writing a service by C. My code calls binder to add a service called "myservice" into servicemanager. And I can add "myservice" without any problem. Also, when I run "/system/bin/service list", it shows the service added by me. The question is -- What is the correct way to access this s