diff --git a/AddQtIosApp.cmake b/AddQtIosApp.cmake index ca010d3..53e6895 100644 --- a/AddQtIosApp.cmake +++ b/AddQtIosApp.cmake @@ -58,6 +58,7 @@ include(CMakeParseArguments) # ORIENTATION_PORTRAIT_UPDOWN # ORIENTATION_LANDSCAPE_LEFT # ORIENTATION_LANDSCAPE_RIGHT +# PHOTO_LIBRARY_USAGE_DESCRIPTION "My App needs to access your photo library." # SUPPORT_IPHONE # SUPPORT_IPAD # REQUIRES_FULL_SCREEN @@ -99,6 +100,7 @@ function(add_qt_ios_app TARGET) CATALOG_APPICON CATALOG_LAUNCHIMAGE DISTRIBUTION_METHOD + PHOTO_LIBRARY_USAGE_DESCRIPTION ) set(QT_IOS_MULTI_VALUE_ARG RESOURCE_FILES @@ -144,6 +146,7 @@ function(add_qt_ios_app TARGET) set(QT_IOS_SUPPORT_IPAD ${ARGIOS_SUPPORT_IPAD}) set(QT_IOS_REQUIRES_FULL_SCREEN ${ARGIOS_REQUIRES_FULL_SCREEN}) set(QT_IOS_HIDDEN_STATUS_BAR ${ARGIOS_HIDDEN_STATUS_BAR}) + set(QT_IOS_PHOTO_LIBRARY_USAGE_DESCRIPTION ${ARGIOS_PHOTO_LIBRARY_USAGE_DESCRIPTION}) set(QT_IOS_IPA ${ARGIOS_IPA}) set(QT_IOS_UPLOAD_SYMBOL ${ARGIOS_UPLOAD_SYMBOL}) @@ -261,6 +264,9 @@ function(add_qt_ios_app TARGET) message(STATUS "ORIENTATION_PORTRAIT_UPDOWN : ${QT_IOS_ORIENTATION_PORTRAIT_UPDOWN}") message(STATUS "ORIENTATION_LANDSCAPE_LEFT : ${QT_IOS_ORIENTATION_LANDSCAPE_LEFT}") message(STATUS "ORIENTATION_LANDSCAPE_RIGHT : ${QT_IOS_ORIENTATION_LANDSCAPE_RIGHT}") + if(QT_IOS_PHOTO_LIBRARY_USAGE_DESCRIPTION) + message(STATUS "PHOTO_LIBRARY_USAGE_DESCRIPTION : ${QT_IOS_PHOTO_LIBRARY_USAGE_DESCRIPTION}") + endif() message(STATUS "SUPPORT_IPHONE : ${QT_IOS_SUPPORT_IPHONE}") message(STATUS "SUPPORT_IPAD : ${QT_IOS_SUPPORT_IPAD}") message(STATUS "REQUIRES_FULL_SCREEN : ${QT_IOS_REQUIRES_FULL_SCREEN}") @@ -580,6 +586,10 @@ function(add_qt_ios_app TARGET) set(QT_IOS_UPLOAD_SYMBOL_KEY "") endif() + if(QT_IOS_PHOTO_LIBRARY_USAGE_DESCRIPTION) + set(MACOSX_BUNDLE_PHOTO_LIBRARY_USAGE_DESCRIPTION "NSPhotoLibraryUsageDescription ${QT_IOS_PHOTO_LIBRARY_USAGE_DESCRIPTION}" PARENT_SCOPE) + endif() + set(QT_IOS_EXPORT_OPTIONS_FILE ${CMAKE_CURRENT_BINARY_DIR}/${QT_IOS_TARGET}ExportOptions.plist) configure_file(${QT_IOS_SOURCE_DIR}/ExportOptions.plist.in ${QT_IOS_EXPORT_OPTIONS_FILE}) diff --git a/Info.plist.in b/Info.plist.in index daf6a9e..329ccb8 100644 --- a/Info.plist.in +++ b/Info.plist.in @@ -65,6 +65,9 @@ NSHumanReadableCopyright ${MACOSX_BUNDLE_COPYRIGHT} + + ${MACOSX_BUNDLE_PHOTO_LIBRARY_USAGE_DESCRIPTION} + UISupportedInterfaceOrientations diff --git a/README.md b/README.md index c91fb9f..fbb3686 100644 --- a/README.md +++ b/README.md @@ -135,6 +135,7 @@ add_qt_ios_app(MyApp ORIENTATION_PORTRAIT_UPSIDEDOWN ORIENTATION_LANDSCAPELEFT ORIENTATION_LANDSCAPERIGHT + PHOTO_LIBRARY_USAGE_DESCRIPTION "My App needs to access your photo library." SUPPORT_IPHONE SUPPORT_IPAD REQUIRES_FULL_SCREEN @@ -388,6 +389,18 @@ The default allowed orientation can be set with flags: ![ScOrientation](doc/ScOrientation.png) +**PHOTO LIBRARY USAGE DESCRIPTION** + +A message that tells the user why the app is requesting access to the user’s photo library. + +*Example:* + +```cmake +add_qt_ios_app(MyApp + PHOTO_LIBRARY_USAGE_DESCRIPTION "My App needs to access your photo library." +) +``` + **SUPPORTED DEVICES** You can specify supported device either iPhone or iPad or both by settings: