访问iPhone短信文件

我尝试访问xcode中的短信数据库文件,但失败。 我知道它的path是“/private/var/mobile/Library/SMS/sms.db”当我尝试访问。 该文件读取没有权限错误发生。

有任何方式来访问短信数据库文件或更改其在xcode权限。 提前致谢。 我尝试在iPhone越狱的代码是

NSFileManager *fileManager = [NSFileManager defaultManager]; NSString *path = @"/var/mobile/Library/SMS/sms.db"; NSError *error; NSArray *content = [fileManager contentsOfDirectoryAtPath:path error:&error]; NSLog(@"%@", error); NSLog(@"Content: %@", content); if ([fileManager isReadableFileAtPath:path]) { NSLog(@""); NSLog(@"ReadAble"); } else { NSLog(@"Not readable"); } if ([fileManager fileExistsAtPath:path]) NSLog(@"File Exist"); else NSLog(@"No"); 

进一步当我尝试call_history.db文件。 它是可访问的。 但是sms.db不行。

不,目前iOS上没有办法做到这一点。 它受到框架本身的限制,因此不可能。

在越狱的iPhone这是可能的,但它也许只能在相同的版本相同的越狱工作。

编辑:另一个解决scheme,不会传递给AppStore,是在iOS中find一些可利用的错误(必须有很多,检查越狱是如何完成的),以获得您的应用程序的根访问权限。 然后你就可以在非越狱的iPhone上访问你想要的数据。 但它可能只适用于你开发它的版本。

每个iOS应用程序都在沙箱内运行。 没有办法访问沙箱外的文件。

是的,您只需要将应用程序部署在/ Application文件夹中,目前您的应用程序将在/ var / mobile / Application文件夹中部署应用程序,因此它没有权限访问/ private / var / mobile / Library / SMS / sms .db你可以使用Theos或IOSopendev使整个过程变得简单。