C++ Android本机活动AssetManager VS 2019不工作
我正在尝试在VS2019的Android本机活动中使用C++ Android本机活动AssetManager VS 2019不工作,c++,android-ndk,visual-studio-2019,android-assetmanager,C++,Android Ndk,Visual Studio 2019,Android Assetmanager,我正在尝试在VS2019的Android本机活动中使用AAssetManager加载图像和文本文件。我尝试了所有我能想到的路径组合,以获得AAssetManager\u openDir或AAssetManager\u open来给我一个文件。我在别处找到的解决方案与不正确的路径有关,或者AAssetManager对象无效 下面是我如何尝试访问我的图像和文本文件 AAssetManager* pMan = m_pApp->activity->assetManager;
AAssetManager
加载图像和文本文件。我尝试了所有我能想到的路径组合,以获得AAssetManager\u openDir
或AAssetManager\u open
来给我一个文件。我在别处找到的解决方案与不正确的路径有关,或者AAssetManager
对象无效
下面是我如何尝试访问我的图像和文本文件
AAssetManager* pMan = m_pApp->activity->assetManager;
AAsset* pAsset = AAssetManager_open(pMan, "drawable\\testpng", AASSET_MODE_BUFFER); // Always returns NULL
AAssetDir* pAssetDir = AAssetManager_openDir(pMan, "res\\drawable");
const char* szFilename;
while ((szFilename = AAssetDir_getNextFileName(pAssetDir)) != NULL)
{
// 'szFilename' is always NULL and this print never gets hit
__android_log_print(ANDROID_LOG_DEBUG, "Debug", szFilename);
}
这是我的Android.Packaging
项目
安卓清单
<string name="testpng">drawable\test.png</string>
<string name="testdrawtxt">drawable\testtext.txt</string>
<string name="testpng2">drawable\assets\test2.png</string>
<string name="testdrawtxt2">drawable\assets\testtext2.txt</string>
drawable\test.png
drawable\testtext.txt
可绘制\assets\test2.png
drawable\assets\testtext2.txt
最后是实际的输出目录
据我所知,资产管理人是有效的。我做错了什么?资产不应该在res之下,而是在同一层次上。资产不应该在res之下,而是在同一层次上。就是这样!我花了太多时间在这上面,只是把它放错了目录。我在“res”文件夹旁边创建了一个名为“assets”的文件夹,并将项目放在其中。只需调用
AAssetManager\u open(pMan,“test.png”,AASSET\u MODE\u BUFFER)
即可正常工作。非常感谢。为什么不把它贴出来作为答案呢?