开发步骤安装devcostudio打开File-New-CreateProject-Native Ccd src/main git clone https://github.com/freetype/freetype mv freetype/* cpp/多平台配置新增build-profile.json5下abiFilters支持多平台externalNativeOptions: {path: ./src/main/cpp/CMakeLists.txt,arguments: ,cppFlags: ,abiFilters: [x86_64,arm64-v8a]}点击锤子make module生成右上角圆点切换debug|release。输出文件在build\default\outputs\default\*.hap解压有ABI对应的.so文件。ts或其它库调用使用时需在src同级目录下新建libs文件夹拷贝abiFilters所有文件夹到libs下。.so cmake配置cmake_minimum_required(VERSION 3.5.0) project(NativeFileAccess) set(NATIVERENDER_ROOT_PATH ${CMAKE_CURRENT_SOURCE_DIR}) if(DEFINED PACKAGE_FIND_FILE) include(${PACKAGE_FIND_FILE}) endif() include_directories(${NATIVERENDER_ROOT_PATH} ${NATIVERENDER_ROOT_PATH}/include) link_directories(${NATIVERENDER_ROOT_PATH}/../../../libs/${OHOS_ARCH}) add_library(file_access SHARED FileAccessMethods.cpp) if (CMAKE_BUILD_TYPE STREQUAL Debug) set_property(TARGET file_access PROPERTY IMPORTED_LOCATION ${NATIVERENDER_ROOT_PATH}/libs/${OHOS_ARCH}/libfreetyped.so) else() set_property(TARGET file_access PROPERTY IMPORTED_LOCATION ${NATIVERENDER_ROOT_PATH}/libs/${OHOS_ARCH}/libfreetype.so) endif () set_property(TARGET file_access PROPERTY IMPORTED_LOCATION ${NATIVERENDER_ROOT_PATH}/libs/${OHOS_ARCH}/libc_shared.so) target_link_libraries(file_access PUBLIC libace_napi.z.so libhilog_ndk.z.so librawfile.z.so libc_shared.so) target_link_libraries(file_access PUBLIC debug libfreetyped.so optimized libfreetype.so)库依赖查看readelf -d lib.so注so.x.x不支持需用.so加载参考https://developer.huawei.com/consumer/cn/doc/harmonyos-faqs/faqs-compiling-and-building-86https://developer.huawei.com/consumer/cn/doc/harmonyos-faqs/faqs-access-control-14https://gitee.com/openharmony-sig/tpc_c_cplusplus.githttps://github.com/AiMiDi/icu-cmakehttps://developer.huawei.com/consumer/cn/doc/harmonyos-faqs/faqs-ndk-72https://gitee.com/harmonyos_samples/NativeFileAccesshttps://gitee.com/harmonyos_samples/hiaifoundationkit-samplecode-clientdemo-cpphttps://gitee.com/harmonyos_samples/native-multi-threads创作不易小小的支持一下吧
阅读完成 · 觉得有帮助?