【问题标题】:Requesting Android permissions in Qt 6在 Qt 6 中请求 Android 权限
【发布时间】:2022-11-19 02:17:12
【问题描述】:

我正在尝试将 Qt 5 应用程序转换为 Qt 6。 在 Qt 5 中,我们可以请求 Android 权限,如下所示:

QStringList permissions;
//...
QtAndroid::PermissionResultMap resultHash = QtAndroid::requestPermissionsSync(permissions);
for (const auto &perm : permissions)
{
    if(resultHash[perm] == QtAndroid::PermissionResult::Denied)
    {
        qDebug() << "Permission denied:" << perm;
        return false;
    }
}

Qt 6 中的等价物是什么?还是使用 JNI 手动实现它的唯一方法?

问候

【问题讨论】:

    标签: qt6 qtandroidextras


    【解决方案1】:

    Qt6 中还没有权限处理 API。但是,它正在制作中。可以关注QTBUG-90498的情况。看起来它计划于 Qt6.4 发布,我认为它会在 2022 年秋季的某个时间发布。您可以从错误报告中找到代码审查链接,这可能有助于您编写自己的实现。

    我建议您查看QNativeInterface::QAndroidApplication::runOnAndroidMainThread,您可以使用它在 Android UI 线程上进行异步调用。

    【讨论】:

      【解决方案2】:

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-11-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-11-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多