기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

안녕하세요. 


android system service 두종류는 중 하나인 native system service를 작성하여 


kitkat(4.4) 올려서 테스트할려고 했습니다. 



- frameworks\base\cmds\helloworld
native service 테스트를 위해 서버/클라이언트를 작성한 곳입니다. 

-frameworks\base\include\helloworld
인터페이스/스텁/프록시/서비스 헤더 파일이 있는 곳입니다. 

-frameworks\base\libs\helloworld
인터페이스/스텁/프록시/서비스 구현한 파일들이 있습니다. 

이 서비스의 내용은 클라이언트 실행시 간단한 텍스트를 출력하는겁니다. 

즉, 클라이언트에서 native service를 이용한 RPC를 수행합니다. 

ex)sHelloworldService->print("oh~~~!!! Good!!!");

*실행방법:
adb shell 
cd system/bin
./helloworldservice &  //서버 실행
./helloworldclient & //클라이언트 실행

결국 하기와 같이 실행파일로 생성된 서버/클라이언트 실행시 "oh~~~!!! Good!!!" 출력이 되는것을 예상하고 만든 예제입니다. 

하지만 컴파일은 되는데 실제 lib/exe 파일이 생성이 되질 않았습니다. 

하기 내용들이 제가 수정한 make 파일 내용입니다. 

*make 파일들

-frameworks\base\libs\helloworld\Android.mk
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)

LOCAL_SRC_FILES:= \
IHelloworldService.cpp \
BpHelloworldService.cpp \
BnHelloworldService.cpp \
HelloworldService.cpp

LOCAL_SHARED_LIBRARIES := \
libcutils \
libutils \
libbinder

LOCAL_PRELINK_MODULE := false

LOCAL_MODULE:= libhelloworld

include $(BUILD_SHARED_LIBRARY)

-frameworks\base\cmds\helloworld\Android.mk
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)

LOCAL_SRC_FILES:= \
main_helloworldservice.cpp

LOCAL_SHARED_LIBRARIES := \
libutils \
libbinder \
libhelloworld

#LOCAL_C_INCLUDES := \
#$(LOCAL_PATH)/../libs/helloworld

base := $(LOCAL_PATH)/../..

LOCAL_MODULE:= helloworldservice

include $(BUILD_EXECUTABLE)

include $(CLEAR_VARS)

LOCAL_SRC_FILES:= \
main_helloworldclient.cpp

LOCAL_SHARED_LIBRARIES := \
libutils \
libbinder \
libhelloworld

#LOCAL_C_INCLUDES := \
#$(LOCAL_PATH)/../libs/helloworld

base := $(LOCAL_PATH)/../..

LOCAL_MODULE:= helloworldclient

include $(BUILD_EXECUTABLE)


그래서 여러번 make 파일을 수정해서 해보다가 이것도 되질 않아서 build/core/pathmap.mk 에 framework 빌드패스를 추가해 빌드는 되었지만 여전히 lib/exe 파일이 생성이 되질 않았습니다.  

#
# A list of all source roots under frameworks/base, which will be
# built into the android.jar.
#
FRAMEWORKS_BASE_SUBDIRS := \
$(addsuffix /java, \
    core \
    graphics \
    location \
    media \
    media/mca/effect \
    media/mca/filterfw \
    media/mca/filterpacks \
    drm \
    opengl \
    sax \
    telephony \
    wifi \
    keystore \
//하기부분을 추가해서 framework에서 빌드시 함께 되는지 확인해봤지만,빌드는 되었지만 lib/exe파일 생성이 되질 않더군요.
    libs/helloworld \
    include/helloworld \
    cmds/helloworld \
 )

예제소스는 첨부에 올려놨습니다. 

고수분들의 조언 부탁합니다. 

감사합니다. 

고도리

2015.04.20 11:17:38
*.151.13.33

아직 안 돌려 봤는데...........돌려 봐야지 하면서 못돌려 보고 있습니다...ㅠ.ㅠ


다음주 정도에 돌려보고 말씀 드릴 수 있겠네요...ㅎ

rion110

2015.04.27 20:50:21
*.196.81.211

관심 어린 말씀 감사드립니다. ^^



List of Articles
번호 제목 글쓴이 날짜 조회 수

Exynos4412에서 16 KHz Sound 파일이 빠르게 재생되는 문제 [13]

리눅스 디버깅 메세지 [1]

휴대폰을 임베디드보드처럼 사용가능한가요? [1]

  • pedor11
  • 2015-05-09
  • 조회 수 479

qt가 directFB를 사용하도록 했습니다. [2]

i2c에러 [3]

kernel booting 오류 문의. [3]

  • 마빡
  • 2015-04-20
  • 조회 수 880

S3C6410에서 NAND Flash K9K8G08U0D에서 K9K8G08U0E 변경시 [1]

kernel booting 오류 문의 드립니다. [9]

  • 마빡
  • 2015-04-15
  • 조회 수 416

안드로이드 surfaceflinger 질문입니다. [2]

  • ImYeol
  • 2015-04-14
  • 조회 수 410

[android] SystemProperties.set() 적용 되지 않는 문제점 [2]

  • rion110
  • 2015-04-08
  • 조회 수 345

android native system service 실행 file [2]

  • rion110
  • 2015-04-06
  • 조회 수 286

안드로이드 USB 카메라와 버튼입력 동시에 받는 문제 [2]

S5PV210 에서 Overlay Layer적용 [1]

s5pv310에 emmc version적용 [4]

realtek rt5633 codec을 포팅하려고합니다 질문좀요 [3]

Wi-Fi Power Save Mode 관련 질문 [2]

네비바 삭제 질문드립니다.

DDR2 OCD 설정하는 방법 좀 조언 부탁드립니다. file

USB2Serial와 /dev/ttyUXB관련 문의드립니다. [1]

Exynos4412를 watchdong timer를 이용해서 reset을 했습니다. [3]

사용자 로그인