Quiero activar iOS7 para pedirles permiso a los usuarios para usar la cuenta de Bluetooth y Twitter

Esto es algo atrasado con lo que la mayoría de la gente pregunta. Quiero activar deliberadamente el diálogo pidiendo permiso a los usuarios para:

Conéctese a dispositivos bluetooth, incluso sin conexión.Acceda a la cuenta de Twitter basada en iOS.

Ya tengo un cuadro de diálogo similar para que la ubicación funcione bien. Estoy haciendo esto porque quiero hacer que el proceso de pedir permiso sea un poco más suave, como Heyday, mostrando una pantalla de bienvenida que explica por qué la aplicación necesita este servicio y luego cuando el usuario toca OK, inicia la solicitud y activa el diálogo.

Ya he probado algunas cosas. Para Twitter he intentado lo siguiente:

- (void)triggerTwitterApprovalWithCompletion:(void (^)(BOOL, NSError *))completion  {
  self.accountStore = [[ACAccountStore alloc] init]; //setup as a property.
  ACAccountType *twitterAccountType = [self.accountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierTwitter];
  [self.accountStore requestAccessToAccountsWithType:twitterAccountType  options:nil completion:^(BOOL granted, NSError *error) { //completion handling is on indeterminate queue so I force main queue inside
    dispatch_async(dispatch_get_main_queue(), ^{
      completion(granted, error); //triggers displaying the next screen, working
    });
  }];
}

Pero aunque se otorga el permiso, es automático y no es el resultado de que el usuario se presente con un diálogo y lo apruebe.

Con la versión de Bluetooth todavía tengo que encontrar algún código que lo active. Tanto los documentos como las guías de programación son relativamente silenciosos sobre el tema de solicitar permisos. La única referencia que puedo encontrar es que al tener una clave plist parabluetooth-peripheral Se le solicitará automáticamente al usuario el inicio de la aplicación. Esto es demasiado temprano en el flujo para ser útil.

Respuestas a la pregunta(1)

Su respuesta a la pregunta