我想开发一个iOS应用程序,我希望使用UIDocumentInteractionController
在我的邮件/ Safari中获取任何PDF / Doc / XLS文件,最后将它们上传到我的本地服务器。
我可以将iPhone中的图像文件上传到本地服务器。
但我的问题是,我是否可以使用UIDocumentInteractionController
&和我的应用程序将PDF / Doc / XLS文件(存在于safari / Mail应用程序中)提取到我的应用程序中将它们上传到我的本地服务器?
答案 0 :(得分:0)
您无法获取文档,您可以告诉iOS您的应用可以打开PDF / Doc / XLS。 通过向info.plist添加支持的文件类型来完成此操作: http://developer.apple.com/library/ios/#documentation/FileManagement/Conceptual/DocumentInteraction_TopicsForIOS/Articles/RegisteringtheFileTypesYourAppSupports.html#//apple_ref/doc/uid/TP40010411-SW1
答案 1 :(得分:0)
对于iPad应用,确实可以使用UIDocumentInteractionController从其他应用程序导入文件。您需要做的就是在应用程序的info.plist中添加支持的文档格式。以下列方式将applicationDidFinshWithLaunchingOptions委托方法添加到应用程序委托类中的应用程序。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[self applicationDidFinishLaunching:application];
if (launchOptions && [launchOptions objectForKey:UIApplicationLaunchOptionsURLKey])
{
NSString* path = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSURL *url=[launchOptions objectForKey:UIApplicationLaunchOptionsURLKey];
NSString *sourceFilePath=[url path];
NSFileManager *fileManager=[NSFileManager defaultManager];
NSData *fileData=[fileManager contentsAtPath:sourceFilePath];
NSString *fileName = [NSString stringWithFormat:@"test.pdf"];
NSString *updatedFilePath = [path stringByAppendingPathComponent:fileName];
BOOL hasWrittenSuccessfully = [fileData writeToFile:updatedFilePath atomically:TRUE];
}
return YES;
}