4

Я хочу использовать Пробная версия городского дирижабля для Push-уведомление.
На регистрируется страница приложения Городского дирижабля требуется Google C2DM Авторизация Токен. но я не могу получить токен авторизации C2DM от Google. Я зарегистрировал свой идентификатор электронной почты с Google, чтобы начать использовать C2DM, но они не предоставили мне никакого токена авторизации.Как получить токен авторизации C2DM для использования городского дирижабля

Как я могу получить токен авторизации C2DM от Google?

+0

Спасибо @OllieC, но я принимаю как ответ, когда он работает для меня, потому что другие люди поиск той же проблемы фокусируется главным образом на принятом ответе. поэтому я не могу принять ответ, который неверен. thanks btw –

ответ

4

Посетите этот сайт, сообщите свои данные и получите токен авторизации C2DM HURL

0

Вы должны подождать около 24 часов, чтобы получить разрешение на C2DM, а иногда и больше. Но вы получите электронное письмо для подтверждения, когда вы можете получить свой токен, используя завиток, как описано в документах.

+0

Неверное изображение. Сначала учетные записи C2DM обычно принимаются почти сразу. Во-вторых, Google не проактивно отправляет аутентификационный токен, его нужно запрашивать из API ClientLogin (и он истекает, так что это нужно делать повторно) –

0

Вы должны использовать API Google ClientLogin HTTP, чтобы запросить маркер аутентификации, используя свой C2DM электронной почты и пароль учетной записи:

public static String getClientLoginAuthToken() { 
HttpClient client = new DefaultHttpClient(); 
HttpPost post = new HttpPost("https://www.google.com/accounts/ClientLogin"); 
try { 
    List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1); 
    nameValuePairs.add(new BasicNameValuePair("Email", "C2DMEMAILADDRESS)); 
    nameValuePairs.add(new BasicNameValuePair("Passwd", "C2DMPASSWORD)); 
    nameValuePairs.add(new BasicNameValuePair("accountType", "GOOGLE")); 
    nameValuePairs.add(new BasicNameValuePair("source", "Google-cURL-Example")); 
    nameValuePairs.add(new BasicNameValuePair("service", "ac2dm")); 
    post.setEntity(new UrlEncodedFormEntity(nameValuePairs)); 
    HttpResponse response = client.execute(post); 
    BufferedReader rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent())); 
    String line = ""; 
    while ((line = rd.readLine()) != null) { 
     Trace.e("HttpResponse", line); 
     if (line.startsWith("Auth=")) { 
      return line.substring(5); 
     } 
    } 
} catch (IOException e) { 
    e.printStackTrace(); 
} 
Trace.e(TAG, "Failed to get C2DM auth code"); 
return ""; 
} 

Для получения дополнительной информации о токен аутентификации см этот учебник: http://www.vogella.de/articles/AndroidCloudToDeviceMessaging/article.html

+0

Мне нужно получить авторизацию Token на стороне android или сервера? –

+0

На стороне сервера. Пример кода выше - это код Android - я использовал его, чтобы я мог создать тестовый жгут в приложении, чтобы отправить push emssages самому себе. –

Смежные вопросы