My basic task is to create a native service in android and then write a simple native program to test it. lets say I want to write a simple service which return me sum of two integers. I have to use binders to talk to it from the program, I have tried to google around but I can't find a precise example. I need to know how to create a native service and find it in the program and if needed in Java also.
相关问题
- Sorting 3 numbers without branching [closed]
- How can I create this custom Bottom Navigation on
- Bottom Navigation View gets Shrink Down
- How to compile C++ code in GDB?
- How to make that the snackbar action button be sho
相关文章
- android开发 怎么把图片放入drawable的文件夹下
- android上如何获取/storage/emulated/下的文件列表
- androidStudio有个箭头不认识
- SQLite不能创建表
- Windows - Android SDK manager not listing any plat
- Class layout in C++: Why are members sometimes ord
- Animate Recycler View grid when number of columns
- Why is the app closing suddenly without showing an
The solution that I found is to use the Binders in native and use the
and then use binders and use following on client side.
I found examples here on how to do this: https://github.com/gburca/BinderDemo/blob/master/binder.cpp
If you're creating a normal Android application using the NDK, you can't use Binder because it's not part of the NDK APIs.
Look in the NDK docs/STABLE-APIS.html for the full list of stable APIs, and this thread for an explicit comment by David Turner (the NDK maintainer) that Binder is not a supported API.
https://groups.google.com/forum/?fromgroups=#!topic/android-ndk/1QmVRrNckfM
Your options are:
Service
and AIDL facilities of the Android SDK. If you wish to combine this with native code you may be able to call up to Java from native code using JNI.After studying and coding @ Android NDK, I found The binder API is NOT available in Android NDK. And even if you use android open source for invoking the binder api, maybe you will get permission denied because of the binder security checking.
Here if I want to add a service to System service, I need a system level user group. The detail codes you can find https://github.com/qianjigui/android_system_service_example. It contains C and Java level's client and service, but you need the system permission.