2012-01-22 6 views
1

파이썬 코드 (Django 앱)에서 클라이언트의 전화로 푸시 알림을 보내려고합니다. 파이썬 코드에서 Apple의 푸시 알림 보내기

내가 그들 중 하나가 여기에 몇 가지 구현을 발견 http://leepa.github.com/django-iphone-push/

내 질문입니다 - 어떻게에 통지를 보내고있다있는 장치를 식별하는 방법? 전화의 UDID를 사용해야합니까? 내 관심사는 iOS5에서 이미 사용되지 않으므로 내 장고 서버에있는 전화로 사용자를 묶는 방법을 알고 싶습니다.

답변

2

Apple 만 iOS 응용 프로그램이 설치되어 있고 사용자가 앱이 자신의 기기에 알림을 전송하도록 허용 한 기기로 알림을 보내 드리겠습니다. this developer document에서 Apple에서 처리 (통지)하는 방법에 대한 자세한 정보를 찾을 수 있습니다.

iOS 애플리케이션이 없지만 사용자에게 알림을 계속 전송하려는 경우 Prowl, Notifio 또는 Boxcar를 사용할 수 있습니다. 이 앱을 사용하면 API를 통해 사용자 기기에 알림을 전달할 수 있습니다. 이러한 서비스의 대부분은 사용 가능한 Python 패키지입니다. 워드 프로세서

+0

대상 장치에 설치된 앱이 있습니다. 그러나 내 질문에 어떻게 UDID 응용 프로그램 내에서 알림 처리 처리 할 수있는 서버에서 장치의 UDID를 - 메서드를 UDID 점점 코코아 때문에 사용되지 않습니다. – kender

1

:

는 : 장치 토큰은 UIDevice의 고유 식별자 속성에서 반환 장치 UDID과 같은 것은 아니다. didFinishLaunchingWithOptions : 사용

토큰은 응용 프로그램에서 원격 알림에 등록하여 획득 didRegisterForRemoteNotificationsWithDeviceToken :

- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken { 
    NSString *deviceTokenStr = [[[[deviceToken description] 
            stringByReplacingOccurrencesOfString: @"<" withString: @""] 
           stringByReplacingOccurrencesOfString: @">" withString: @""] 
           stringByReplacingOccurrencesOfString: @" " withString: @""]; 
    NSLog(@"%@", deviceTokenStr); 
} 
성공적으로 등록

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    // ... 
    [[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound)]; 
    // ... 
} 

경우, 앱 대리인이 응용 프로그램을받을 것이다

푸시 보내기에 사용하는 토큰입니다. 알림.

추신 : django-iphone-push 마지막 커밋은 3 년 전이었습니다. 내 포크 django-ios-push을 사용해 볼 수 있습니다.

+0

장치를 고유하게 식별 할 수있는 무언가가 필요하며 사용자 이름이나 user_id를 사용할 수없는 경우 OpenUDID http://openudid.org와 같은 것을 사용할 수 있습니다. –