#include "EngineCommon.h" #include "IOpenCVEngine.h" #include <sys/types.h> #include <unistd.h> #include <grp.h> #include <binder/IPCThreadState.h> #include <binder/ProcessState.h> #include <binder/IServiceManager.h> #include <utils/Log.h> #include <stdio.h> using namespace android; int main(int argc, char *argv[]) { LOGI("OpenCVEngine client is now starting"); sp<IServiceManager> ServiceManager = defaultServiceManager(); sp<IBinder> EngineService; sp<IOpenCVEngine> Engine; LOGI("Trying to contect to service"); do { EngineService = ServiceManager->getService(IOpenCVEngine::descriptor); if (EngineService != 0) break; LOGW("OpenCVEngine not published, waiting..."); usleep(500000); // 0.5 s } while(true); LOGI("Connection established"); Engine = interface_cast<IOpenCVEngine>(EngineService); int32_t EngineVersion = Engine->GetVersion(); printf("OpenCVEngine version %d started", EngineVersion); return 0; }