通过Rails向Android发送推送通知

时间:2014-04-28 11:53:23

标签: android ruby-on-rails

Rails后端有以下代码:

gcm = GCM.new(API_KEY)
options = { data: { score: '123'}, collapse_key: 'updated_score' }
gcm.send_notification([TOKEN], options)

我从Google控制台开发者处获取API_KEY,TOKEN取自Android设备:

        GoogleCloudMessaging gcm = GoogleCloudMessaging.getInstance(mContext);
        String deviceToken = gcm.register(PROJECT_NUMBER);

还有一些Android广播接收器的代码:

public class GsmBroadcastReceiver extends BroadcastReceiver {

    public void onReceive(Context context, Intent intent) {
        Toast.makeText(context, "123", Toast.LENGTH_LONG).show();
        Log.e("gcm_response", "111");
    }
}

我的Android清单:

<uses-sdk
    android:minSdkVersion="14"
    android:targetSdkVersion="14" />

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />

<permission android:name="com.ulnda.backaldrin.permission.C2D_MESSAGE"
    android:protectionLevel="signature" />
<uses-permission android:name="com.ulnda.backaldrin.permission.C2D_MESSAGE" />

<application
    android:debuggable="false"
    android:allowBackup="true"
    android:icon="@drawable/icon"
    android:label="Backaldrin"
    android:theme="@style/AppTheme" >

    <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_id"/>

    <activity
        android:launchMode="singleTop"
        android:name="com.ulnda.backaldrin.MainActivity"
        android:screenOrientation="portrait"
        android:theme="@android:style/Theme.NoTitleBar" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>


    <receiver
        android:name=".GsmBroadcastReceiver"
        android:permission="com.google.android.c2dm.permission.SEND">
        <intent-filter>
            <action android:name="com.google.android.c2dm.intent.RECEIVE" />
            <category android:name="com.ulnda.backaldrin" />
        </intent-filter>
    </receiver>
</application>

但我没有收到任何通知。我该如何测试通知?任何建议将不胜感激。我的代码中有错误吗?感谢

0 个答案:

没有答案