我有一個ipad應用程序,其中我從服務器的UIWebView中顯示PDF文檔。我希望用戶能夠下載這些文檔,以便他們可以脫機閱讀它們。不過,我希望他們只在應用程序中讀取它。基本上我的問題是:是否可以有一個文件夾只能從應用程序訪問,而不能由用戶訪問。ios中的應用程序唯一可訪問的文件夾
回答
可以將其保存在應用程序包。
NSDate *date = [NSDate new];
NSString *docName = [NSString stringWithFormat:@"%lld.pdf", (long long)[date timeIntervalSince1970]];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0]; // Get documents folder
dataPath = [documentsDirectory stringByAppendingPathComponent:docName];
編輯:acording您的意見的問題,我認爲,解決辦法是這樣的:
NSString *str = @"http://myserver.com/myfile.ext";
NSURL *url = [NSURL URLWithString:str];
NSData *content = [NSData dataWithContentsOfURL:url];
if (content) {
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0]; // Get documents folder
NSString *dataPath = [NSString stringWithFormat:@"%@/%@", documentsDirectory,@"myfile.ext"];
[content writeToFile:dataPath atomically:YES];
}
這看起來像我一直在尋找的答案,但你在哪裏得到的文件?我有一個網址,我必須下載所需的文件,但我不知道如何實現它。通過我將docName更改爲我的文檔ID來自數據庫的方式。 – Codette 2014-09-03 10:49:02
@tfeseas 1秒鐘,我會編輯迴應 – 2014-09-03 11:45:56
@tfeseas我認爲它是你在找什麼。如果你想從任何你需要實現的地方獲取文件名 – 2014-09-03 11:53:10
步驟:
創建密碼,以PDF文件,並用密碼編程打開PDF。
您可以爲PDF文件製作自己的DRM。
請參考以下鏈接:
- 1. iOS - 訪問應用程序創建的文件和文件夾
- 2. 訪問包括應用程序文件夾中的文件夾。
- 3. IIS6訪問應用程序主文件夾的父文件夾
- 4. 訪問應用程序文件夾
- 5. 訪問iOS應用/ Apps /文件夾
- 6. 的NSFileManager應用程序文件夾 - IOS
- 7. 我的應用可以訪問iOS中的Notes(Apple應用)文件夾嗎?
- 8. 從WP應用程序的項目文件夾訪問文件
- 9. Firemonkey iOS從不同的應用程序訪問一個文件
- 10. 如何訪問可可中的應用程序包內容文件夾?
- 11. 如何訪問UWP中的當前應用程序文件夾?
- 12. 如何訪問「應用程序」文件夾中的項目
- 13. 訪問wpf應用程序中的圖像文件夾
- 14. ASP.NET應用程序中Cache文件夾的System.IO訪問錯誤
- 15. 訪問應用程序包中的libs文件夾
- 16. 訪問所有圖像文件夾中的iPhone應用程序
- 17. 如何使用C#訪問iOS應用程序的Documents文件夾
- 18. iOS文件創建可訪問所有應用程序
- 19. 通過iphone應用程序中的jqtouch訪問Documents文件夾中的文件
- 20. 從Today Extension中訪問應用程序文檔文件夾
- 21. 防止用戶訪問應用程序的子文件夾?
- 22. 訪問窗口應用程序中特定文件夾中的文件
- 23. 在mac osx應用程序包中訪問資源文件夾中的文件
- 24. 訪問SDExplorer(系統文件夾)從我的C#應用程序
- 25. 訪問有關clickonce應用程序的文件夾信息
- 26. FileLoadException在訪問項目應用程序文件夾中的程序集dll時
- 27. 覆蓋應用程序文件夾中的文件的問題
- 28. 在iOS應用程序中創建文檔文件夾內的文件夾
- 29. 如何在WinRT應用程序中訪問文件夾「LocalCache」
- 30. 在Android應用程序中訪問Whatsapp Media文件夾
由於應用程序在沙盒模式下工作,這將是隻有你的應用程序無論如何,沒有別的訪問,因此你根本不需要做任何事情。 – Popeye 2014-09-03 08:06:07
用戶將文件下載到他的ipad,甚至在他關閉應用程序後,他將能夠在以後訪問它,但如果他試圖在文檔文件夾上瀏覽該文件,該文件將從用戶隱藏。 – Codette 2014-09-03 08:11:00
你有沒有測試過,它發生了?或者你問是否有可能?如果是的話,我該如何阻止它。由於iOS應用程序在iOS中工作的方式除非它們是越獄設備,否則無法讀取應用程序內的內容,就像應用程序無法讀取其他應用程序中的數據一樣,這就是爲什麼它被稱爲沙箱。 – Popeye 2014-09-03 08:14:51