Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/216.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android是否支持Qt QSharedMemory?_Android_Qt_Shared Memory - Fatal编程技术网

Android是否支持Qt QSharedMemory?

Android是否支持Qt QSharedMemory?,android,qt,shared-memory,Android,Qt,Shared Memory,我正在尝试使用QSharedMemory。它可以在Windows下正常工作,而不是在Android上。第一次create调用失败。它没有链接到键,因为我使用了不同的值 我的main.cpp如下所示: #include <QGuiApplication> #include <QQmlApplicationEngine> #include <QSharedMemory> #include <QDebug> int main(int argc, cha

我正在尝试使用QSharedMemory。它可以在Windows下正常工作,而不是在Android上。第一次
create
调用失败。它没有链接到键,因为我使用了不同的值

我的
main.cpp
如下所示:

#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include <QSharedMemory>
#include <QDebug>

int main(int argc, char *argv[])
{
  QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
  QGuiApplication app(argc, argv);
  QQmlApplicationEngine engine;
  engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
  if (engine.rootObjects().isEmpty())
    return -1;

  QSharedMemory _sharedMemory("QtMemTest", nullptr);
  if (!_sharedMemory.create(sizeof(int), QSharedMemory::ReadWrite))
    qDebug() << "Failed " << _sharedMemory.errorString();
  else
    qDebug() << "Size " << QString::number(_sharedMemory.size());

  return app.exec();
}
#包括
#包括
#包括
#包括
int main(int argc,char*argv[])
{
QCoreApplication::setAttribute(Qt::AA_enableHighdDiscaling);
QGUI应用程序应用程序(argc、argv);
qqmlaplicationengine;
engine.load(QUrl(QStringLiteral(“qrc:/main.qml”));
if(engine.rootObjects().isEmpty())
返回-1;
QSharedMemory_sharedMemory(“QtMemTest”,nullptr);
if(!\u sharedMemory.create(sizeof(int),QSharedMemory::ReadWrite))

qDebug()所以这个类没有在Android上实现。
未实现的代码
警告是真实的


在Android上,在进程之间移动数据的可靠方法似乎是使用QtRemoteObject。

这里有几个答案:据我所知,QSharedMemory依赖于QSystemeMapore。在Android上测试这些数据会返回相同类型的错误。因此,看起来这两个功能都没有实现。如果所有这些都实现了,那还是好的已在Qt类规范中指出。。。