Revert "Android: fix Android assets handler not listing dirs with only sub dirs"
This reverts commit 875e90d249820c6210bdc2beebe61d0224e37b93. Reason for revert: QTBUG-107879 Task-number: QTBUG-107627 Fixes: QTBUG-107879 Change-Id: Ie593c973928758657305d1b2241a0480546ccb79 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
This commit is contained in:
parent
03c87b0792
commit
ffbf6b9ad4
@ -108,8 +108,6 @@ public:
|
|||||||
FolderIterator(const QString &path)
|
FolderIterator(const QString &path)
|
||||||
: m_path(path)
|
: m_path(path)
|
||||||
{
|
{
|
||||||
// Note that empty dirs in the assets dir before the build are not going to be
|
|
||||||
// included in the final apk, so no empty folders should expected to be listed.
|
|
||||||
QJniObject files = QJniObject::callStaticObjectMethod(QtAndroid::applicationClass(),
|
QJniObject files = QJniObject::callStaticObjectMethod(QtAndroid::applicationClass(),
|
||||||
"listAssetContent",
|
"listAssetContent",
|
||||||
"(Landroid/content/res/AssetManager;Ljava/lang/String;)[Ljava/lang/String;",
|
"(Landroid/content/res/AssetManager;Ljava/lang/String;)[Ljava/lang/String;",
|
||||||
@ -352,6 +350,7 @@ public:
|
|||||||
} else {
|
} else {
|
||||||
auto *assetDir = AAssetManager_openDir(m_assetManager, m_fileName.toUtf8());
|
auto *assetDir = AAssetManager_openDir(m_assetManager, m_fileName.toUtf8());
|
||||||
if (assetDir) {
|
if (assetDir) {
|
||||||
|
if (AAssetDir_getNextFileName(assetDir))
|
||||||
m_assetInfo->type = AssetItem::Type::Folder;
|
m_assetInfo->type = AssetItem::Type::Folder;
|
||||||
AAssetDir_close(assetDir);
|
AAssetDir_close(assetDir);
|
||||||
}
|
}
|
||||||
|
@ -1 +0,0 @@
|
|||||||
FooBar
|
|
@ -1 +0,0 @@
|
|||||||
FooBar
|
|
@ -1 +0,0 @@
|
|||||||
FooBar
|
|
@ -6,7 +6,6 @@
|
|||||||
#include <QTest>
|
#include <QTest>
|
||||||
#include <QtCore/qnativeinterface.h>
|
#include <QtCore/qnativeinterface.h>
|
||||||
#include <QtCore/qjniobject.h>
|
#include <QtCore/qjniobject.h>
|
||||||
#include <QtCore/qdiriterator.h>
|
|
||||||
|
|
||||||
class tst_Android : public QObject
|
class tst_Android : public QObject
|
||||||
{
|
{
|
||||||
@ -14,7 +13,6 @@ Q_OBJECT
|
|||||||
private slots:
|
private slots:
|
||||||
void assetsRead();
|
void assetsRead();
|
||||||
void assetsNotWritable();
|
void assetsNotWritable();
|
||||||
void assetsIterating();
|
|
||||||
void testAndroidSdkVersion();
|
void testAndroidSdkVersion();
|
||||||
void testAndroidActivity();
|
void testAndroidActivity();
|
||||||
void testRunOnAndroidMainThread();
|
void testRunOnAndroidMainThread();
|
||||||
@ -43,27 +41,6 @@ void tst_Android::assetsNotWritable()
|
|||||||
QVERIFY(!file.open(QIODevice::Append));
|
QVERIFY(!file.open(QIODevice::Append));
|
||||||
}
|
}
|
||||||
|
|
||||||
void tst_Android::assetsIterating()
|
|
||||||
{
|
|
||||||
QStringList assets = {"assets:/top_level_dir/file_in_top_dir.txt",
|
|
||||||
"assets:/top_level_dir/sub_dir",
|
|
||||||
"assets:/top_level_dir/sub_dir/file_in_sub_dir.txt",
|
|
||||||
"assets:/top_level_dir/sub_dir/sub_dir_2",
|
|
||||||
"assets:/top_level_dir/sub_dir/sub_dir_2/sub_dir_3",
|
|
||||||
"assets:/top_level_dir/sub_dir/sub_dir_2/sub_dir_3/file_in_sub_dir_3.txt"};
|
|
||||||
|
|
||||||
// Note that we have an "assets:/top_level_dir/sub_dir/empty_sub_dir" in the test's
|
|
||||||
// assets physical directory, but empty folders are not packaged in the built apk,
|
|
||||||
// so it's expected to not have such folder be listed in the assets on runtime
|
|
||||||
|
|
||||||
QDirIterator it("assets:/top_level_dir", QDirIterator::Subdirectories);
|
|
||||||
QStringList iteratorAssets;
|
|
||||||
while (it.hasNext())
|
|
||||||
iteratorAssets.append(it.next());
|
|
||||||
|
|
||||||
QVERIFY(assets == iteratorAssets);
|
|
||||||
}
|
|
||||||
|
|
||||||
void tst_Android::testAndroidSdkVersion()
|
void tst_Android::testAndroidSdkVersion()
|
||||||
{
|
{
|
||||||
QVERIFY(QNativeInterface::QAndroidApplication::sdkVersion() > 0);
|
QVERIFY(QNativeInterface::QAndroidApplication::sdkVersion() > 0);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user