【问题标题】:How to build an Qt application for Android using the AWS C++ SDK?如何使用 AWS C++ SDK 为 Android 构建 Qt 应用程序?
【发布时间】:2018-09-17 13:36:40
【问题描述】:

几个月来,我一直在寻找使用 AWS C++ SDK 为 Android 构建 Qt 应用程序。我在网上搜索过,但一无所获...

我构建适用于 Android 的 AWS C++ SDK 没有这样的问题:

*/Applications/CMake.app/Contents/bin/cmake -DBUILD_ONLY="email;cognito-identity;lambda;core;cognito-idp;identity-management" -DNDK_DIR="/Users/bboglietti/Downloads/android-ndk-r10e" -DCMAKE_CXX_FLAGS="-std=c++11" -DTARGET_ARCH=ANDROID -DCMAKE_INSTALL_PREFIX="/Users/bboglietti/aws_sdk/aws_build_android/build_android_dynamic" /Users/bboglietti/aws_sdk/aws-sdk-cpp-master*

但是当我构建我的应用程序时,我有很多未引用链接的错误......

拜托,有人可以提供一个简短的教程或示例吗?它可以在 MacOS、Windows、Linux、IOS 上运行,但 Android 会拒绝...

【问题讨论】:

    标签: android c++ qt amazon-web-services


    【解决方案1】:

    Qt 应用程序需要一些额外的环境设置来开发 Android 应用程序。

    • Android SDK
    • Android NDK
    • Qt 安卓版 您将需要所有这些来制作工具包(即,如果您使用的是 Qt Creator IDE,否则您将不得不使用来自 android NDK 的 CMake、qMake 和 C/C++ 编译器)。 你可以下载Android studio,它会帮你管理Android SDK和NDK

    这些链接可以帮助你开始一些事情

    https://appbus.wordpress.com/category/qt-for-mobile/overview/

    https://doc.qt.io/qt-5/deployment-android.html

    【讨论】:

    • 您好,感谢您的回答。我下载了 Android SDK 和 NDK。我配置了我的 QtCreator,它正在构建一个简单的 Android 应用程序,但是当我添加 AWS C++ SDK 时,我遇到了未引用的链接问题。
    • @BenjaminB 我认为您不能使用 AWS C++ SDK 来构建 android 应用程序。我相信它们不支持在 Android 或 iOS 上工作。我在 AWS 论坛中找到了this
    • 嗨 Kuncheria,谢谢,但我认为这不是真的。我是为 IOS 做的,AWS 的官方文档说它正在处理 ANDROID herehere
    • 那你设置环境变量了吗
    • 是的,或者我认为是的。我在菜单 Reference>Device 中配置了我的 Qt(NDK 10 和最后一个 SDK),我能够在 Android 设备上构建和部署一个简单的应用程序。当我尝试将 AWS C++ SDK 库集成到我的应用程序中时,会出现此问题。
    【解决方案2】:

    在 mac ox 或控制台中,设置:

    • mkdir build_sdk_android

    • cd build_sdk_android

    • cmake 路径/aws-sdk-cpp/ -DNDK_DIR="/Android/sdk/android-ndk-r19c 的路径" -DBUILD_SHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=发布 -DCUSTOM_MEMORY_MANAGEMENT=ON -DTARGET_ARCH=ANDROID -DANDROID_NATIVE_API_LEVEL =19 -DBUILD_ONLY="identity-management;s3;rekognition" -DCMAKE_INSTALL_PREFIX="安装路径/build_sdk_android/install_sdk_desktop"

    • 制作

    • 进行安装

    • 然后放置您在 aws 中使用的库中的 .h 标头,例如: HEADERS + = \ work / aws-cpp-sdk-s3 / include / aws / s3 / model / AbortIncompleteMultipartUpload.h \
    • 但是我有这个错误:pathAndroidinstall / include / aws / core / http / curl / CurlHandleContainer.h: 21: error: 'curl / curl.h' file not found #include

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-12
      • 1970-01-01
      • 2014-11-02
      • 2021-11-13
      • 2018-01-23
      相关资源
      最近更新 更多