Native下如何获取 resources 文件夹下文件的完整路径
jsb.fileUtils没有找到任何文档。。。。。。。。。。。
此外,如果resources下文件热更新了,最新文件的完整路径如何拿到?
Native下如何获取 resources 文件夹下文件的完整路径
jsb.fileUtils没有找到任何文档。。。。。。。。。。。
此外,如果resources下文件热更新了,最新文件的完整路径如何拿到?
cc.url.raw
native下获取到的是相对路径啊
res/raw-assets/resources/xxxx.png
不建议这么获取。你这样做的话将来升级引擎你会崩溃的。 resources 目录发布后很可能就不存在了。
应该怎么取呢,就想找到一张项目中现有的图片,然后微信分享出去。
那你可以先 loadRes 拿到 texture,然后用 texture.url
texture.url Android 下是 获取到的是相对路径,ios Native没有测试
android微信分享ICON,我目前是这样解决的。
不知道是否可行,如果可行也是一个解决方案。现在测试微信分享可以显示。@Jare
在js这边将png图片信息读出来,
var realUrl = cc.url.raw("resources/shareIcon.png");
var data = jsb.fileUtils.getDataFromFile(realUrl);
通过反射机制将图片的data传给java转成相应Bitmap来用,就可以分享了。
注意:data反射只能用string来传递。到Java端是以逗号隔开的数字字符串。先转成String数组,再转成ByteBuffer。接着由ByteBuffer转为BitMap。
谢谢回复,是一种思路,我现在这样处理的:
前面跟你的一样,后面使用 jsb.fileUtils.writeDataToFile 将图片写到可写路径下,这样就拿到了完整路径。
多了一次读写,多占用了一点空间,不过没有接口的情况下只能这样了。
截图分享是你这个思路。 url 分享需要更新ICON的话可以用我上面的思路。
var realUrl = cc.url.raw(“resources/shareIcon.png”);
var data = jsb.fileUtils.getDataFromFile(realUrl);
cocoscreator 2.2 无法获取到数据,感觉好复杂,我就想读个本地png数据而已。。。
realUrl Native 现在也是相对路径了