Ios 实体的数据类型更改时,应用程序中止

Ios 实体的数据类型更改时,应用程序中止,ios,iphone,objective-c,core-data,Ios,Iphone,Objective C,Core Data,我在核心数据中创建了一个实体,并错误地将类型保留为字符串而不是布尔值。当我尝试将类型更改为布尔值时,应用程序会在保存过程中异常中止 我试着清理应用程序,删除模拟器的文件夹,但都没有效果 为什么更改后我的应用程序会中止?当您的模型与CoreData管理的永久存储SQLite db不同步时,会发生这种情况 如果你还没有发布你的应用程序,你可以在模拟器上删除该应用程序,按住图标直到十字出现,然后单击十字,然后重新运行它。这将删除持久存储,并创建一个与您的模型同步的新存储 如果你的应用程序已经被很多用户

我在核心数据中创建了一个实体,并错误地将类型保留为字符串而不是布尔值。当我尝试将类型更改为布尔值时,应用程序会在保存过程中异常中止

我试着清理应用程序,删除模拟器的文件夹,但都没有效果


为什么更改后我的应用程序会中止?

当您的模型与CoreData管理的永久存储SQLite db不同步时,会发生这种情况

如果你还没有发布你的应用程序,你可以在模拟器上删除该应用程序,按住图标直到十字出现,然后单击十字,然后重新运行它。这将删除持久存储,并创建一个与您的模型同步的新存储

如果你的应用程序已经被很多用户使用,那么每次你在数据模型中更改某些内容时要求他们删除并重新安装你的应用程序是不可行的。这就是您需要迁移的地方

以下是苹果的文档-


这里有一个教程-

从模拟器或设备中删除应用程序,然后运行。一旦更改表的架构,您需要删除以前的安装,以将更改反映为@CoolMonstersaid@CoolMonster请看我下面的评论。你是说同样的吗?我的应用还在开发中。从模拟器中删除应用程序意味着库->应用程序支持->iPhone模拟器->7.0,因为我只使用这个->应用程序。删除所有文件夹。我是对的,伙计们,酷怪物。我已经试过了。运行模拟器。从模拟器中删除应用程序,就像从iPhone中删除应用程序一样。@Lalit_vicky u只需长按应用程序图标并删除应用程序,即可删除模拟器中的应用程序。