簡體   English   中英

iOS使用什么函數/系統調用來讀寫文件

[英]What function/syscall is used by iOS to read and write files

我想攔截iOS上的文件讀/寫,為我的一些應用程序提供透明的加密/解密功能。

我知道我可以調用各種SDK方法來讀/寫文件來做到這一點,但這需要很多努力並且容易出錯(我可能會錯過一些方法,導致我的應用程序崩潰/行為異常)。

如果所有這些方法都使用了一些常見的系統調用/函數,那么我寧願調整它並省去一些努力工作+使其更加萬無一失。 有沒有這樣的共同切入點?

PS:接受應用程序商店不是這里的標准,因為所有這些應用程序都是用於內部企業部署。

謝謝!

為此,您需要一個越獄設備。

有可以被劫持的POSIX系統調用readwrite這里是如何 - 不是特定於iOS,但無論如何都是Darwin ......)

您還可以使用MobileSubstrate( http://iphonedevwiki.net/index.php/MobileSubstrate )來掛接C標准庫中的read()和write()函數,該函數幾乎專門用於實現許多基本框架和方法。 (包括CocoaTouch - Foundation,CoreFoundation,以及其他一些C和C ++標准庫等) - 所以很可能你不需要直接改變系統調用。 例:

static size_t (*orig_write)(int fd, void *buf, size_t n);

size_t hijacked_write(int fd, void *buf, size_t n)
{
    // do something, then
    return orig_write(fd, buf, n);
}

// in some initialization:
MSHookFunction(write, hijacked_write, (void **)&original_write);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM