Когда я вызываю DBRestClient для загрузки файла по заданному пути, API не вызывает функции загрузки.Dropbox iOS Core SDK не загружает файлы
Например:
- (void) downloadFiles:(NSMutableArray *)files
{
NSLog(@"%@", files);
itemsToBeDownloaded = [[NSMutableArray alloc] initWithArray:files];
restClient = [self restClient];
for (NSString *string in files)
{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"/Dropbox%@", string]];
[restClient loadFile:string intoPath:filePath];
}
}
печати files
возвращает ( "/Blank.pdf" )
печать string
возвращает /Blank.pdf
печать filePath
возвращает /var/mobile/Applications/0C506400-7142-41E2-9F3D-0965985CED9E/Documents/Dropbox/Blank.pdf
Так что функция вызывается, и знает, файлы и их пути ' s для загрузки.
Однако, когда я звоню [restClient loadFile:string intoPath:filePath];
, ничего не происходит. У меня есть методы делегатов в:
- (void) restClient:(DBRestClient *)client loadedFile:(NSString *)destPath
{
NSLog(@"Called!");
}
- (void) restClient:(DBRestClient *)client loadedFile:(NSString *)destPath contentType:(NSString *)contentType
{
NSLog(@"Called!");
}
- (void) restClient:(DBRestClient *)client loadedFile:(NSString *)destPath contentType:(NSString *)contentType metadata:(DBMetadata *)metadata
{
NSLog(@"%@", destPath);
NSLog(@"%@", contentType);
NSLog(@"%@", metadata);
}
- (void) restClient:(DBRestClient *)client loadFileFailedWithError:(NSError *)error
{
NSLog(@"Error downloading file: %@", error);
}
Заявление выполнено не Called!
. Кажется, RestClient не загружает данные.
Другое примечание: restClient = [self restClient];
действительно возвращает действительный DBRestClient, поэтому я знаю, что он действителен. Однако вызов для загрузки файла не вызывается.
Есть ли конкретная причина, по которой звонок loadFile:
не производится? У меня есть загрузка Метаданных в порядке.
EDIT: вызов loadMetadata: на string
делает НЕ вызвать метод делегата loadMetadata.
EDIT 2: код ниже перечислены как испрашивается массив к файлу:
- (void) downloadFiles
{
NSMutableArray *filesToDownload = [[NSMutableArray alloc] init];
for (int i = 0; i < [[itemsToDownload allKeys] count]; ++i)
{
for (NSString *string in [itemsToDownload objectForKey:[[itemsToDownload allKeys] objectAtIndex:i]])
{
[filesToDownload addObject:[NSString stringWithFormat:@"%@%@", [[itemsToDownload allKeys] objectAtIndex:i], string]];
}
}
[dropboxController downloadFiles:filesToDownload];
}
wait Я смущен, что вы говорите «Нет призванных! выдается ', так что вы точно видите в своем журнале? –
'2013-05-15 12:22:43.868 XXX [50112: 7a23] Файлы: ( "/Blank.pdf" ) ' ' purgeIdleCellConnections: найдено один для очистки conn = 0x1d5f14f0' –
Итак, где Blank.pdf в вашем Dropbox? у вас есть папка с песочницей api или вы используете целый Dropbox? –