Pergunta

Eu tenho usado o seguinte código para registrar meu aplicativo para receber notificações push, e eu tenho o alerta que me pede para se registrar para notificação push e eu acidentalmente imprensa cancelar. Agora eu quero ter o alerta novamente para que eu possa disparar o método delegado, a fim de obter o token do dispositivo. Mas eu não receber esse alerta mais e cada vez que eu abrir as configurações Achei que a notificação é desligado para o aplicativo. Eu tentei apagar o aplicativo a partir do dispositivo, versão aplicativo mudança, perfil de teste de exclusão, limpe o alvo mesmo eu redefinir todas as configurações do iPhone, mas ainda não foi capaz de resolver this.I gostaria muito de receber qualquer ajuda, graças

[[UIApplication sharedApplication] registerForRemoteNotificationTypes:
     UIRemoteNotificationTypeBadge | 
     UIRemoteNotificationTypeAlert | 
     UIRemoteNotificationTypeSound];  
Foi útil?

Solução

Há uma opção de notificação nas configurações. Confira sua aplicação e ativar a notificação de lá.

Eu aprendi em algum lugar que o iOS 4 tem esse bug que ele não vai pedir novamente, mesmo se youremove e reinstalar o aplicativo.

Tente Configurações> Notifications-> seu app-> ligá-lo.

Hope isso ajuda. Graças

Outras dicas

maneira recomendada da Apple para redefinir a notificação

Durante o desenvolvimento só, é claro.

Se você quiser simular um primeiro tempo de execução do seu aplicativo, você pode deixar o aplicativo desinstalado por um dia. Você pode conseguir este último sem realmente esperando um dia, seguindo estes passos:

Excluir seu aplicativo do dispositivo. Desligue o dispositivo completamente e ligá-lo novamente. Vá para Configurações> Geral> Data e hora e definir o data antes de um dia ou mais. Desligue a dispositivo completamente novo e ligá-lo novamente.

Não se esqueça de desligá-lo completamente e voltar a.

Parece que a questão nunca foi totalmente respondida por isso aqui está:

Você não pode fazer o construído em prompt que realmente muda a configuração de chegar, mas você pode verificar manualmente se as notificações push estão atualmente habilitado para seu aplicativo e exibir seu próprio alerta se agora. Aqui está o que a função que eu uso parece com:

+ (BOOL) arePushNotificationsEnabled 
{
    return [[UIApplication sharedApplication] enabledRemoteNotificationTypes] != UIRemoteNotificationTypeNone;
}

A redefinição do notificações push Permissão Alerta no iOS

Pela primeira vez um aplicativos habilitados para envio, registros de notificações push. iOS pergunta ao usuário se deseja receber notificações remotas para esse aplicativo específico. Depois que o usuário respondeu a este alerta não é apresentada uma e outra vez a menos que o dispositivo é restaurado ou o aplicativo foi desinstalado por pelo menos um dia.

Se você quiser simular um primeiro tempo de execução do seu aplicativo, você pode deixar o aplicativo desinstalado por um dia. Você pode conseguir este último sem realmente esperando um dia, seguindo estes passos:

  1. Excluir seu aplicativo do dispositivo.
  2. Desligue o dispositivo completamente e ligá-lo novamente.
  3. Vá para Configurações> Geral> Data e hora e defina a data antes de um dia ou mais.
  4. Desligue o dispositivo completamente novo e ligue-o novamente.

Para mais detalhes verificar isso .

Certifique-se de chamar esse método no didFinishLaunchingWithOptions do seu AppDelegate

 [[UIApplication sharedApplication] registerForRemoteNotificationTypes:
 UIRemoteNotificationTypeBadge | 
 UIRemoteNotificationTypeAlert | 
 UIRemoteNotificationTypeSound]; 

de modo que toda vez que o aplicativo vai pedir Notificações

também verificar com as definições do dispositivo para verificar as notificações estão ativadas ou não?

tudo que você tem a fazer é remover um dos métodos de notificação de seu código de registo e ele irá pedir novamente para permitir notificações (por exemplo remove UIRemoteNotificationTypeSound)

Para tornar nosso aplicativo pedir-lo novamente e novamente .. chamada

[[UIApplication sharedApplication] unregisterForRemoteNotifications];

em primeiro lugar. Em seguida, chamar

 [[UIApplication sharedApplication] registerForRemoteNotificationTypes:
 UIRemoteNotificationTypeBadge | 
 UIRemoteNotificationTypeAlert | 
 UIRemoteNotificationTypeSound]; 

Espero que ajude. Obrigado.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top