无法从IOS中的Dropbox获取数据
我正在开发IOS应用程序。成功地集成了Dropbox,并将数据作为记录保存在Dropbox的数据存储中。到目前为止一切正常。但在删除应用程序并重新安装后,我无法获取数据。但在一个场景中,我获取了数据,即,“我在数据存储中的任何一个表中插入了一条记录,当我试图成功获取数据时插入了该记录”。但我需要在应用程序安装时第一次获取。如果有人对其进行了操作,请帮助我。提前感谢无法从IOS中的Dropbox获取数据,ios,objective-c,sync,dropbox,dropbox-api,Ios,Objective C,Sync,Dropbox,Dropbox Api,我正在开发IOS应用程序。成功地集成了Dropbox,并将数据作为记录保存在Dropbox的数据存储中。到目前为止一切正常。但在删除应用程序并重新安装后,我无法获取数据。但在一个场景中,我获取了数据,即,“我在数据存储中的任何一个表中插入了一条记录,当我试图成功获取数据时插入了该记录”。但我需要在应用程序安装时第一次获取。如果有人对其进行了操作,请帮助我。提前感谢 -(void)dropBoxScuccessLogin:(NSString *)successString { if ([succe
-(void)dropBoxScuccessLogin:(NSString *)successString
{
if ([successString isEqualToString:@"scuccess"])
{
//appdelegate.window.rootViewController = appdelegate.splitview;
NSArray *array1=[appdelegate.datastoreManager listDatastores:nil];
NSLog(@"array is %@",array1);
if (self.account)
{
NSDate *mydate=[NSDate date];
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"MMM-DD-yyyy hh:mm:ss a"];
NSString *stringFromDate = [formatter stringFromDate:mydate];
DBTable *customerTbl = [self.store getTable:@"DataSyncedOndate"];
DBRecord *task = [customerTbl insert:@{ @"SyncedDate": stringFromDate} ];
__weak DropBoxViewController *slf = self;
[self.store addObserver:self block:^ {
if (slf.store.status & (DBDatastoreIncoming | DBDatastoreOutgoing))
{
[self syncTasks];
}
}];
[self.store sync:nil];
}
}
else
{
NSLog(@"Dropbox Login faild");
}
}
- (void)syncTasks
{
NSLog(@"Self Account is in syncTasks is %@",self.account);
if (self.account)
{
NSDictionary *changed = [self.store sync:nil];
NSLog(@" Data is Synced");
// [self getDataSync];
dispatch_async(dispatch_get_main_queue(), ^{
[self retriveDataFromDB];
});
// [self performSelector:@selector(getDataSync) withObject:nil afterDelay:2.0];
}
else
{
// [alertView show];
}
}
在RetrieveDataFromDB方法中
-(void)retriveDataFromDB
{
NSLog(@"retrive from DB method called");
///////////Admin details///////////
NSMutableArray *tasks = [NSMutableArray arrayWithArray:[[self.store getTable:@"PriceList"] query:nil error:nil]];
NSLog(@"tasks count is %d",[tasks count]);
for (int k=0; k<[tasks count]; k++)
{
DBRecord *recordObj=[tasks objectAtIndex:k];
NSString *Tier1_Id =recordObj[@"Tier1"];
NSString *Tier2_Id =recordObj[@"Tier2"];
NSString *Tier3_Id =recordObj[@"Tier3"];
NSString *Code_Id =recordObj[@"Code"];
NSString *CRV_Id =recordObj[@"CRV"];
NSString *insertAdminString = [NSString stringWithFormat:@"INSERT INTO admin_Tbl(Code,Tier1,Tier2,Tier3,CRV) VALUES(\"%@\",\"%@\",\"%@\",\"%@\",\"%@\")",Code_Id,Tier1_Id,Tier2_Id,Tier3_Id,CRV_Id];
BOOL isDataadded = [appdelegate executeInsertQuery:insertAdminString];
if (isDataadded == YES)
{
NSLog(@"admin table insertrd successfully");
}
else
{
NSLog(@"admin table not insertrd successfully");
}
}
}
-(void)从数据库检索数据
{
NSLog(@“从调用的DB方法检索”);
///////////管理详细信息///////////
NSMutableArray*任务=[NSMutableArray arrayWithArray:[[self.store getTable:@“PriceList”]查询:无错误:无]];
NSLog(@“任务计数为%d”,[tasks count]);
对于(int k=0;k@smarx您是否在数据存储上设置了观察者?当有传入的更改时,您是否在那里调用sync
?请参阅教程:。如果不是,请发布一些代码。@smarx请用一些代码查看我编辑的问题看起来您从未调用sync
。至少,在您共享的代码中,无论是syncTasks
还是retrievedatafromdb
,实际上都没有调用sync
(不过,我看到一行注释掉了用来执行此操作的代码。所以我想您曾经尝试过它?)