나는 rapidy_c2dm을 설정하여 안드로이드 장치에 "푸시"메시지를 보냅니다. speedy_c2dm : NoMethodError (정의되지 않은 메소드 'gsub'for nil : NilClass)
주옥
가 잘 작동했지만, 내가SpeedyC2DM::API.send_notification(options)
옵션 매개 변수가 좋은를 호출 할 때 지금은이 NoMethodError 메시지가, 나는 이것을 확인했습니다. ruby-doc에서 나는 보석에서 다음 코드를 가지고 :
def get_auth_token(email, password)
data = "accountType=HOSTED_OR_GOOGLE&Email=#{email}&Passwd=#{password}&service=ac2dm"
headers = { "Content-type" => "application/x-www-form-urlencoded",
"Content-length" => "#{data.length}"}
uri = URI.parse(AUTH_URL)
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
response, body = http.post(uri.path, data, headers)
return body.split("\n")[2].gsub("Auth=", "")
end
당신은 마지막 줄 GSUB를 사용하고 있음을 알 수 있습니다, 그래서 문제가 인증 방법에 믿습니다.
C2DM_API_EMAIL = "[email protected]"
C2DM_API_PASSWORD = "mynewpassword"
SpeedyC2DM::API.set_account(C2DM_API_EMAIL, C2DM_API_PASSWORD)
이 될 수있는 오류의 원인 :이, 내가 암호, 초기화/speedy_c2dm.rb으로 파일을 업데이트 만든 이후
나는 계정의 암호를 변경? 이 파일을 업데이트했지만 암호를 변경 했습니까? (Google에서 이전 암호로 돌아 가게하지 않습니다. 다시 암호를 변경하면 이전 암호와 다른 새 암호를 만들어야합니다.) 암호를 수정하지 않았으므로 생각할 수있는 유일한 것입니다. 보석 코드. 어떻게 해결할 수 있습니까? C2DM은 현재 사용되지 않지만 이전 사용자를 위해 계속 작동해야합니다. 내가 필요하지 않다면 GCM으로 마이그레이션하고 싶지 않다. C2DM과 함께 작동하도록 모든 것이 설정되어있다.
다른 문제를 수정하는 것은 환영 할만한 일이다.