2

iOS7을 사용 중이고 다음 상황에서 JSON 페이로드를 가져올 수 있는지 확인하려고합니다. 나는 백그라운드 모드 "원격 통지"가백그라운드에서 푸시를받은 후 사용자가 앱을 수동으로 열 때 푸시 알림 페이로드 받기

  • 앱이
  • 을 종료 앱이 알림 센터에서 아이콘 하지에서 수동으로 을 시작되는 동안 푸시 알림을 수신
  • 가능

알림을받은 후 아이콘 자체에서 앱을 실행하면

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions;

에서 시작 옵션에 밀어 다음과 같은 방법은 응용 프로그램을 수동으로 아이콘

-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {

+0

내 대답보기. 대부분 사용자가 info.plist 파일에서 배경 정보 알림을 사용할 수 없음) 2. 응용 프로그램에 보내는 푸시 알림에 'content-available'이 없습니다. 1. –

답변

1

에서 실행되는 경우 중 하나 마침내 당신이 얻을 수있는 방법을 알아 냈라는되지 않습니다 !

iOS 7부터 당신이 그것을 얻을 수 있습니다!

기본적으로 백그라운드 원격 알림을 위해 애플리케이션을 구성해야합니다.

그래서, 당신의 Info.plist 파일에 : - :

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler

가하는 방법은이를 참조 For required backgroundsAppDelegate.m 파일에서 app downloads content from push notifications.

으로 설정,이 방법을 구현해야 구현 : didReceiveRemoteNotification: fetchCompletionHandler: open from icon vs push notification

푸시 알림의 경우 푸시의 일부로 'content-available': 1,이 있어야합니다. ification. 이는 경고를 표시하기 전에 새로운 내용이 있음을 응용 프로그램에 알리는 것입니다.

배경 원격 알림에 대한 자세한 내용은이 페이지를 참조하십시오. http://developer.xamarin.com/guides/cross-platform/application_fundamentals/backgrounding/part_3_ios_backgrounding_techniques/updating_an_application_in_the_background/

+0

Don ' 이 솔루션이 내 질문에 대답한다고 생각하지 마십시오. 나는 그것도 가능하다고 생각하지 않는다. 앱이 종료되고 앱 아이콘에서 앱을 연 후에이 메소드를 사용하면 페이로드를받을 수 있습니까? –

+0

앱을 죽었다는 뜻이라면 그 데이터를 가져올 수 없습니다. 해당 시나리오의 데이터를 얻을 수있는 유일한 방법은 데이터를 서버에 쿼리하여 (어딘가에 저장 한 경우) 데이터를 쿼리하는 것입니다. 이 솔루션은 앱이 백그라운드에서 열려 있고 실행중인 경우 처리합니다. 즉, 사용자가 알림을 받으면 배너 경고 대신 앱 아이콘을 선택합니다. 그런 다음 사용자가보기 전에 데이터를 가져와 모든보기 컨트롤러를 업데이트합니다. –

+0

그래서 앱이 실행되고 있지 않다는 알림이 있음을 알리는 방법이 없습니다. –