用于 C2DM 注册的邮件帐户

Posted

技术标签:

【中文标题】用于 C2DM 注册的邮件帐户【英文标题】:Mail Account For C2DM Registration 【发布时间】:2012-04-21 07:29:29 【问题描述】:

我在 android 上将 C2DM 用于“推送通知”。一切正常。

我的问题是;我可以得到“如果设备有多个同步的 gmail 帐户,哪个用于 C2DM”?

【问题讨论】:

它与设备是否有多个同步帐户无关 例如; x@gmail.com 和 y@gmail.com 帐户与设备同步。我的应用在 x@gmail.com 注册。然后用户删除“该”帐户? 从设备中删除帐户除了不应该从 gmail 停用帐户之外什么都不做,我的意思是你不应该删除你的帐户 gmail 帐户用于从与您的设备无关的服务器发送消息 3 个组件; c2dm - gmail 帐户 - 设备。 c2dm 向 gmail 帐户发送消息。 gmail帐户不是与设备关联吗?谁在向设备发送消息?如果gmail帐户和设备之间没有关系,我无法弄清楚这个过程。 (感谢您的回复) 【参考方案1】:

请参阅此链接以获取C2DM 并在此LINK 进行示例。现在您的设备认为它与设备相关。

在下面的代码中,使用的电子邮件 ID 不是特定于设备的。 C2DM 使用电子邮件 ID 仅用于服务器和 C2DM 之间的交互,不依赖于设备。

// 应用启动时调用

public void StartRegistrationNotification()
    

        Intent registrationIntent = new Intent("com.google.android.c2dm.intent.REGISTER");
        registrationIntent.putExtra("app", PendingIntent.getBroadcast(this, 0, new Intent(), 0));
        registrationIntent.putExtra("sender", "....@gmail.com");
        this.startService(registrationIntent);  


// change in Manifest File

<receiver android:name="com.ReceiverC2DM"
        android:permission="com.google.android.c2dm.permission.SEND">
        <!-- Receive the actual message -->
        <intent-filter>

            <action android:name="com.google.android.c2dm.intent.RECEIVE" />
            <category android:name="yourpackagename" />
        </intent-filter>
        <!-- Receive the registration id -->
        <intent-filter>
            <action android:name="com.google.android.c2dm.intent.REGISTRATION" />
            <category android:name="yourpackagename" />
        </intent-filter>
    </receiver>
    <permission android:name="yourpackagename.permission.C2D_MESSAGE"
    android:protectionLevel="signature" />
<uses-permission android:name="yourpackagename.permission.C2D_MESSAGE" />
<!-- This app has permission to register and receive message -->
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />

【讨论】:

以上是关于用于 C2DM 注册的邮件帐户的主要内容,如果未能解决你的问题,请参考以下文章

C2DM 到 GCM 代码迁移

Grails / Spring Security - 注册电子邮件未解锁帐户

PayPal IPN - 使用不同的电子邮件将用户注册到 PayPal 帐户

PHP 帐户激活问题

注册新帐户时如何要求 asp.net forms 身份验证发送验证电子邮件?

如何合并两个 Firebase 帐户(一个使用电子邮件创建,另一个使用电话号码创建)?