我正在使用 Qt for Android 构建一个 Qt 项目。
我需要在AndroidManifest.xmluses-feature文件中添加一个标签。为此,我使用 Qt Creator 制作了一个模板,然后将android/AndroidManifest.xml文件添加到应用程序源中。
无论我在android/AndroidManifest.xml文件中放入什么,它都会被忽略并使用默认/内部文件。
这是我的CMakeLists.txt文件:
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
find_package(QT NAMES Qt5 COMPONENTS Widgets REQUIRED)
find_package(Qt5 COMPONENTS Widgets REQUIRED)
file(GLOB_RECURSE SOURCES
${PROJECT_SOURCE_DIR}/*.cpp
${PROJECT_SOURCE_DIR}/*.ui
${PROJECT_SOURCE_DIR}/*.h
${PROJECT_SOURCE_DIR}/*.qrc
${PROJECT_SOURCE_DIR}/android/AndroidManifest.xml
)
if(ANDROID)
set(ANDROID_MIN_SDK_VERSION 21)
set(ANDROID_PACKAGE_SOURCE_DIR ${PROJECT_SOURCE_DIR}/android/)
add_library(myapp SHARED ${SOURCES})
else()
add_executable(evotest ${SOURCES})
endif()
target_link_libraries(myapp Qt5::Widgets)
install(TARGETS myapp DESTINATION bin)
Run Code Online (Sandbox Code Playgroud)
解决方案是这样设置ANDROID_PACKAGE_SOURCE_DIR :
set(ANDROID_PACKAGE_SOURCE_DIR ${PROJECT_SOURCE_DIR}/android CACHE INTERNAL "")
Run Code Online (Sandbox Code Playgroud)
android/AndroidManifest.xml现在,构建 android 包时会考虑该文件。
| 归档时间: |
|
| 查看次数: |
2292 次 |
| 最近记录: |