ICS로 넘어오면서 vcard의 위치가 framework\opt\vcard로 바뀌었습니다.
app이나 provider에서는 사용이 가능한데, framework단에서 import하면 찾을 수 없는 심볼이라고 나옵니다.
진저에서 framework\base쪽에 소스가 있을때는 import가 되었었는데요,
mk파일을 보면,
framework\base에는
include $(CLEAR_VARS)
LOCAL_SRC_FILES := $(ext_src_files)
LOCAL_NO_STANDARD_LIBRARIES := true
LOCAL_JAVA_LIBRARIES := core
LOCAL_JAVA_RESOURCE_DIRS := $(ext_res_dirs)
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE := ext
LOCAL_NO_EMMA_INSTRUMENT := true
LOCAL_NO_EMMA_COMPILE := true
LOCAL_DX_FLAGS := --core-library
include $(BUILD_JAVA_LIBRARY)
# Include subdirectory makefiles
vcard가 base로부터 분리되어 framework\opt\vcard로 가고 있는 mk파일에는
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
# 2.3
LOCAL_SDK_VERSION := 9
LOCAL_MODULE := com.android.vcard
LOCAL_SRC_FILES := $(call all-java-files-under, java)
include $(BUILD_STATIC_JAVA_LIBRARY)
# Build the test package.
include $(call all-makefiles-under, $(LOCAL_PATH))
이렇게 되어있네요.
분리된 vcard소스는 provider나 app단에서는 import가 가능한데 framework단에서는 import가 안되어 사용할 수 없습니다.
make를 수정하면 될것같기도 한데... 어떻게 해야할지 아시는 분 알려주세요.
참고로 android framework소스를 카피하면 method 개수가 오버되어 dex 에러가 납니다.
import를 되게 해야할 것 같습니다.




1년이 지난 지금 저도 같은 문제로 고민하던중 해결 방법을 알게되어 덧글 남깁니다.
현재 android 4.3(JP+)으로 테스트 중인데 일반적인 import론 사용할 수 없습니다.
안드로이드 풀소스를 받으신 후 컴파일 하면 out 폴더에 ****vcard.jar 라이브러리 파일이 생성됩니다.
해당 라이브러리 파일을 개발중인 프로젝트에 추가하신 후 import 하여 사용하 실 수 있습니다.
하지만 인터넷에 일반적인 검색으로 라이브러리가 공유되지 않는 것으로 보아 저작권 문제가 발생할 수도 있을거 같습니다.
아니면 어느 웹사이트에서 a_vcard 라이브러리가 제공되는거 같은데, 해당 라이브러리 사용하더보니 긴 한글의 경우 한글깨짐 문제가 발생하였습니다. 해당 원인이 먼지 모르겠으나, 혹시 해결하신 분은 덧글 부탁드립니다.
감사합니다