我将Qt(C ++)和基于qml的应用移植到Android平台。由于项目的性质,我不使用Qt Creator 。
我已经使用ndk编译了代码,并为我的C ++组件生成了所有必需的.so文件。在Android工作室中创建了项目,包括jiniLibs(*.so
)文件,alos,使用Qt提供的Activity / Loader / Delegate类以及编写Android应用程序。应用程序加载" main.so"和应用程序开始。我可以看到日志告诉我它已加载。我创建了QGuiApplication
个对象,在创建QmlComponent
时,我试图将main.qml
传递到QmlComponent instance
main.so
内,但我不知道如何指定main.qml
的路径?
我尝试了qrc:/main.qml
,assets:/main.qml
,但没有运气。
注意:我将main.qml
放在assets
文件夹中。我甚至不确定何时在打包时放入该文件。
寻找建议,我们如何在C ++代码中指定资产/资源路径。
答案 0 :(得分:0)
// QQmlEngine* m_pQmlEngine;
m_pQmlEngine->setBaseUrl("qrc:/qml/");
答案 1 :(得分:0)
Qt Android帮助程序类复制/data/data/org.qtproject.example.test/qt-reserved-files/
路径上的所有资产,但您需要确保资产信息应映射到res/values/libs.xml
中有一个部分