Skip to content

Commit 195dc70

Browse files
author
minggo
authored
[Android] fix FileUtils::listFiles with path 'assets/'
1 parent 408f6cf commit 195dc70

File tree

2 files changed

+16
-3
lines changed

2 files changed

+16
-3
lines changed

cocos/platform/android/CCFileUtils-android.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -300,7 +300,7 @@ long FileUtilsAndroid::getFileSize(const std::string& filepath) const
300300
std::vector<std::string> FileUtilsAndroid::listFiles(const std::string& dirPath) const
301301
{
302302

303-
if(isAbsolutePath(dirPath)) return FileUtils::listFiles(dirPath);
303+
if(!dirPath.empty() && dirPath[0] == '/') return FileUtils::listFiles(dirPath);
304304

305305
std::vector<std::string> fileList;
306306
string fullPath = fullPathForDirectory(dirPath);

tests/cpp-tests/Classes/FileUtilsTest/FileUtilsTest.cpp

+15-2
Original file line numberDiff line numberDiff line change
@@ -1409,10 +1409,23 @@ void TestListFiles::onEnter()
14091409
this->addChild(cntLabel);
14101410
cntLabel->setPosition(winSize.width / 2, winSize.height / 3);
14111411
// writeTest
1412-
auto list = FileUtils::getInstance()->listFiles("fonts");
1412+
std::vector<std::string> listFonts = FileUtils::getInstance()->listFiles("fonts");
1413+
auto defaultPath = FileUtils::getInstance()->getDefaultResourceRootPath();
1414+
std::vector<std::string> list = FileUtils::getInstance()->listFiles (defaultPath);
14131415

14141416
char cntBuffer[200] = { 0 };
1415-
snprintf(cntBuffer, 200, "%lu", static_cast<unsigned long>(list.size()));
1417+
snprintf(cntBuffer, 200, "'fonts/' %d, $defaultResourceRootPath %d",listFonts.size(), list.size());
1418+
1419+
for(int i=0;i<listFonts.size();i++)
1420+
{
1421+
CCLOG("fonts/ %d: \t %s", i, listFonts[i].c_str());
1422+
}
1423+
1424+
for(int i=0;i<list.size();i++)
1425+
{
1426+
CCLOG("defResRootPath %d: \t %s", i, list[i].c_str());
1427+
}
1428+
14161429
cntLabel->setString(cntBuffer);
14171430

14181431
}

0 commit comments

Comments
 (0)