2015-01-15 5 views
2

자동 푸시 알림을 얻으려고합니다. 내 데이터베이스에 앱의 자동 푸시 알림 데이터를 저장해야 사용자가 앱을 사용할 때 보이지 않는 알림 및 사용자 수를 표시 할 수 있습니다. 앱. Xcode 6.1을 사용하고 iOS 7 이상의 기기를 타겟팅하고 있습니다. 현재 푸시 알림을위한 개발 인증서를 사용하고 있습니다. 대상 프로젝트 기능의 백그라운드 모드에서 원격 알림을 확인했으며, 정보 목록의 백그라운드 모드에는 필요한 백그라운드 모드에서 "푸시 알림에 대한 앱 다운로드 콘텐츠"가 있습니다.자동 푸시 알림이 작동하지 않습니다.

AppDelegate.m에 원격 알림을 등록 할 수 있으며 장치 토큰을받을 수도 있습니다. 이제 푸시 알림을 보낼 때 응용 프로그램이 포 그라운드에있을 때 대리자 메서드가 호출되지만 앱이 백그라운드에 있거나 실행 중이 지 않을 때 배너에서 밀어 넣기 알림을 받지만 호출되지 않습니다.

내가 AppDelegate.m

-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler{ 
    NSLog(@"Received push notification"); 
} 

페이로드에이 방법을 구현 한 나는이 같은 모습을 보내고 :

나는 우선 순위, 사운드 등만을 추가하는 시도
{ 
    aps: { 
      content-available: 1 
     } 
} 

저를 도왔다. 앱이 백그라운드에서 실행 중이거나 실행 중이 아닌 경우 앱에 자동 푸시 알림 데이터를 저장하는 방법을 알아낼 수 있습니까? 이 문제를 해결하는 데 도움을주십시오.

답변

0

따라서 백그라운드에서받을 수는 있지만 사용자가 의도적으로 작업 전환기에서 앱을 죽이면 더 이상 작동하지 않는다고 경고해야합니다. 당신이 말한대로 아이폰 OS (7)와 콜백 위

이지만, 그 전에이

- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken 

그래서 난 잘못된 푸시 패킷 또는 배경 푸시 설정 중 하나와 함께 갈 것입니다하지만 당신은 아이폰 OS 6을 목표로하고 아닌 것 같습니다했다 꽤 옳지 않다.

0

info.plistUIBackgroundModes 앱이 remote-notificiton으로 설정되어 있습니까?

다음 또한이 방법을 추가

은 디버깅에 도움

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult result))handler 
{ 
    //Success 
    handler(UIBackgroundFetchResultNewData); 
} 
관련 문제