У меня есть файл базы данных SQLite, встроенный в мой проект. На симуляторе запрос к базе данных работает нормально, но не на устройстве. Мой путь к файлу базы данных, когда я бегу на устройстве это (как показано на консоли с NSLog
):SQLite файл не найден, когда я запускаю на устройстве
путь для файла базы данных: /var/mobile/Applications/5914F328-148F-52E6-1AC9-38D7FF141F9B/MyApplication.app/db.sqlite
Мой соответствующий код, который ищет БД:
NSFileManager *fileMgr=[NSFileManager defaultManager];
NSString *dbPath=[[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"db.sqlite"];
NSLog(@"The path for the database file is : %@",dbPath);//Display the whole path
Я знаю, что путь на тренажере и на устройстве совершенно другой. Итак, как мне изменить свой код выше, чтобы найти файл базы данных относительно?
Надеюсь, что это поможет: [Как получить SQLite файл базы данных, когда приложение работает на устройстве] [1] [1]: http://stackoverflow.com/questions/6620691/how-to-get-sqlite-database-file-when-application-is-running-on-device – webmastx
Нет, относительное сопоставление пути файла автоматически выполняется iOS. Нет необходимости изменять свой код для изменений устройства. Он будет работать нормально для всех устройств (включая симулятор). – Ananth
Хорошо, но почему он не распознает файл базы данных, когда я запускаю на устройстве, значит ли это, что у моего кода что-то не хватает? – Luca