11系统,读取/var/mobile/Library/Preferences/权限问题

	NSDictionary *preference = [NSDictionary dictionaryWithContentsOfFile:@"/var/mobile/Library/Preferences/com.test.plist"]; 
	NSString *sn   = preference[@"sn"];  

记得之前10系统,Tweak中可以正常读取,但是,发现,11系统,无法读取了,直接闪退.
老师们,你们是怎么解决的?多谢了

试了 chown mobile:mobile chmod 7777 依然不能读取

进一步试验,发现,
放在:

__attribute__((constructor))
static void initialize() 
{
    	NSDictionary *preference = [NSDictionary dictionaryWithContentsOfFile:@"/var/mobile/Library/Preferences/com.test.plist"]; 
    	NSString *sn   = preference[@"sn"];   **没有读取权限**
}

这里面无法读取,

而放在:

%hook  xxxxx
        	NSDictionary *preference = [NSDictionary dictionaryWithContentsOfFile:@"/var/mobile/Library/Preferences/com.test.plist"]; 
        	NSString *sn   = preference[@"sn"];   **具有读取权限**
%end 

之前一直放在initialize() 方法中,初始化时,把几个参数,读取出来,具然11系统不行了.

老师位帮分析一下原因?谢谢

iOS 11 越狱就是这样

那如果,我想在
static void initialize() 中加载初始参数,怎么变通呢?

不清楚, iOS 11没搞过, 好像有个插件通过SB来读取

多谢,通过SB读应该可以,我试试,

我最近也在读取11系统的路径,最后我把数据放到沙盒 Document下面 获取到了。var/mobile获取不到 系统权限不够。

我怎么可以的,跟你一样的路径,%ctor里面获取的,一点问题都没有,Electra 1.3+

11.3.x
11.2.x

这二个版本是分水岭,有很多不一样,所以发版本,请发全

1 个赞