用getRawFd得到的资源文件FD,传到nativec++程序,用fstat获取fileinfo,答应出ino
struct stat fileinfo;
if (fstat(callbackData->fd, &fileinfo) == -1) {
OH_LOG_Print(LOG_APP, LOG_INFO, GLOBAL_RESMGR, TAG, "ResfdExecuteCB fstat failed!");
return;
}
ResfdExecuteCB fileinfo.stsize:1380131!
ResfdExecuteCB fileinfo.ino:26939!
ResfdExecuteCB fileinfo.mode:33188!
ResfdExecuteCB fileinfo.dev:66352!
然后通过查找发现,这个ino是 /data/app/el1/bundle/public/com.example.asyncandfd/entry.hap
stat 此文件发现:
File: /data/app/el1/bundle/public/com.example.asyncandfd/entry.hap
Size: 1380131 Blocks: 2696 IO Blocks: 512 regular file
Device: 10330h/66352d Inode: 26939 Links: 1 Device type: 0,0
Access: (0644/-rw-r--r--) Uid: ( 3060/installs) Gid: ( 3060/installs)
Access: 2024-03-06 11:46:56.100253412 +0800
Modify: 2024-03-06 11:46:56.116253412 +0800
Change: 2024-03-06 11:46:56.116253412 +0800
对应的文档:
getRawFd(path: string): Promise<RawFileDescriptor>
@ohos.resourceManager (资源管理) (openharmony.cn)
下面这个图片下载后改后缀为zip为测试工程

|