Compartir datos entre una extensión compartida de iOS 8 y la aplicación principal

Recientemente, he estado haciendo una simple extensión para compartir iOS 8 para comprender cómo funciona el sistema. Como Apple afirma en suGuía de programación de extensiones de aplicaciones:

De forma predeterminada, la aplicación que lo contiene y sus extensiones no tienen acceso directo a los contenedores de cada uno.

Lo que significa que la extensión y la aplicación que lo contiene no comparten datos. Pero en la misma página Apple trae una solución:

Si desea que la aplicación que lo contiene y sus extensiones puedan compartir datos, use Xcode o el portal del desarrollador para habilitar grupos de aplicaciones para la aplicación y sus extensiones. A continuación, registre el grupo de aplicaciones en el portal y especifique el grupo de aplicaciones que se utilizará en la aplicación que lo contiene.

Entonces es posible usar NSUserDefaults para compartir datos entre la aplicación que contiene y la extensión. Esto es exactamente lo que me gustaría hacer. Pero por alguna razón, no funciona.

En la misma página, Apple sugiere los valores predeterminados estándar:

var defaults = NSUserDefaults.standardUserDefaults()

En una presentación de WWDC (217), sugieren un paquete común:

var defaults = NSUserDefaults(suiteName: kDefaultsPackage)

Además, habilité Grupos de aplicaciones para el destino de la aplicación que contiene y el destino de la extensión, con el mismo nombre de Grupo de aplicaciones:

Pero toda esta configuración es para nada. No puedo recuperar los datos que almacené en la aplicación que lo contiene, desde la extensión. Es como si dos objetivos estuvieran usando almacenamientos NSUserDefaults completamente diferentes.

Entonces,

¿Hay alguna solución para este método?¿Cómo puedo compartir datos simples entre la aplicación que contiene y la extensión de compartir? Los datos son solo credenciales de usuario para una API.

Respuestas a la pregunta(8)

Su respuesta a la pregunta