Импортировать файл из другого приложения, используя UIDocumentInteractionController - PullRequest
1 голос
/ 12 сентября 2011

Я хочу разработать приложение для iOS, в котором я хочу получить любой файл PDF / Doc / XLS, присутствующий в моем Mail / Safari, используя UIDocumentInteractionController и, наконец, загрузить их на мой локальный сервер.

Я могуЯ могу загрузить файл изображения, присутствующий в моем iPhone, на мой локальный сервер.

Но у меня вопрос, могу ли я получить файл PDF / Doc / XLS (присутствует в приложении safari / Mail) в мое приложение, используя UIDocumentInteractionController и загрузить их на мой локальный сервер?

Ответы [ 2 ]

0 голосов
/ 30 августа 2012

Действительно возможно импортировать файл из другого приложения, используя UIDocumentInteractionController в случае приложения для iPad. Все, что вам нужно сделать, это в 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;
}
0 голосов
/ 12 сентября 2011

Вы не можете получить документы, вы можете сказать 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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...