0

파스 클라우드 코드 (Parse Cloud Code)에서 푸시 페이로드로 지오 포인트를 보내려고 애 쓰고 있습니다. 코드에 명시된 바와 같이, 내가 추가 한 행을 주석으로 처리하면 'latitude':location.latitude 푸시 알림이 도착합니다.페이로드 브레이크 알림에서 '위치'를 사용하는 이유는 무엇입니까?

그러나 줄을 입력하면 success이 호출되지만 구문 분석 푸시 제어판에 푸시가 0 명의 수신자로 표시됩니다. 물론 그것은 결코 다른 끝에 도착하지 않습니다.

Location.latitude가 null이 아니며 보통 10 진수입니다. 위치는 Geopoint입니다. 즉 "location":{"__type":"GeoPoint","latitude":0.40281958847904,"longitude":-0.337979459707093}

Help?

var pushData = { 
'aps': { 
    'alert':'Here lies treasure ' + placeName, 
    'badge':'Increment', 
    'priority':10, 
    'sound':"Ting.caf", 
    'content-available':1 
    }, 
'latitude': location.latitude, // if I comment this line out everything works fine 
'senderName':senderName, 
'sender': senderID, 
'request': request.id 
}; 

Parse.Push.send({ 
    channels: [recipient], 
    data: pushData 
}, { 
    success: function() { 
     console.log("Pushed for " + recipient); 
    }, 
    error: function(error) { 
     console.log("Error " + JSON.stringify(error) + " sending push for " + recipient); 
    } 
}); 

다른 하나의 정보 비트로,이 키를 설정하면 구문 분석 푸시 콘솔의 "대상"아래에있는 채널 목록에서 '사과'가 제거됩니다. iOS 용으로

screenshot showing one success and one failure

답변

0

: 탑 하나가 키를 포함, 바닥 일하지 않는 알림 페이로드가 좋은 것 같다 복잡한, 당신은 당신이 주변에 230 바이트 한도 내에서 맞는 확신 (절대 한계는 256입니다 하지만 헤더도 몇 바이트를 먹는다. (케이스의 모든 문자열이 5-10 자 정도라면 쉽게 한계를 넘을 수있다.)

모든 필드를 단일/이중 문자 값으로자를 수있다. ('senderName'- > 'sn')?

다른 플랫폼의 경우 location.latitude를 4-6 자릿수의 문자열로 변환 할 수도 있습니다.

관련 문제