从GCM初始化ID的位置?

时间:2015-03-02 05:07:52

标签: android google-cloud-messaging

我在我的项目中使用GCM。我在哪里获得ID,所以它始终可用?这是我的代码:

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        if (!CloudMessaging.checkPlayServices(this)) {
            return;
        }
        CloudMessaging.getInstance(this).setRegistrationListener(eventHandler);
    }

“但如果我转过身然后展开程序,那么再次获得ID。” - >可能: 如果我改变了我的方向,那么我又会得到一个新的ID。

2 个答案:

答案 0 :(得分:0)

您可以获取GCM的ID

if (m_gcm == null)
{
        m_gcm = GoogleCloudMessaging.getInstance(m_context);
}
m_regid = m_gcm.register("Your project id from google api console");

注意:请在后台线程中进行此网络操作..

答案 1 :(得分:0)

一旦获得新ID,请使用SharedPreferences存储您的ID。

所需步骤:(在你的onCreate中执行此操作)

  • 检查您的SharedPreferences

  • 中是否已有有效的GCM ID
  • 如果您已经有,请使用它。

  • 否则,请申请新的并将其保存在SharedPreferences