forked from qt-creator/qt-creator
Enable mechanism to bundle Qt in APK
If the Qt version built against is Qt 5, and the deployment method is "Use libs on device" + "Use local Qt libs", Creator will copy the required files into the app bundle and set the necessary meta-data to make the Java code in the app actually load them from the app bundle. We also make this deployment method the default on Qt 5. Change-Id: Ib7a33e7d1fbd22f76c85c31e1dbc68912a38eda8 Reviewed-by: Daniel Teske <daniel.teske@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Eike Ziller <eike.ziller@digia.com>
This commit is contained in:
committed by
Eike Ziller
parent
8e18adc70f
commit
91d48fe727
@@ -45,6 +45,8 @@ QT_END_NAMESPACE
|
||||
namespace Android {
|
||||
namespace Internal {
|
||||
|
||||
class DeployItem;
|
||||
|
||||
class AndroidPackageCreationStep : public ProjectExplorer::BuildStep
|
||||
{
|
||||
Q_OBJECT
|
||||
@@ -82,6 +84,8 @@ private slots:
|
||||
void showInGraphicalShell();
|
||||
void setQtLibs(const QStringList &qtLibs);
|
||||
void setPrebundledLibs(const QStringList &prebundledLibs);
|
||||
void updateXmlForFiles(const QStringList &inLibList, const QStringList &inAssetsList);
|
||||
void getBundleInformation();
|
||||
|
||||
signals:
|
||||
void updateRequiredLibrariesModels();
|
||||
@@ -100,6 +104,12 @@ private:
|
||||
void raiseError(const QString &shortMsg,
|
||||
const QString &detailedMsg = QString());
|
||||
|
||||
QStringList collectRelativeFilePaths(const QString &parentPath);
|
||||
void collectFiles(QList<DeployItem> *deployList, QList<DeployItem> *pluginsAndImports);
|
||||
void removeManagedFilesFromPackage();
|
||||
void copyFilesIntoPackage(const QList<DeployItem> &deployList);
|
||||
void stripFiles(const QList<DeployItem> &deployList);
|
||||
|
||||
static const Core::Id CreatePackageId;
|
||||
|
||||
private:
|
||||
@@ -126,8 +136,13 @@ private:
|
||||
Utils::FileName m_appPath;
|
||||
Utils::FileName m_readElf;
|
||||
QStringList m_qtLibs;
|
||||
QStringList m_qtLibsWithDependencies;
|
||||
QVector<AndroidManager::Library> m_availableQtLibs;
|
||||
QStringList m_prebundledLibs;
|
||||
|
||||
QStringList m_bundledJars;
|
||||
QStringList m_otherBundledFiles;
|
||||
bool m_bundleQt;
|
||||
};
|
||||
|
||||
} // namespace Internal
|
||||
|
||||
Reference in New Issue
Block a user