我使用libzip读取本机代码中的APK内容.
仅针对libzip功能“消失”的资产/声音/语音文件夹.
> libzip仍然可以看到其他文件.
>我仍然可以在项目文件夹的资产/声音/语音中看到它.
>我做了很多次清洁.
>我仍然可以从bin文件夹解压缩APK文件,然后看到所有必需的文件. (包括资产/声音/语音文件夹中的文件)
我添加了小的日志记录命令,它不打印资产/声音/语音文件夹中的文件.所有其他文件都存在.
int inum = zip_get_num_files(apkzip);for(int i = 0; i < inum; i++){ const char * name = zip_get_name(apkzip, i, 0); __androID_log_print(ANDROID_LOG_INFO,"fileZIP", "zip: %s", name);}
我不知道哪一步错了.用我的libzip无法读取的新格式的eclipse压缩ZPK吗?或可能是原因.
解决方法:
这不是libzip的答案,但是为什么您必须使用libzip在NDK应用程序中读取apk文件?在AndroID NDK中,您可以使用AAsset API从apk获取文件.看一下“ How To Get File In Assets From Android NDK”.
已编辑
It is not available in androID-5 that I still use
好.那Cocos2d-x’s ZipFile呢?它基于Minizip.
如何从cocos2dx/platform/android/CCFileUtilsAndroid.cpp开始使用Zipfile
s_pZipfile = new Zipfile(resourcePath, "assets/");pData = s_pZipfile->getfileData(fullPath.c_str(), pSize);
总结 以上是内存溢出为你收集整理的android NDK. libzip停止到子文件夹全部内容,希望文章能够帮你解决android NDK. libzip停止到子文件夹所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)