¿Agregar datos de plist a NSSet?

Estoy intentando agregar las ID del producto en la compra de la aplicación. Pero aquí, en el siguiente código, lo agrego manualmente. ¿Cómo puedo agregarlo desde un plist ?

Mi código:

 @implementation RageIAPHelper + (RageIAPHelper *)shanetworkingInstance { static dispatch_once_t once; static RageIAPHelper * shanetworkingInstance; dispatch_once(&once, ^{ NSSet * productIdentifiers = [NSSet setWithObjects: @"greatminds.assamkarttestingdays", @"greatminds.newgirlinthecity", @"greatminds.newlights", nil]; shanetworkingInstance = [[self alloc] initWithProductIdentifiers:productIdentifiers]; }); return shanetworkingInstance; } 

Configura tu plist como una matriz. Luego cargue el NSArray del file Plist. Luego cree el NSSet del NSArray .

 // Assume you have a plist in the app bundle named "products.plist" with a root of type array NSString *filePath = [[NSBundle mainBundle] pathForResource:@"products" ofType:@"plist"]; NSArray *products = [NSArray arrayWithContentsOfFile:filePath]; NSSet *productIdentifiers = [NSSet setWithArray:products]; 

En realidad, puede cargar el file Plist en NSSArray y luego cargar los elementos NSArray en un NSSet utilizando el método de class setWithArray, que eliminará los duplicates de la matriz y agregará los elementos a establecer. Aquí está el código.

 NSString* plistPath = [[NSBundle mainBundle] pathForResource:@"Sample" ofType:@"plist"]; NSArray * contentArray = [NSArray arrayWithContentsOfFile:plistPath]; NSSet * sampleSet = [NSSet setWithArray:contentArray];