Ios NSUserDefaults数据在启用应用程序组后丢失

Ios NSUserDefaults数据在启用应用程序组后丢失,ios,objective-c,nsuserdefaults,Ios,Objective C,Nsuserdefaults,我已经在我的项目中创建了具有套件名称的默认用户,如下所示,但没有在签名和功能中启用应用程序组 NSUserDefaults *defaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.com.compnaynamehere.sharedata"]; // Storing the value here [defaults setValue:@"This is value1" forKey:@

我已经在我的项目中创建了具有套件名称的默认用户,如下所示,但没有在签名和功能中启用应用程序组

NSUserDefaults *defaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.com.compnaynamehere.sharedata"];

// Storing the value here 
[defaults setValue:@"This is value1" forKey:@"key1"];
[defaults synchronize];

// Retrieving value here for key1
NSString *value = [defaults valueForKey:@"key1"];
NSLog(@"This data stored for key1 is : %@", value);
数据已成功存储,并在检索key1时获取日志:

2021-05-14 16:35:34.031941+0530 demo[16478:224183] This data stored for key1 is : This is value1
所以到目前为止一切都很好,可以在重新安装应用程序或进入view controller时正确访问数据

现在出现了一个问题,我在签名和功能中为我的项目启用应用程序组选择名称group.com.companynamehere.sharedata,然后重新安装应用程序

当我尝试使用下面的代码获取view controller或Applegate中的存储值时,用户默认数据在获取null时丢失:

NSUserDefaults *defaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.com.compnaynamehere.sharedata"];

 // Retrieving value here for key1
NSString *value = [defaults valueForKey:@"key1"];

NSLog(@"This data stored for key1 is : %@", value);
获取了key1的如下(null)数据的日志:

2021-05-14 16:36:24.174784+0530 demo[16512:225476] This data stored for key1 is : (null)

请帮助我解决此问题?

启用应用程序组后,请澄清您在哪里设置“key1”的值在尝试读回之前?该值在上述代码中设置,在启用应用程序组之前开始,在启用应用程序组之后访问相同的值,但它给出一个空值创建应用程序组创建一个新的共享容器来存储这些默认值,以便它们可以在应用程序、小部件扩展、手表扩展之间共享,等等。因此您需要设置初始值。但是初始值已存储在同一套装initWithSuiteName中:@“group.com.compnaynamehere.sharedata”启用应用程序组后,我无法访问它们。您知道为什么我们不能使用同一套装名称访问它们吗?