問(wèn)題描述:有多個(gè)賬戶(hù),先登錄第一個(gè)賬號(hào),退出登錄,登錄第二個(gè)賬號(hào),殺掉應(yīng)用程序,啟動(dòng)app,此時(shí)發(fā)現(xiàn)從數(shù)據(jù)庫(kù) 取出的還是第一個(gè)賬號(hào)的信息,而不是第二次登錄的賬號(hào)信息
問(wèn)題分析:查看JKDBModel的源碼,發(fā)現(xiàn)
1.+ (JKDBHelper *)shareInstance;單例類(lèi),只創(chuàng)建一次。
2.NSString *dbpath = [docsdir stringByAppendingPathComponent:[NSString stringWithFormat:@"%@jkdb.sqlite",USER_ID]];源碼的數(shù)據(jù)庫(kù)叫jkdb.sqlite,登錄多個(gè)賬號(hào)的時(shí)候,應(yīng)該給一個(gè)可以區(qū)分的,有唯一性的名字
結(jié)果:第一路徑加userid來(lái)區(qū)分。第二,每次存數(shù)據(jù)庫(kù)前面,銷(xiāo)毀JKDBHelper。在JKDBHelper里加上類(lèi)方法
+ (void)destroyJKDBHelper{
? ? onceToken = 0;
? ? _instance = nil;
}