मैं एक जटिल सी ++ लाइब्रेरी पर काम कर रहा हूं जिसे मैं एंड्रॉइड एनडीके के लिए Googletest का उपयोग करके ठीक से परीक्षण करने की योजना बना रहा हूं।सी ++ कोड का परीक्षण करने के लिए googletest का उपयोग कैसे करें जो एंड्रॉइड पर जावा में कॉल करता है?
अब तक मैं गूगल परीक्षण उदाहरण का पालन करें और इस तरह से परियोजना की संरचना:
adb push libs/armeabi/libfoo.so //data/local/tmp/
adb push libs/armeabi/libgnustl_shared.so //data/local/tmp/
adb push libs/armeabi/foo_unittest //data/local/tmp/
adb shell chmod 775 //data/local/tmp/foo_unittest
adb shell "LD_LIBRARY_PATH=//data/local/tmp //data/local/tmp/foo_unittest"
: एक स्क्रिप्ट फ़ाइल का उपयोग
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := foo
LOCAL_SRC_FILES := foo.cpp
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := foo_unittest
LOCAL_SRC_FILES := foo_unittest.cpp
LOCAL_SHARED_LIBRARIES := foo
LOCAL_STATIC_LIBRARIES := googletest_main
include $(BUILD_EXECUTABLE)
$(call import-module,third_party/googletest)
मैं निर्माण और परीक्षण फोन:
Android.mk
यह किसी भी शुद्ध सी ++ कोड के साथ ठीक काम करता है जिसमें कई संदर्भ नहीं हैं लेकिन मेरा बहुत सारे कोड वास्तव में जावा/जेनी कॉल पर निर्भर करता है। मैं एक पूर्ण एपीके फ़ाइल के साथ googletest कैसे चला सकता हूं जो सी ++ कोड के साथ नहीं बल्कि जावा और संसाधनों के साथ आता है? बस में निष्पादन का नाम टाइप करें:
int main(int argc, char **argv) {
::testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS();
}
यह आप किसी भी अन्य की तरह परीक्षण कार्यक्रम को लागू करने की अनुमति देता है:
लेकिन मैं एक apk साथ कैसे गठबंधन होता है कि: पर
अधिक जानकारी? – Luz
आप जावा में कॉलबैक बना सकते हैं, फिर इसे डाउनलोड किए गए पैकेज को स्थापित करने के लिए जेएनआई से कॉल करें। – Shobhit